Re: [twitter-dev] id_str not present in User Streams delete events
Good catch. We'll make sure it gets added. ---Mark http://twitter.com/mccv On Tue, Nov 23, 2010 at 8:20 AM, Jonathon Hill jhill9...@gmail.com wrote: I just discovered what I believe to be an issue (or an oversight) in the User Streams API as pertains to the recent Snowflake changes. There is no id_str property in this delete event from a User Stream: {delete:{status:{id:7102620514648064,user_id:16357089}}} Thanks, Jonathon Hill http://rainmakerapp.com -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] For media art installation
This seems like a perfect use case for the streaming API http://dev.twitter.com/pages/streaming_api. It seems like you want some combination of either filtering (on #designkorea) or following (the specific users who have made a video) ---Mark http://twitter.com/mccv On Tue, Nov 9, 2010 at 1:28 AM, Elliot elliot.wo...@gmail.com wrote: Hey all We're developing a media art installation for the entrance area of Design Korea 2010. The general concept is that people will record videos of themselves, and tie that video to their twitter identity. Then whenever they tweet, their video is projection mapped onto a box (http://www.kimchiandchips.com/blog/?p=518) and their tweet appears The concept is that you'll see an overview of all the thoughts of people currently at the exhibition. So we need to constantly poll for when these people are tweeting. Which puts us up against the 150 api request limit. What's the method to get whitelisted? the exhibition is running 7th-12th december. about 300,000 people are expected to attend Is there an api call (i haven't seen one) for tags? then we can just call for people who've tagged #designkorea and are on the list of users who have input their id's onsite Thanks Elliot -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] Streaming API and authentication
The streaming API supports basic auth *now*. At some point in the future it will not. If you're developing something new with basic auth you're setting yourself up for more work in the not too distant future. As far as the present message, only userstreams and sitestreams require oauth currently, so it's not likely an oauth issue. ---Mark http://twitter.com/mccv On Tue, Nov 2, 2010 at 2:27 PM, EastSideDev eastside...@gmail.com wrote: I've been using the streaming library in one of my apps. My understanding is that the streaming API still supports Basic Authentication, so I don't need to make any changes. My app did stop working with messages indicating that I am not being properly authenticated. Do I need to switch to oAuth here as well (not user streams)? -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] De-duplicating Site Streams
Isn't this a matter of just changing the keys? status_id becomes user_id:status_id? ---Mark http://twitter.com/mccv On Mon, Nov 1, 2010 at 12:18 PM, Marc Mims marc.m...@gmail.com wrote: * John Kalucki j...@twitter.com [101031 20:30]: Create two in-memory hash sets of seen ids. Write ids to both. If the id is found on write, discard. Alternatively expire them every few tens of minutes to bound growth, but provide continuous coverage. That's what I'm doing now for the Streaming API and it works very well. But in the Site Streams API, I might receive the same ID several times in context of different users (for_user). E.g., status N mentions users A, B, and C. In addition it is favorited by user D. If I'm following all 4 users is the in with Site Streams, I'll see N 4 times in 4 different messages. However, if any of those messages is repeated, I need to discard the repeats. So, I can't simply track status IDs like I do in the Streaming API. I need to track for_user/type/status_id. Or am I missing somethings, here? -Marc -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] User streaming - user mentions
Check the with parameter on the user streams documentation page http://dev.twitter.com/pages/user_streams. Setting it to with=user should do what you want. ---Mark http://twitter.com/mccv On Mon, Nov 1, 2010 at 4:25 PM, rahsyed rahs...@gmail.com wrote: I'm currently using the user streaming API to get all the usermentions made to a specific user (that the user follows). Unfortunately the onStatus method part of the UserStreamListener gets called every time a status message gets created for every user that the user follows. If you follow a large number of users then that could be called a number of times which is undesirable. Any ideas on how to go about this? Using the twitter streaming api filters would work but that would be for public profiles only, we would like it to work for profiles with protected tweets. Thanks. -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] Userstream oauth prompting for user/pass
It does support OAuth. If you're getting prompted for a username/password it means that we didn't accept your OAuth request for some reason or other. ---Mark http://twitter.com/mccv On Fri, Oct 29, 2010 at 9:07 AM, bterm bob.t.termi...@gmail.com wrote: Trying to use userstream.twitter.com over https with oauth and i keep getting prompted for a username and password, according to the documentation (http://dev.twitter.com/pages/user_streams) oauth is supported. Is there some documentation, twitter app configuration, or signup form that i've missed? -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] Re: Is it possible to search with wildcard in streaming api?
Nothing new to say on that front. It's expensive, and not something we're comfortable injecting into real-time stream processing yet. ---Mark http://twitter.com/mccv On Mon, Oct 11, 2010 at 11:59 AM, M. Edward (Ed) Borasky zn...@borasky-research.net wrote: Speaking of Streaming tokenization, what's the latest on non-space-separated languages and right-to-left languages? -- M. Edward (Ed) Borasky http://borasky-research.net http://twitter.com/znmeb A mathematician is a device for turning coffee into theorems. - Paul Erdos Quoting Damon C d.lifehac...@gmail.com: Nope, not possible. Streaming API tokenizes on space and punctuation. So you'll have to come up with the variants and provide those. Damon On Oct 10, 6:28 am, D. Smith emai...@sharedlog.com wrote: For example I want is to search for words that have 'truck' in it and want to get all tweets that have 'truck', 'trucks', 'trucking', 'dumptruck', etc. I it possible to use wildcards like *truck* or do I have to just include all possible words that contain truck? -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
Re: [twitter-dev] Re: Site Streams - Unfollow Events?
Note that block/unblock events are delivered to the person creating or destroying the block (the source of the action), *not* the target of the action. ---Mark http://twitter.com/mccv On Thu, Sep 30, 2010 at 9:31 AM, tsmango tsma...@gmail.com wrote: Hi, Ed. Block and unblock events are already being delivered in the Site Stream. Very useful! On Sep 30, 12:30 pm, M. Edward (Ed) Borasky zn...@borasky- research.net wrote: As long as we're wishing, I'd like to get a notification when someone blocks me. ;-) -- M. Edward (Ed) Boraskyhttp://borasky-research.nethttp://twitter.com/znmeb A mathematician is a device for turning coffee into theorems. - Paul Erdos - Thomas Mango @tsmango -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk
[twitter-dev] Site streams changes being made tomorrow
Just in case you missed the tweet here http://twitter.com/sitestreams/status/24794788773 On Tuesday at 2:00 PDT we'll be making a change to the for_user message, making the user id a number (e.g. for_user:13348) ^M2 ---Mark http://twitter.com/mccv -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en
Re: [twitter-dev] Seeing duplicate Twitter User ID's under the same Username in our DB
One thought is that people change screen names at some frequency. IDs never change. ---Mark http://twitter.com/mccv On Mon, Sep 13, 2010 at 4:41 PM, Sean Callahan seancalla...@gmail.com wrote: Hello Twitter Support, We are seeing something really weird. We just noticed about 5,000 users in our database that have multiple User ID's under the same Username. Have you every seen this and know why it happens and how we can prevent it from occurring again? Thanks so much! Sean -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en
Re: [twitter-dev] Re: Seeing duplicate Twitter User ID's under the same Username in our DB
Right. But here's the scenario: User ID 1 has screen name foo You load user ID 1's data. User ID 1 decides that foo is a silly screen name and changes it to bar. A new user, ID 10 signs up and decides that foo is an awesome screen name. You load user 10's data. So the important question: if you go look at these IDs with duplicate screen names, are they *currently* duplicates? If so, can you email me affected IDs? ---Mark http://twitter.com/mccv On Mon, Sep 13, 2010 at 6:08 PM, Sean Callahan seancalla...@gmail.com wrote: That is the problem. User ID's are not suppose to change, though in our DB we see the same screen name with a different User ID. Of the 5,000 users in the DB, some have 6 ID's, a few have 5, 4 and 3 ID's but many have 2 User ID's. We are talking 5,000 users being affected of 5 million users in our DB. Sean On Sep 13, 5:46 pm, Mark McBride mmcbr...@twitter.com wrote: One thought is that people change screen names at some frequency. IDs never change. ---Mark http://twitter.com/mccv On Mon, Sep 13, 2010 at 4:41 PM, Sean Callahan seancalla...@gmail.com wrote: Hello Twitter Support, We are seeing something really weird. We just noticed about 5,000 users in our database that have multiple User ID's under the same Username. Have you every seen this and know why it happens and how we can prevent it from occurring again? Thanks so much! Sean -- Twitter developer documentation and resources:http://dev.twitter.com/doc API updates via Twitter:http://twitter.com/twitterapi Issues/Enhancements Tracker:http://code.google.com/p/twitter-api/issues/list Change your membership to this group:http://groups.google.com/group/twitter-development-talk?hl=en -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en
Re: [twitter-dev] Need help in using Twurl console
Can you send the exact command line you're using? bin/twurl /1/users/show.xml?screen_name=sujit_g Works for me ---Mark http://twitter.com/mccv On Sat, Aug 28, 2010 at 7:13 AM, Sujit garikipati.sujitku...@gmail.com wrote: Hi, I have started development using Twitter API recently. I really like the Twurl console which makes sending HTTP requests to Twitter API very easy. I registered an app and coded a bare-bones structure of the app. I was able to update my status message by running the app on my desktop and also using the Twurl console. But, when I try to make a users/show request my app is returning me an error user is Not Found. I get the same error using Twurl console also. Can anyone guide me in this issue? This is a very basic question, but, this got me blocked as of now. Here is the error message that I make a users/show request with screen_name parameter as sujit_g (my screen name). ?xml version=1.0 encoding=UTF-8? hash request/1/users/show.xml/request errorNot found/error /hash Thanks, Sujit -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en -- Twitter developer documentation and resources: http://dev.twitter.com/doc API updates via Twitter: http://twitter.com/twitterapi Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list Change your membership to this group: http://groups.google.com/group/twitter-development-talk?hl=en
Re: [twitter-dev] Re: Recent API changes and new fields
This is exactly what userstreams allows you to do. ---Mark http://twitter.com/mccv On Wed, Aug 25, 2010 at 12:08 PM, arian arianpasqu...@gmail.com wrote: Hi Matt Zac Bowling Is there a time line for the streaming API getting these changes? Information like retweet_count, followers_count and friends_count are very volatile and change all the time. would be nice receive this kind of notification when any of these fields are changed. but I guess you woudn't build something like this. Arian On 24 ago, 21:38, Matt Harris thematthar...@twitter.com wrote: Hey Zac, The Streaming API already has these fields included. Matt On Tue, Aug 24, 2010 at 9:38 AM, Zac Bowling zbowl...@gmail.com wrote: Is there a time line for the streaming API getting these changes? Zac Bowling On Mon, Aug 23, 2010 at 11:40 PM, Matt Harris thematthar...@twitter.com wrote: Hey everyone, Thanks for the questions. I'll try and answer them all in this message. 1) are the counts turned on? This weekend the counts were turned off and have remained off. This is because of some bugs we found in the way the value was calculated. I'll let you know when we have this resolved. 2) Will thesefieldsshow up in the Search and Streaming API? Thefieldsare already in the Streaming API but be aware the 'retweeted' field is not meaningful here. This is because the streamed status knows nothing of the connected user. The search API does not include this information. 3) How do I know if the feature is turned off? Tweets will contain a retweeted_count if available. If the service is not enabled newer Tweets will likely be missing their retweeted_count. The safest thing to do is code to handle missing values. If they are present use them, if they are not, treat them the same as when the field didn't exist. This way your code works when the retweeted_count is both enabled and disabled. 4) When was the feature turned on? The service was rolled out the week beginning Aug 16th Hope that answers your questions, Matt On Sat, Aug 21, 2010 at 4:33 PM, Joe j...@ajcomputers.com wrote: will we see this in both search and stream API? On Aug 20, 6:45 pm, Matt Harris thematthar...@twitter.com wrote: Hey everyone, This week we rolled out a couple ofnewdatafieldsfor the status and user objects. For a while it has been difficult for you to get the number of lists a user is listed in, or the number of times a Tweet has been retweeted. You were also finding it hard to know if the user had retweeted the status themselves or not. The feature requests you filed and the messages on the developer mailing list showed this is a pain point for many of you as it uses up many of your hourly API requests. Thesefieldsare live now and many of you have already seen them in our API responses. We intended to tell you about these changes before they were live, and in the future for things like this we will, but this time around our system for doing that didn't work. The good news is we know what went wrong and have made the necessary improvements needed to ensure you are notified before the changes happen. The recent changes which have been made affect the user and status objects. In both cases we have addedfields: To the user object: --- listed_count represents the number of public lists a user is listed in. This field is an integer. As this is anewfield it is possible some users will not have a listed_count value yet. follow_request_sent representing whether the user you are authenticating as has requested to follow the user you are viewing. This will be false unless the friendship request is pending. The field is a boolean and will be true or false. To the status object: - retweet_count represents the number of times a status has been retweeted using the Twitter retweet action. This field is an integer. There will not be a value for this field when the feature is turned off, or the Tweet was created before we added retweet_count support. retweeted represents whether the user you are authenticating as has retweeted this status or not. The field is a boolean and can be true or false. Changes to existing methods -- users/show When requesting data for suspended users the user/show used to return an HTTP 404 status code - it now returns HTTP 403. This change is in response to number of users who were asking if there was a way to know if a user they were getting data for had been deleted or was instead suspended. The change means the API agrees with the twitter.com in that we confirm a user exists, but that you may not see their information because they are suspended. If you call /users/show on a suspended user the API response will include the error message User has
Re: [twitter-dev] Streaming API (filter) and retweets, JSON Output
A retweet will have an embedded retweeted_status object. Example (first one from spritzer, not necessarily a favorite): { coordinates: null, favorited: false, created_at: Mon Aug 16 04:03:17 + 2010, truncated: false, retweeted_status: { coordinates: null, favorited: false, created_at: Sun Aug 15 22:58:25 + 2010, truncated: false, contributors: null, text: Do u ever feel like u don't belong? When u #LoveYourself your ppl will find you! Belonging starts within! #TDL, id: 21266102648, geo: null, in_reply_to_user_id: null, user: { profile_sidebar_fill_color: ff, name: Mastin Kipp, profile_background_tile: true, profile_sidebar_border_color: 838581, location: The wise classy place within, profile_image_url: http://a0.twimg.com/profile_images/993737856/Picture_45_normal.png;, created_at: Mon Oct 20 17:22:57 + 2008, follow_request_sent: null, profile_link_color: 56a6ec, favourites_count: 559, contributors_enabled: false, url: http://www.TheDailyLove.com;, utc_offset: -32400, id: 16870682, profile_use_background_image: true, listed_count: 5701, protected: false, followers_count: 224270, profile_text_color: 707070, lang: en, verified: false, profile_background_color: ff, description: To make each day a fresh start sign up for our FREE daily email at www.TheDailyLove.com - TDL was founded by 28yr old @MastinKipp, time_zone: Alaska, geo_enabled: false, notifications: null, friends_count: 651, statuses_count: 7696, profile_background_image_url: http://a1.twimg.com/profile_background_images/112686910/thedailylove_final_smllrwitter.jpg;, screen_name: TheDailyLove, following: null, show_all_inline_media: false }, place: null, in_reply_to_screen_name: null, source: web, in_reply_to_status_id: null }, contributors: null, text: RT @TheDailyLove: Do u ever feel like u don't belong? When u #LoveYourself your ppl will find you! Belonging starts within! #TDL, id: 21285825400, geo: null, in_reply_to_user_id: null, user: { profile_sidebar_fill_color: 3b0705, name: Emillie Immaculate, profile_background_tile: true, profile_sidebar_border_color: 00, location: Empire State Of Mind, profile_image_url: http://a2.twimg.com/profile_images/1069286198/ME_MYSELF_AND_I_normal.jpg;, created_at: Mon Jun 15 07:41:33 + 2009, follow_request_sent: null, profile_link_color: b8100d, favourites_count: 19, contributors_enabled: false, url: http://www.facebook.com/EmilyImmaculate;, utc_offset: -18000, id: 47286045, profile_use_background_image: true, listed_count: 5, protected: false, followers_count: 1225, profile_text_color: 08, lang: en, verified: false, profile_background_color: 663737, description: Mind of a Billionaire,, Young entrepreneur in the making., time_zone: Eastern Time (US Canada), geo_enabled: false, notifications: null, friends_count: 62, statuses_count: 3657, profile_background_image_url: http://a1.twimg.com/profile_background_images/133632534/wallpaper_marilyn_monroe.jpg;, screen_name: EmilyImmaculate, following: null, show_all_inline_media: false }, place: null, in_reply_to_screen_name: null, source: web, in_reply_to_status_id: null } ---Mark http://twitter.com/mccv On Fri, Aug 13, 2010 at 9:54 AM, Joe joe.vivona.a...@gmail.com wrote: If we are listening to the stream api/filter using track and getting JSON output, I cannot see anywhere that I can determine if something is a retweet except explicitly checking the text of the tweet. Am I missing something or should I simultansously be listing to the retweet stream and try to cross match the 2 (that seems like a waste of resources). Any advice?
Re: [twitter-dev] search for hashtags
In both cases it's still probably best to use streaming. You don't want to connect to often, but once an hour should be totally fine. ---Mark http://twitter.com/mccv On Tue, Aug 10, 2010 at 6:34 AM, Tom van der Woerdt i...@tvdw.eu wrote: On 8/10/10 12:58 PM, bitstream wrote: Hi all, I've been reading api docs lately but still can't figure it out what will be the best approach when searching for hashtags. streaming I know that streaming api support statuses/filter where I can declare 'track'. It's possible to use statuses/filter and add a track on '%23hashtag' ? search Or use a simple approach by calling search api and parse response from something like this: http://search.twitter.com/search.json?q=%23hashtag My opinion: It depends. If you want to track a lot of keywords, you should use streaming. If you track only one keyword, then both are an option, depending on the amount of tweets for the hashtag. If you have a lot of keywords but they vary (for example, when users can add/remove hashtags) then you should consider a combination of both, where you reset the stream every hour and update it with new hashtags, and use the REST API for the hashtags that get added in the hour. After all, you don't want to reconnect too often. Tom
Re: [twitter-dev] Re: Open Source Streaming libraries that use oAuth?
For ruby, check out twurl twurl -t -U -Hstream.twitter.com /1/statuses/sample.json Should be pretty easy to reverse engineer what the command line tool is doing and go from there. ---Mark http://twitter.com/mccv On Wed, Aug 4, 2010 at 4:55 PM, M. Edward (Ed) Borasky zn...@borasky-research.net wrote: Perl or Ruby are preferred, but any language will work if it doesn't have an outrageously heavyweight runtime. -- M. Edward (Ed) Borasky http://borasky-research.net http://twitter.com/znmeb A mathematician is a device for turning coffee into theorems. - Paul Erdos Quoting Tom allerleiga...@gmail.com: In which language? Tom On Aug 5, 1:01 am, M. Edward (Ed) Borasky zn...@borasky- research.net wrote: Are there any open source libraries to connect to Streaming that use oAuth? -- M. Edward (Ed) Boraskyhttp://borasky-research.nethttp://twitter.com/znmeb A mathematician is a device for turning coffee into theorems. - Paul Erdos
Re: [twitter-dev] OAuth and Streaming API
Kostya, the streaming API OAuth implementation should not have been affected. Are you still seeing these issues? If so, can you send me a message off list with connection details (the user making the request, the app the access token belongs to, the URL requested, the app being used)? ---Mark http://twitter.com/mccv On Tue, Jul 20, 2010 at 4:51 AM, Kostya Nikolayev kostya1...@gmail.com wrote: Is OAuth functioning for the Streeming API at the moment? I'm trying to make it work for the first time now and getting HTTP/ 1.1 500 Internal Server Error. Had it been working before yesterdays (2010-Jul-19) crisis? Had the crisis affected Streaming API? Has it been fixed for Streaming API? Thanks!
Re: [twitter-dev] Re: Streaming API OAuth explanation?
This likely wasn't due to adding the source parameter. It was more likely but due to a bug I had in the streaming OAuth implementation. Java's URLEncoder converts spaes to '+' instead of '%20'. This got fixed yesterday. ---Mark http://twitter.com/mccv On Mon, Jun 28, 2010 at 5:08 PM, Matt Harris thematthar...@twitter.com wrote: Wil, Fantastic. So glad you got it working, and thanks for sharing the solution which worked for you. Matt On Mon, Jun 28, 2010 at 10:10 AM, Wil willi...@gmail.com wrote: Hi Taylor, Finally! It now works. TweetSharp includes the source parameter by default on all requests (I think). Thus, I overrode the TwitterClientInfo just for that request and cleared out the ClientName field. Now it works! I guess on your side, the code filters out unknown parameters before doing the signature verification thing huh? Thanks a lot for helping! (though TweetSharp has another problem of dropping off the stream connection prematurely... that's another topic to discuss after I do more poking) Regards, Wil On Jun 29, 12:49 am, Taylor Singletary taylorsinglet...@twitter.com wrote: Hi Wil, Did some more tests. Why are you passing source in this context? I don't recall this being an operator for the Streaming API. If you're passing it as some kind of analogue to a source parameter you'd pass in basic auth on tweet creation, it's unnecessary here unless there's some other use for it that I'm unaware of. Without the source parameter, I'm able to make this call work. Taylor On Mon, Jun 28, 2010 at 9:40 AM, Wil willi...@gmail.com wrote: Hi again, I made a real request this time because in the previous one, I couldn't control the nonce and timestamp generation directly so I copy- pasted the code it used and modified it a bit. This is the real generated data which has a non-mock nonce and timestamp. Timestamp: 1277742686 Nonce: ufywbndxv0qevuh0 Base String: POSThttp%3A%2F%2Fstream.twitter.com%2F1%2Fstatuses %2Ffilter.jsonfollow%3D156934710%26oauth_consumer_key %3DTwitterConsumerKey%26oauth_nonce %3Dufywbndxv0qevuh0%26oauth_signature_method%3DHMAC- SHA1%26oauth_timestamp%3D1277742686%26oauth_token%3DTwitterAccessToken %26oauth_version%3D1.0%26source%3DWildfire%2520by%2520Implication Signature: YRXJUMYs0bRzkDZSTXesGfIWhQ8%3D Packet Capture: - Http: Request, POST /1/statuses/filter.json , Using OAuth Authorization Command: POST + URI: /1/statuses/filter.json ProtocolVersion: HTTP/1.1 - Authorization: OAuth + Authorization: OAuth oauth_consumer_key=TwitterConsumerKey,oauth_token=TwitterAccessToken,oa uth_nonce=ufywbndxv0qevuh0,oauth_timestamp=1277742686,oauth_signature_m ethod=HMAC- SHA1,oauth_signature=YRXJUMYs0bRzkDZSTXesGfIWhQ8%3D,oauth_version=1.0, + ContentType: application/x-www-form-urlencoded Host: stream.twitter.com ContentLength: 51 - Http: HTTP Payload, URL: /1/statuses/filter.json - payload: HttpContentType = application/x-www-form-urlencoded source: Wildfire%20by%20Implication follow: 156934710 It still looks correct though... Regards, Wil On Jun 29, 12:21 am, Wil willi...@gmail.com wrote: Hi, I got exactly the same values: Base string: POSThttp%3A%2F%2Fstream.twitter.com%2F1%2Fstatuses %2Ffilter.jsonfollow%3D156934710%26oauth_consumer_key %3DTwitterConsumerKey%26oauth_nonce%3Dabcdefgh%26oauth_signature_method %3DHMAC-SHA1%26oauth_timestamp%3D1277739588%26oauth_token %3DTwitterAccessToken%26oauth_version%3D1.0%26source%3DWildfire%2520by %2520Implication Signature (escaped): rYGiA6H2UXog0nYOzTeUKwJSssM%3D Authorization Header: oauth_consumer_key=TwitterConsumerKey,oauth_token=TwitterAccessToken,oa uth_nonce=abcdefgh,oauth_timestamp=1277739588,oauth_signature_method=H MAC- SHA1,oauth_signature=rYGiA6H2UXog0nYOzTeUKwJSssM %3D,oauth_version=1.0 Post content: source=Wildfire%20by%20Implicationfollow=156934710 On Jun 28, 11:45 pm, Taylor Singletary taylorsinglet...@twitter.com wrote: Let's start from a common point. By using the same inputs, we can try and meet in the middle with exactly the same signature, signature base string, and authorization header. Using the following values: Consumer Key: TwitterConsumerKey Consumer Secret: TwitterConsumerSecret Access Token: TwitterAccessToken Access Token Secret: TwitterAccessTokenScret OAuth Nonce: abcdefgh OAuth Timestamp: 1277739588 URL:http://stream.twitter.com/1/statuses/filter.json POST Body: follow=156934710source=Wildfire%20by%20Implication Assuming these exact values, the following should be the result: POST body: follow=156934710source=Wildfire%20by%20Implication Signature Base String:
Re: [twitter-dev] Profile updates in user stream
Yes. We should have something like that deployed very soon. ---Mark http://twitter.com/mccv On Fri, Jun 18, 2010 at 12:05 PM, Zac Bowling zbowl...@gmail.com wrote: Would it be possible to add profile changes to the user stream? Zac Bowling @zbowling Sent from my iPhone
Re: [twitter-dev] t.co issue -- querying for original url in streaming search apis
We will have this support in the streaming API. Track terms will work against tweet text as well as entity text. Currently streaming does *not* work as Abraham describes below. We only match against tweet text, and don't do any link expansion/contraction. ---Mark http://twitter.com/mccv On Wed, Jun 9, 2010 at 12:13 PM, Jim Gilliam j...@gilliam.com wrote: I'm creating a new thread for this because a few others have mentioned it, and we haven't gotten a response yet. My hunch is that changing those APIs involve other teams within Twitter, so figuring out a solution could be challenging. Here is the issue. We need to be able to get matches on the original URL through the streaming and search APIs. For me, I'm tracking act so I can match tweets that link to 'http://act.ly'. This is not a link shortener service, the actual pages live at act.ly, and it was all designed specifically for Twitter so there would be no need for url shorteners. As far as I'm concerned, it's fine if that link changes to t.co, as long as I can still get matches on act.ly (or act) through the streaming API (the search API is going to be important for people too, but less of an issue for me personally). The most elegant way to fix this would be to allow tracking of the original URL. So I can put in a domain name, or URL substring, and match everything that way. Same with search. This would be useful to a lot of people, and virtually all link oriented web apps with APIs provide a way to get all the matches for a particular domain. (digg, google, yahoo, etc) I'm sure there are other workaround ways of doing this, and I'm all ears. It would be SUPER NICE (wink wink) to hear some kind of assurance that there will be a way for us to query this type of information before the t.co changes go live. Thanks guys... Jim Gilliam http://act.ly/ http://twitter.com/jgilliam On Tue, Jun 8, 2010 at 4:43 PM, Jim Gilliam j...@gilliam.com wrote: Will we be able to get matches on the original URL through the streaming API? For example, I'm tracking act so I can match tweets that link to 'http://act.ly'. Will I still be able to do that? Jim Gilliam http://act.ly/ http://twitter.com/jgilliam On Tue, Jun 8, 2010 at 4:33 PM, Dewald Pretorius dpr...@gmail.com wrote: Raffi, I'm fine with everything up to the new 140 character count. If you count the characters *after* link wrapping, you are seriously going to mess up my system. My short URLs are currently 18 characters long, and they will be 18 long for quite some time to come. After that they will be 19 for a very long time to come. If you implement this change, a ton, and I mean a *huge* number of my system's updates are going to be rejected for being over 140 characters. On Jun 8, 7:57 pm, Raffi Krikorian ra...@twitter.com wrote: hi all. twitter has been wrapping links in e-mailed DMs for a couple months nowhttp://bit.ly/twttldmemail. with that feature, we're trying to protect users against phishing and other malicious attacks. the way that we're doing this is that any URL that comes through in a DM gets currently wrapped with a twt.tl URL -- if the URL turns out to be malicious, Twitter can simply shut it down, and whoever follows that link will be presented with a page that warns them of potentially malicious content. in a few weeks, we're going to start slowly enabling this throughout the API for all statuses as well, but instead of twt.tl, we will be using t.co. practically, any tweet that is sent through statuses/update that has a link on it will have the link automatically converted to a t.co link on its way through the Twitter platform. if you fetch any tweet created after this change goes live, then its text field will have all its links automatically wrapped with t.co links. when a user clicks on that link, Twitter will redirect them to the original URL after first confirming with our database that that URL is not malicious. on top of the end-user benefit, we hope to eventually provide all developers with aggregate usage data around your applications such as the number of clicks people make on URLs you display (it will, of course, be in aggregate and not identifiable manner). additionally, we want to be able to build services and APIs that can make algorithmic recommendations to users based on the content they are consuming. gathering the data from t.co will help make these possible. our current plan is that no user will see a t.co URL on twitter.com but we still have some details to work through. the links will still be displayed as they were sent in, but the target of the link will be the t.co link instead. and, we want to provide the same ability to display original links to developers. we're going to use the entities attribute to make this possible. let's say i send out the following tweet: you have to check
Re: [twitter-dev] Twitter API - Grab profile pic URL
Try using http://twitter.com/users/show/your user id or screen name.xml instead. The user objects in user_timeline may be stale. ---Mark http://twitter.com/mccv On Mon, May 31, 2010 at 4:40 AM, Bruce bruce...@gmail.com wrote: Hey Guys, I am having trouble trying to grab my Profile Pic URL via the API. I am trying to grab it using the following path - http://twitter.com/statuses/user_timeline.xml?id=username but it returns the default profile picture (http://s.twimg.com/a/1274899949/ images/default_profile_2_normal.png) and not the custom profile pic which is displayed on my twitter homepage. Any ideas? Bruce
Re: [twitter-dev] List data in user streams
You should also get subscriber added/removed, as well as list change events. I'll update the wiki to reflect the changes. ---Mark http://twitter.com/mccv On Sun, May 30, 2010 at 3:46 AM, Zac Bowling zbowl...@gmail.com wrote: Thanks who ever pushed this at Twitter. Not documented, but its awesome to find. Started getting list_member_added and list_member_removed events now in the user stream API on betastream. Missing pieces coming together. (Found it while hacking here at the hackathon. We are still here burning the midnight oil). Zac @zbowling
Re: [twitter-dev] Parking
There's parking at 795 Folsom that is $14/day during the week (not sure on weekend rates), and a garage about 1/4 block further north on Folsom that is $10. Although last time they tried to tell me it was $25 and I had to haggle them back down to $10. ---Mark http://twitter.com/mccv On Sat, May 29, 2010 at 11:15 AM, Zac Bowling zbowl...@gmail.com wrote: Weird to ask this here, but does anyone know the parking situation at Twitter HQ for the hackfest? I usually just take the ferry but it does come on saturdays and would rather avoid BART :-) Zac Sent from my iPad
Re: [twitter-dev] Re: Deleted status still in JSON, not in XML
I can reproduce this, and am taking a look now. ---Mark http://twitter.com/mccv On Fri, May 28, 2010 at 9:57 AM, Ronak ronakppa...@gmail.com wrote: Hi Twitter API Team, This looks like long standing issue in the actual API, Can any one confirm this from your team and fix it. I have seen this issue in 2009 Feb also. On Apr 22, 1:50 pm, Ricky ri...@digitally-born.com wrote: Has anyone seen this behavior before? Is this a once in a lifetime event? I (still) haven't found any mention of this anywhere. Ricky On Apr 20, 2:47 pm, Ricky ri...@digitally-born.com wrote: I've had a bug submitted by a user of the Twitterizer .NET library, and it appears to be a possible bug with the Twitter API. After destroying a status, the /users/show/screen_name.json result still contained the destroyed status, while the /users/show/ screen_name.xml results (correctly, I think) contains the previous status. Below is the example, both from the user ronneylovely. The status wow has been deleted. Thanks in advance for any insight or attention you give, Ricky JSON (api.twitter.com/1/users/show/ronneylovely.json): {favourites_count:1,created_at:Thu Apr 15 15:23:35 + 2010,profile_sidebar_fill_color:e0ff92,description:null,contributor s_enabled:false,time_zone:null,status: {in_reply_to_status_id:null,created_at:Mon Apr 19 22:05:12 + 2010,in_reply_to_user_id:null,truncated:false,source:web,favorite d:false,id: 12478411850,in_reply_to_screen_name:null,text:wow},following:false, geo_enabled:false,profile_sidebar_border_color:87bc44,url:null,ver ified:false,profile_background_color:9ae4e8,location:null,profile_b ackground_image_url:http:// s.twimg.com/a/1271213136/images/themes/theme1/ bg.png,profile_text_color:00,followers_count: 0,protected:false,profile_image_url:http://s.twimg.com/a/ 1271213136/images/ default_profile_3_normal.png,notifications:false,profile_background_til e:false,name:ronneylovely,friends_count: 4,profile_link_color:ff,screen_name:ronneylovely,id: 133348295,lang:en,statuses_count:2,utc_offset:null} XML (api.twitter.com/1/users/show/ronneylovely.xml): user id133348295/id nameronneylovely/name screen_nameronneylovely/screen_name location/location description/description profile_image_urlhttp://s.twimg.com/a/1271725794/images/ default_profile_3_normal.png/profile_image_url url/url protectedfalse/protected followers_count0/followers_count profile_background_color9ae4e8/profile_background_color profile_text_color00/profile_text_color profile_link_colorff/profile_link_color profile_sidebar_fill_colore0ff92/profile_sidebar_fill_color profile_sidebar_border_color87bc44/profile_sidebar_border_color friends_count4/friends_count created_atThu Apr 15 15:23:35 + 2010/created_at favourites_count1/favourites_count utc_offset/utc_offset time_zone/time_zone profile_background_image_urlhttp://s.twimg.com/a/1271725794/images/ themes/theme1/bg.png/profile_background_image_url profile_background_tilefalse/profile_background_tile notifications/notifications geo_enabledfalse/geo_enabled verifiedfalse/verified following/following statuses_count1/statuses_count langen/lang contributors_enabledfalse/contributors_enabled status created_atThu Apr 15 15:25:38 + 2010/created_at id12228846134/id texttesting this thing/text sourceweb/source truncatedfalse/truncated in_reply_to_status_id/in_reply_to_status_id in_reply_to_user_id/in_reply_to_user_id favoritedfalse/favorited in_reply_to_screen_name/in_reply_to_screen_name geo/ coordinates/ place/ contributors/ /status /user -- Subscription settings:http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] If your IP gets blacklisted
We're working on a project internally that will greatly reduce the number of false positives on blacklisting. Right now it's really tough to match up IPs and applications, and therefore difficult to figure out who we would contact about blacklisting. Once our internal project is complete we should have a pretty easy way to match IPs with apps, which should in turn allow us to be better about warning/notification when we do blacklist IPs. The troubleshooting steps you listed here are good ones in the meantime. ---Mark http://twitter.com/mccv On Fri, May 28, 2010 at 6:22 PM, Tim Haines tmhai...@gmail.com wrote: Hey guys, Wanted to share a few details about last nights experience in case anyone else gets hit with it. Hopefully it can save you a few hours troubleshooting if it happens to you. Favstar's IP address was blacklisted by twitter yesterday. When this occurs, they don't inform you of it. Instead, you start seeing percentage of your requests blocked. Not all of them, just some of them. For me it varied between the 50% and 80% range. In the way I do my logging, these appeared as timeouts, so at first I thought the API was suffering overload, and when @mccv told me there was no overload, I fell in to trap of trying to diagnose either what was wrong with my server, or what was wrong with the network in between. What I should have done, is ran a curl in verbose mode (-v). This tells you that your connections are being refused: ~/current: curl -i -u my_account:fuuu! http://api.twitter.com/1/account/rate_limit_status.json -v * About to connect() to api.twitter.com port 80 (#0) * Trying 128.242.240.157... Connection refused * Trying 168.143.161.29... Connection refused * Trying 168.143.162.45... Connection refused * Trying 128.121.146.109... connected snip correct/incorrect response When I tried this from another server, my connections were never refused. When I tried this from the blacklisted server, I would see something like the above. Sometimes I'd get a successful response, sometimes I'd get curl: (52) Empty reply from server which googling for is useless, and sometimes I'd get curl: (7) couldn't connect to host. If you'd like to see Twitter make a reasonable attempt to notify 3rd parties when they are blacklisted, please vote on this issue: http://code.google.com/p/twitter-api/issues/detail?id=1658 Cheers, Tim.
Re: [twitter-dev] Re: Status 401 on Streaming filter API with OAuth
Your report was definitely useful. I think it was reported here in two separate threads, but it's not like it was an issue that was known for days or weeks. In any case, this should be fixed on chirpstream now. We'll get the fix pushed out to stream.twitter.com soon. ---Mark http://twitter.com/mccv On Thu, May 27, 2010 at 12:40 PM, noki noris...@gmail.com wrote: Ah, This was know problem, wasn't this. Is there any place to check out know issues about APIs? -- Norio Suzuki
Re: [twitter-dev] Re: New social events on User Streams
I'll be looking at the OAuth issue(s) this week ---Mark http://twitter.com/mccv On Wed, May 26, 2010 at 5:36 PM, Fabien Penso fabienpe...@gmail.com wrote: John, Any chance it moves so quickly than time is left to look at the issue I've posted? Subject was 'UserStream : bug with oauth connection' On Wed, May 26, 2010 at 11:08 AM, John Kalucki j...@twitter.com wrote: I had to remove unfollow messages until we can sort out a complicated issue. The block and unblock messages remain. Sorry for the regression -- we're trying to move quickly.
Re: [twitter-dev] Status 401 on Streaming filter API with OAuth
I'll take a look at this issue this week. There are a few other issues in the same vein floating around. ---Mark http://twitter.com/mccv On Wed, May 26, 2010 at 2:54 AM, noki noris...@gmail.com wrote: Hi, I am in trouble with OAuth authentication of Streaming filter method with multi tracking words. I tryed status/filter method with track parameters. When I added one key word to track parameter, ex. track=noki, the returned status was 200(Authed). On the other hand, I got status 401 on two key words like track=noki,twitter or track=noki twitter the url encode may cause this problem but my lib. worked fine on REST APIs like status update. Is this my OAuth library bug or Twitter? Here is Auth header example. The tokens used to make sample header is: consumer_token = consumer_token consumer_secret = consumer_secret access_token = access_token access_secret = access_secret METHOD: POST URL: http://stream.twitter.com/1/statuses/filter.json PARAM: track=noki makes oauth_consumer_key=consumer_token, oauth_token=access_token, oauth_signature_method=HMAC-SHA1, oauth_timestamp=1274866253, oauth_nonce=69d53e881b216276c58a5368ad8038ea, oauth_version=1.0, oauth_signature=DEwB5M6sA1%2BKq2Xy%2FYx3nttm%2BGg%3D This works fine. but PARAM: track=noki,twitter makes oauth_consumer_key=consumer_token, oauth_token=access_token, oauth_signature_method=HMAC-SHA1, oauth_timestamp=1274866475, oauth_nonce=a448e7901d17808677bc46f6a2a180e7, oauth_version=1.0, oauth_signature=tRnND6u0mbQ%2BVLzAeGxQHvM%2FP3M%3D but does not work. Thank you. -- Norio Suzuki
Re: [twitter-dev] Re: Streaming API OAuth explanation?
OAuth is now enabled on stream.twitter.com. I'll also send a note out to the announce list ---Mark http://twitter.com/mccv On Mon, May 24, 2010 at 12:30 PM, Aaron Rankin aran...@gmail.com wrote: Hi, Is there an ETA for enabling oauth on stream.twitter.com? Thanks, Aaron On May 13, 1:11 pm, John Kalucki j...@twitter.com wrote: OAuthis not enabled on stream.twitter.com. You can try on chirpstream.twitter.com. On Thu, May 13, 2010 at 10:53 AM, Lucas Vickers lucasvick...@gmail.com wrote: I am writing my own c++ basedOAuthlibrary. I know there is liboauth but I like to do things myself to learn. Anyhow I am trying to accesshttp://stream.twitter.com/1/statuses/sample.xml and I keep getting 401. I have verified pretty much every parameter, and used the tool on http://hueniverse.com/2008/10/beginners-guide-to-oauth-part-iv-signin... to verify my signature is correct. I used twurl to obtain the user access tokens to my account. After doing some reading I'm no longer convinced that thestreaming server even supportsoauth. can you fill me in on the current status of stream.twitter.com and oauth? thanks! Lucas On Apr 20, 11:02 pm, Jonathon Hill jhill9...@gmail.com wrote: Thanks Taylor for the very detailed and helpful response! Jonathon On Apr 20, 1:17 pm, Taylor Singletary taylorsinglet...@twitter.com wrote: Hi Jonathon, ForStreamingAPI access that isn't from the perspective of a user's account, you would use two-leggedOAuthto establish authentication instead of basic auth. A two-leggedOAuthrequest is very similar to otherOAuthrequests: you have a specific resource you are trying to access, you have some parameters you want to pass to that resource, and you have anOAuthconsumer key andOAuth consumer secret. Which is unlike three-leggedOAuthwhere you also have oauth_tokens representing either a user/access_token or a request token in addition to the rest. But the rules remain the same. You take all theOAuthparameters and the parameters you are sending to the resource, organize them, build a signature base string, then sign that with your consumer secret and send the request on to Twitter properly signed. The only difference is that there is no oauth_token and oauth_token_secret getting involved in the mix. This is essentially what a two-legged request to thestreamingAPI would look like: Signature Base String GEThttp%3A%2F%2Fstream.twitter.com %2F1%2Fstatuses%2Fsample.jsonoauth_consumer_key%3Dri8JxYK2zzwSV5xIUfNNvQ%26oauth_nonce%3DSJJqJPdaZrYuIogToapS6ueJRyWB4Rs2ox4HEbu4nW8%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1271783743%26oauth_version%3D1.0 Signature Xi5jfuw2XqtU5KpNX9ZCtTptJS0= Authorization Header OAuthoauth_nonce=SJJqJPdaZrYuIogToapS6ueJRyWB4Rs2ox4HEbu4nW8, oauth_signature_method=HMAC-SHA1, oauth_timestamp=1271783743, oauth_consumer_key=ri8JxYK2zzwSV5xIUfNNvQ, oauth_signature=Xi5jfuw2XqtU5KpNX9ZCtTptJS0%3D, oauth_version=1.0 Taylor Singletary Developer Advocate, Twitterhttp://twitter.com/episod On Tue, Apr 20, 2010 at 10:05 AM, Jonathon Hill jhill9...@gmail.com wrote: One thing I meant to find out @chirp last week--what willoauthlook like for theStreamingAPI? I'm having a hard time visualizing how that will work. Thanks, Jonathon Hill @compwright Company52 http://company52.com -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: UserStream : bug with oauth connection
We'll take a look. ---Mark http://twitter.com/mccv On Mon, May 24, 2010 at 1:19 PM, Fabien Penso fabienpe...@gmail.com wrote: On Fri, May 21, 2010 at 10:35 AM, Fabien Penso fabienpe...@gmail.com wrote: Joshua and I tried to debug something and found a bug in the userstream. If you connect for 2 users and send DMs between them, while being connected with oauth token, only one of them (the sender) receives it in the stream, the recipient does not. Anyone on this ?
[twitter-dev] apistatus and latency
All - apistatus.twitter.com is monitoring API latency. However the reflection of latency in the green check marks is currently not quite what you might expect. The green only turns to yellow if latency is below performance thresholds for the entire day. We're working with our vendor on making this a reflection of current performance vs. the entire day's performance. Until then, you can always click on a specific monitor and see a graph of latency. Sorry for the inconvenience, we'll let you know when it's fixed. ---Mark http://twitter.com/mccv
[twitter-dev] More user stream updates
All - within the next day or so we will be including list information in the user streams. These will be manifested as social events with new event types. The new types are 1) list_created 2) list_updated 3) list_destroyed 4) list_member_added 5) list_member_removed 6) list_user_subscribed 7) list_user_unsubscribed Currently the dispatch of these events is the same as follow/favorites/etc. If this becomes too noisy we'll reconsider the dispatch scheme. As always, questions/comments/concerns welcome. ---Mark http://twitter.com/mccv
[twitter-dev] Re: More user stream updates
And... this is live. Enjoy! ---Mark http://twitter.com/mccv On Tue, May 11, 2010 at 12:24 PM, Mark McBride mmcbr...@twitter.com wrote: All - within the next day or so we will be including list information in the user streams. These will be manifested as social events with new event types. The new types are 1) list_created 2) list_updated 3) list_destroyed 4) list_member_added 5) list_member_removed 6) list_user_subscribed 7) list_user_unsubscribed Currently the dispatch of these events is the same as follow/favorites/etc. If this becomes too noisy we'll reconsider the dispatch scheme. As always, questions/comments/concerns welcome. ---Mark http://twitter.com/mccv
Re: [twitter-dev] The most shameful bug a site can have! Fix it quickly before it causes havoc dear Twitter
We're aware and currently working on a fix. ---Mark http://twitter.com/mccv On Mon, May 10, 2010 at 9:37 AM, nischalshetty nischalshett...@gmail.com wrote: Hi, TechCrunch Europe reported the bug. I hope you fix it asap. It seems to work! I'm extremely sorry, did not mean to exploit it, was just trying to ascertain if it was true. Once you are done fixing the bug, you will have the arduous task of reversing all the follows that took place by exploiting this bug. If you have an easy way to do that, well and fine. One thing I noticed, when you make someone follow you using the exploited bug, the new follower notification email is never sent. This might be of some help to you in identifying all those who exploited the bug and reverse it.
[twitter-dev] OAuth update on userstreams
I deployed some OAuth fixes to betastream.twitter.com. It should handle spacing in the OAuth header better, and in general be more stable. ---Mark http://twitter.com/mccv
Re: [twitter-dev] can't post same message more than 1 time Getting error: The remote server returned an error: (403) Forbidden.
This is the intended behavior ---Mark http://twitter.com/mccv On Mon, May 10, 2010 at 9:34 PM, manjunath hindupur mhindu...@gmail.com wrote: Scenario like : i want post same message twice in a same account, if i Try to send same message twice by using API.. getting error Like below : The remote server returned an error: (403) Forbidden. its right behavior or Bug?
Re: [twitter-dev] Re: OAuth support and reformatted DMs live on user streams
You are correct on point 1. That should be fixed today. Sent from mobile device On May 7, 2010, at 2:38 AM, lqd remy.ra...@gmail.com wrote: #1 OAuth. This took a long time to debug but I think I found the problem. It looks like you guys expect the OAuth Authorization header params to be separated by a comma (which is OK), AND at least one space (which is not OK). Am I right ? (The spaces after the comma are optional if I remember the OAuth spec correctly.) #3 The use cases for hydrated delete events would be exactly the same on your part as the ones for hydrating social events :) (which I believe is to make the stream more useful by itself and not *having* to use the REST API to understand the stream events). I keep user objects ATM, or ask the REST API for statuses or user ids I didn't encounter before, there's no question that it's doable, I was just wondering whether the same thinking would be applied consistently to all events, the delete ones right now and any new ones created in the future ? Thanks Mark and John Rémy @ldq On May 6, 6:46 pm, Mark McBride mmcbr...@twitter.com wrote: Did you adjust the timestamp in that tool? The hosebird implementation tolerates at most a 5 minute clock skew... in other words if it receives a timestamp that is 5 minutes older (or newer) than the current time, it rejects the request. ---Mark http://twitter.com/mccv On Thu, May 6, 2010 at 6:39 AM, lqd remy.ra...@gmail.com wrote: Hey guys, a couple questions/remarks on the new user streams features: 1) OAuth I have no problem using the stream with BasicAuth, nor using the REST API with OAuth. However I'm always getting 401s with OAuth on the stream, even though Zac's fork or earlybird works flawlessly. Just to try and locate the problem I tried signing the request with the official noob tool athttp://hueniverse.com/2008/10/beginners- guide-to-oauth-part-iv-signin... and sending the header with curl (with fiddling with spaces, tabs newline just in case, and even the realm value - just because earlybird's impl doesn't send it), and I still can't login. While my own code signing matches the parameters this tool outputs (and works on api.twitter.com) it doesn't match what the ruby gem generates, even when using the same timestamp and nonce, so I was suspecting some difference in the base string. (I don't know Ruby, or how to get the Base String there, but there's apparently a signature_base_string method, and it did seem to have all the oauth params in the query string) 2) +1 on the user burping at the beginning :) 3) Are the deletion notices going to be hydrated too ? ATM it's a little raw. While it's understandable for the status not to be there since it's just been deleted, maybe the full JSON user could be there instead of just its id ? Thanks Rémy @lqd On May 6, 12:41 am, Mark McBride mmcbr...@twitter.com wrote: Ok. The query string OAuth variant should be working now. We only support HMAC-SHA1 (just like twitter.com does) for signature methods, and don't have plans to support other schemes. ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 3:21 PM, John Kalucki j...@twitter.com wrote: We should probably just burp the whole user object out at connection start. On Wed, May 5, 2010 at 3:12 PM, Zac Bowling zbowl...@gmail.com wrote: Hydrated message support in earlybird! http://github.com/zbowling/earlybird/ OAuth in query string doesn't work and only HMAC-SHA1 signature (unless you only allow plaintext over SSL) but its fine. One feature request would be an inital event with the users credentials just like how the user's social graph comes down initially. Right now I don't know the user's screen_name unless I also hit api.twitter.com or he tells me on the command line. With that I could drop the dependency on the twitter gem. Zac Bowling @zbowling On Wed, May 5, 2010 at 10:54 AM, Mark McBride mmcbr...@twitter.com wrote: It should support both. Can you send me a direct email with a URL that you tried? ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 10:38 AM, Zac Bowling zbowl...@gmail.com wrote: My fork of earlybird works: http://github.com/zbowling/earlybird/ Fixing it to support hydrated objects. One thing is that it doesn't appear to support query string passed OAuth params but if I pass it as authentication headers it works. Zac Bowling On Wed, May 5, 2010 at 10:31 AM, Mark McBride mmcbr...@twitter.com wrote: OAuth support on betastream is live now. This is different OAuth implementation than we use on twitter.com, so if you find any rough edges please let us know quick like. The changes to make direct messages more distinguishable from tweets has also been pushed. This will probably require some changes in parsing logic when dealing with DMs. ---Mark http://twitter.com/mccv
Re: [twitter-dev] Re: OAuth support and reformatted DMs live on user streams
Did you adjust the timestamp in that tool? The hosebird implementation tolerates at most a 5 minute clock skew... in other words if it receives a timestamp that is 5 minutes older (or newer) than the current time, it rejects the request. ---Mark http://twitter.com/mccv On Thu, May 6, 2010 at 6:39 AM, lqd remy.ra...@gmail.com wrote: Hey guys, a couple questions/remarks on the new user streams features: 1) OAuth I have no problem using the stream with BasicAuth, nor using the REST API with OAuth. However I'm always getting 401s with OAuth on the stream, even though Zac's fork or earlybird works flawlessly. Just to try and locate the problem I tried signing the request with the official noob tool at http://hueniverse.com/2008/10/beginners-guide-to-oauth-part-iv-signing-requests/ and sending the header with curl (with fiddling with spaces, tabs newline just in case, and even the realm value - just because earlybird's impl doesn't send it), and I still can't login. While my own code signing matches the parameters this tool outputs (and works on api.twitter.com) it doesn't match what the ruby gem generates, even when using the same timestamp and nonce, so I was suspecting some difference in the base string. (I don't know Ruby, or how to get the Base String there, but there's apparently a signature_base_string method, and it did seem to have all the oauth params in the query string) 2) +1 on the user burping at the beginning :) 3) Are the deletion notices going to be hydrated too ? ATM it's a little raw. While it's understandable for the status not to be there since it's just been deleted, maybe the full JSON user could be there instead of just its id ? Thanks Rémy @lqd On May 6, 12:41 am, Mark McBride mmcbr...@twitter.com wrote: Ok. The query string OAuth variant should be working now. We only support HMAC-SHA1 (just like twitter.com does) for signature methods, and don't have plans to support other schemes. ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 3:21 PM, John Kalucki j...@twitter.com wrote: We should probably just burp the whole user object out at connection start. On Wed, May 5, 2010 at 3:12 PM, Zac Bowling zbowl...@gmail.com wrote: Hydrated message support in earlybird! http://github.com/zbowling/earlybird/ OAuth in query string doesn't work and only HMAC-SHA1 signature (unless you only allow plaintext over SSL) but its fine. One feature request would be an inital event with the users credentials just like how the user's social graph comes down initially. Right now I don't know the user's screen_name unless I also hit api.twitter.com or he tells me on the command line. With that I could drop the dependency on the twitter gem. Zac Bowling @zbowling On Wed, May 5, 2010 at 10:54 AM, Mark McBride mmcbr...@twitter.com wrote: It should support both. Can you send me a direct email with a URL that you tried? ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 10:38 AM, Zac Bowling zbowl...@gmail.com wrote: My fork of earlybird works: http://github.com/zbowling/earlybird/ Fixing it to support hydrated objects. One thing is that it doesn't appear to support query string passed OAuth params but if I pass it as authentication headers it works. Zac Bowling On Wed, May 5, 2010 at 10:31 AM, Mark McBride mmcbr...@twitter.com wrote: OAuth support on betastream is live now. This is different OAuth implementation than we use on twitter.com, so if you find any rough edges please let us know quick like. The changes to make direct messages more distinguishable from tweets has also been pushed. This will probably require some changes in parsing logic when dealing with DMs. ---Mark http://twitter.com/mccv
Re: [twitter-dev] Re: Upcoming changes to userstream preview
Only the hydrated social message stuff got pushed yesterday. OAuth should be coming soon though! ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 3:51 AM, Zac Bowling zbowl...@gmail.com wrote: Cool... I added OAuth support and switched to the betastream but no OAuth yet enabled there so I probably beat the roll out (getting 401s on betastream but token works on api.twitter.com so I'm assuming its not up yet :-) ). I'm holding off fixing it to support hydrated items until I see it working though but it may be a useful start at least for testing. source: http://github.com/zbowling/earlybird usage: earlybird.rb -c consumer_token -s consumer_secret -a access_token -S access_secret [-d] [-f] [-t key,words] [-u url] [-h host] options: -c --consumer_token consumer token -s --consumer_secret consumer secret -a --access_token access token -S --access_secret access secret -r show in reply too (takes a lot of API requests) -d debug mode, read json from stdin -f filter out @replies from users you don't follow -g growl notifications for new tweets -t track keywords separated by commas. -u userstream path. Default: /2b/user.json -h userstream hostname: Default: betastream.twitter.com Zac Bowling @zbowling On Tue, May 4, 2010 at 4:09 PM, Mark McBride mmcbr...@twitter.com wrote: Then by all means, hack away! ---Mark http://twitter.com/mccv On Tue, May 4, 2010 at 4:05 PM, Zac Bowling zbowl...@gmail.com wrote: I was going to tackle it if no body else did :-) Already started working on a fork my self: http://github.com/zbowling/earlybird Zac Bowling On Tue, May 4, 2010 at 4:01 PM, Mark McBride mmcbr...@twitter.com wrote: I can hack that together. ---Mark http://twitter.com/mccv On Tue, May 4, 2010 at 3:54 PM, Zac Bowling zbowl...@gmail.com wrote: Who is updating earlybird? :-P Zac Bowling On Tue, May 4, 2010 at 1:59 PM, Mark McBride mmcbr...@twitter.com wrote: The hydrated social events (as described in the previous email) are now live. Please let me know if you have questions/issues/concerns with the new data ---Mark http://twitter.com/mccv On Mon, May 3, 2010 at 10:50 AM, Mark McBride mmcbr...@twitter.com wrote: Userstream previewers: Coming soon there will be a number of changes that may impact applications. The first is support for OAuth 1.0a. When rolled out, you will be able to sign requests to all streaming API endpoints on betastream.twitter.com. This means that you can use OAuth with both user streams and other streaming calls (filter, sample, etc.) To obtain access tokens use the regular twitter.com OAuth flow, then sign requests to betastream.twitter.com. If you already have an access token you should be able to use it with the streaming API. The second is inclusion of fully hydrated objects for the social events. Instead of just getting a source id, target id, and target object id you will get the full user object in source and target fields, and the full status in the target object field (if applicable). You will also get a created_at field that indicates the time the social event was created. This should dramatically reduce the number of REST API calls needed to build a client. Note that most parsers shouldn't need to change -- the ID field will still be set, you will just have more fields available. The format is the same as statuses retrieved via the rest API, with following exceptions: 1) The user's latest status may not be included 2) The user's status count may not be included 3) The user's favorites count may not be included An example of a hydrated social event is {created_at=Mon May 03 17:42:55 + 2010, target_object= {coordinates=nil, truncated=false, created_at=Sun Jun 28 23:10:35 + 2009, favorited=false, contributors=nil, text=looking at cricket eyes!, id=4, geo=nil, in_reply_to_user_id=nil, source=web, place=nil, user= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description
[twitter-dev] OAuth support and reformatted DMs live on user streams
OAuth support on betastream is live now. This is different OAuth implementation than we use on twitter.com, so if you find any rough edges please let us know quick like. The changes to make direct messages more distinguishable from tweets has also been pushed. This will probably require some changes in parsing logic when dealing with DMs. ---Mark http://twitter.com/mccv
Re: [twitter-dev] OAuth support and reformatted DMs live on user streams
It should support both. Can you send me a direct email with a URL that you tried? ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 10:38 AM, Zac Bowling zbowl...@gmail.com wrote: My fork of earlybird works: http://github.com/zbowling/earlybird/ Fixing it to support hydrated objects. One thing is that it doesn't appear to support query string passed OAuth params but if I pass it as authentication headers it works. Zac Bowling On Wed, May 5, 2010 at 10:31 AM, Mark McBride mmcbr...@twitter.com wrote: OAuth support on betastream is live now. This is different OAuth implementation than we use on twitter.com, so if you find any rough edges please let us know quick like. The changes to make direct messages more distinguishable from tweets has also been pushed. This will probably require some changes in parsing logic when dealing with DMs. ---Mark http://twitter.com/mccv
Re: [twitter-dev] OAuth support and reformatted DMs live on user streams
Ok. The query string OAuth variant should be working now. We only support HMAC-SHA1 (just like twitter.com does) for signature methods, and don't have plans to support other schemes. ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 3:21 PM, John Kalucki j...@twitter.com wrote: We should probably just burp the whole user object out at connection start. On Wed, May 5, 2010 at 3:12 PM, Zac Bowling zbowl...@gmail.com wrote: Hydrated message support in earlybird! http://github.com/zbowling/earlybird/ OAuth in query string doesn't work and only HMAC-SHA1 signature (unless you only allow plaintext over SSL) but its fine. One feature request would be an inital event with the users credentials just like how the user's social graph comes down initially. Right now I don't know the user's screen_name unless I also hit api.twitter.com or he tells me on the command line. With that I could drop the dependency on the twitter gem. Zac Bowling @zbowling On Wed, May 5, 2010 at 10:54 AM, Mark McBride mmcbr...@twitter.com wrote: It should support both. Can you send me a direct email with a URL that you tried? ---Mark http://twitter.com/mccv On Wed, May 5, 2010 at 10:38 AM, Zac Bowling zbowl...@gmail.com wrote: My fork of earlybird works: http://github.com/zbowling/earlybird/ Fixing it to support hydrated objects. One thing is that it doesn't appear to support query string passed OAuth params but if I pass it as authentication headers it works. Zac Bowling On Wed, May 5, 2010 at 10:31 AM, Mark McBride mmcbr...@twitter.com wrote: OAuth support on betastream is live now. This is different OAuth implementation than we use on twitter.com, so if you find any rough edges please let us know quick like. The changes to make direct messages more distinguishable from tweets has also been pushed. This will probably require some changes in parsing logic when dealing with DMs. ---Mark http://twitter.com/mccv
Re: [twitter-dev] Re: statuses/friends cursor parameter
I can reproduce this, and am taking a look now ---Mark http://twitter.com/mccv On Sat, May 1, 2010 at 2:08 PM, randomnoise jdrodrigues...@gmail.com wrote: I've got the same problem, previous_cursor does not work on: http://dev.twitter.com/doc/get/statuses/friends and may also be broken on : http://dev.twitter.com/doc/get/:user/:list_id/members but seems to work on : http://dev.twitter.com/doc/get/statuses/followers Anyone know anything about this? - jr
[twitter-dev] Re: Upcoming changes to userstream preview
The hydrated social events (as described in the previous email) are now live. Please let me know if you have questions/issues/concerns with the new data ---Mark http://twitter.com/mccv On Mon, May 3, 2010 at 10:50 AM, Mark McBride mmcbr...@twitter.com wrote: Userstream previewers: Coming soon there will be a number of changes that may impact applications. The first is support for OAuth 1.0a. When rolled out, you will be able to sign requests to all streaming API endpoints on betastream.twitter.com. This means that you can use OAuth with both user streams and other streaming calls (filter, sample, etc.) To obtain access tokens use the regular twitter.com OAuth flow, then sign requests to betastream.twitter.com. If you already have an access token you should be able to use it with the streaming API. The second is inclusion of fully hydrated objects for the social events. Instead of just getting a source id, target id, and target object id you will get the full user object in source and target fields, and the full status in the target object field (if applicable). You will also get a created_at field that indicates the time the social event was created. This should dramatically reduce the number of REST API calls needed to build a client. Note that most parsers shouldn't need to change -- the ID field will still be set, you will just have more fields available. The format is the same as statuses retrieved via the rest API, with following exceptions: 1) The user's latest status may not be included 2) The user's status count may not be included 3) The user's favorites count may not be included An example of a hydrated social event is {created_at=Mon May 03 17:42:55 + 2010, target_object= {coordinates=nil, truncated=false, created_at=Sun Jun 28 23:10:35 + 2009, favorited=false, contributors=nil, text=looking at cricket eyes!, id=4, geo=nil, in_reply_to_user_id=nil, source=web, place=nil, user= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, in_reply_to_screen_name=nil, in_reply_to_status_id=nil}, event=favorite, target= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, source= {profile_background_tile=false, name=Jack, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=San Francisco, created_at=Wed Apr 28 00:00:00 + 2010, profile_image_url= http://s3.amazonaws.com/twitter_development/profile_images/2/jack_normal.jpg;, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=0, id=3, utc_offset=-28800, profile_text_color=00, protected=true, lang=en, followers_count=2, notifications=nil, verified=false, description=love, love, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Pacific Time (US Canada), profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=2, screen_name=jack, following=nil}} The third is an improvement to the direct message payload. Currently it's a bit of a pain to disambiguate statuses and DMs. We'll be wrapping direct messages in a higher level direct_message object, e.g. {direct_message= {created_at=Wed Apr 28 14:56:31 + 2010, sender_screen_name=user1, sender= {profile_background_tile=false, name=User1, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=San Francisco, created_at=Wed Apr 28 00:00
Re: [twitter-dev] Re: Upcoming changes to userstream preview
I can hack that together. ---Mark http://twitter.com/mccv On Tue, May 4, 2010 at 3:54 PM, Zac Bowling zbowl...@gmail.com wrote: Who is updating earlybird? :-P Zac Bowling On Tue, May 4, 2010 at 1:59 PM, Mark McBride mmcbr...@twitter.com wrote: The hydrated social events (as described in the previous email) are now live. Please let me know if you have questions/issues/concerns with the new data ---Mark http://twitter.com/mccv On Mon, May 3, 2010 at 10:50 AM, Mark McBride mmcbr...@twitter.com wrote: Userstream previewers: Coming soon there will be a number of changes that may impact applications. The first is support for OAuth 1.0a. When rolled out, you will be able to sign requests to all streaming API endpoints on betastream.twitter.com. This means that you can use OAuth with both user streams and other streaming calls (filter, sample, etc.) To obtain access tokens use the regular twitter.com OAuth flow, then sign requests to betastream.twitter.com. If you already have an access token you should be able to use it with the streaming API. The second is inclusion of fully hydrated objects for the social events. Instead of just getting a source id, target id, and target object id you will get the full user object in source and target fields, and the full status in the target object field (if applicable). You will also get a created_at field that indicates the time the social event was created. This should dramatically reduce the number of REST API calls needed to build a client. Note that most parsers shouldn't need to change -- the ID field will still be set, you will just have more fields available. The format is the same as statuses retrieved via the rest API, with following exceptions: 1) The user's latest status may not be included 2) The user's status count may not be included 3) The user's favorites count may not be included An example of a hydrated social event is {created_at=Mon May 03 17:42:55 + 2010, target_object= {coordinates=nil, truncated=false, created_at=Sun Jun 28 23:10:35 + 2009, favorited=false, contributors=nil, text=looking at cricket eyes!, id=4, geo=nil, in_reply_to_user_id=nil, source=web, place=nil, user= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, in_reply_to_screen_name=nil, in_reply_to_status_id=nil}, event=favorite, target= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, source= {profile_background_tile=false, name=Jack, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=San Francisco, created_at=Wed Apr 28 00:00:00 + 2010, profile_image_url= http://s3.amazonaws.com/twitter_development/profile_images/2/jack_normal.jpg;, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=0, id=3, utc_offset=-28800, profile_text_color=00, protected=true, lang=en, followers_count=2, notifications=nil, verified=false, description=love, love, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Pacific Time (US Canada), profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=2, screen_name=jack, following=nil}} The third is an improvement to the direct message payload. Currently it's a bit of a pain to disambiguate
Re: [twitter-dev] Re: Upcoming changes to userstream preview
Then by all means, hack away! ---Mark http://twitter.com/mccv On Tue, May 4, 2010 at 4:05 PM, Zac Bowling zbowl...@gmail.com wrote: I was going to tackle it if no body else did :-) Already started working on a fork my self: http://github.com/zbowling/earlybird Zac Bowling On Tue, May 4, 2010 at 4:01 PM, Mark McBride mmcbr...@twitter.com wrote: I can hack that together. ---Mark http://twitter.com/mccv On Tue, May 4, 2010 at 3:54 PM, Zac Bowling zbowl...@gmail.com wrote: Who is updating earlybird? :-P Zac Bowling On Tue, May 4, 2010 at 1:59 PM, Mark McBride mmcbr...@twitter.com wrote: The hydrated social events (as described in the previous email) are now live. Please let me know if you have questions/issues/concerns with the new data ---Mark http://twitter.com/mccv On Mon, May 3, 2010 at 10:50 AM, Mark McBride mmcbr...@twitter.com wrote: Userstream previewers: Coming soon there will be a number of changes that may impact applications. The first is support for OAuth 1.0a. When rolled out, you will be able to sign requests to all streaming API endpoints on betastream.twitter.com. This means that you can use OAuth with both user streams and other streaming calls (filter, sample, etc.) To obtain access tokens use the regular twitter.com OAuth flow, then sign requests to betastream.twitter.com. If you already have an access token you should be able to use it with the streaming API. The second is inclusion of fully hydrated objects for the social events. Instead of just getting a source id, target id, and target object id you will get the full user object in source and target fields, and the full status in the target object field (if applicable). You will also get a created_at field that indicates the time the social event was created. This should dramatically reduce the number of REST API calls needed to build a client. Note that most parsers shouldn't need to change -- the ID field will still be set, you will just have more fields available. The format is the same as statuses retrieved via the rest API, with following exceptions: 1) The user's latest status may not be included 2) The user's status count may not be included 3) The user's favorites count may not be included An example of a hydrated social event is {created_at=Mon May 03 17:42:55 + 2010, target_object= {coordinates=nil, truncated=false, created_at=Sun Jun 28 23:10:35 + 2009, favorited=false, contributors=nil, text=looking at cricket eyes!, id=4, geo=nil, in_reply_to_user_id=nil, source=web, place=nil, user= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, in_reply_to_screen_name=nil, in_reply_to_status_id=nil}, event=favorite, target= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, source= {profile_background_tile=false, name=Jack, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=San Francisco, created_at=Wed Apr 28 00:00:00 + 2010, profile_image_url= http://s3.amazonaws.com/twitter_development/profile_images/2/jack_normal.jpg;, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=0, id=3, utc_offset=-28800
[twitter-dev] Upcoming changes to userstream preview
Userstream previewers: Coming soon there will be a number of changes that may impact applications. The first is support for OAuth 1.0a. When rolled out, you will be able to sign requests to all streaming API endpoints on betastream.twitter.com. This means that you can use OAuth with both user streams and other streaming calls (filter, sample, etc.) To obtain access tokens use the regular twitter.com OAuth flow, then sign requests to betastream.twitter.com. If you already have an access token you should be able to use it with the streaming API. The second is inclusion of fully hydrated objects for the social events. Instead of just getting a source id, target id, and target object id you will get the full user object in source and target fields, and the full status in the target object field (if applicable). You will also get a created_at field that indicates the time the social event was created. This should dramatically reduce the number of REST API calls needed to build a client. Note that most parsers shouldn't need to change -- the ID field will still be set, you will just have more fields available. The format is the same as statuses retrieved via the rest API, with following exceptions: 1) The user's latest status may not be included 2) The user's status count may not be included 3) The user's favorites count may not be included An example of a hydrated social event is {created_at=Mon May 03 17:42:55 + 2010, target_object= {coordinates=nil, truncated=false, created_at=Sun Jun 28 23:10:35 + 2009, favorited=false, contributors=nil, text=looking at cricket eyes!, id=4, geo=nil, in_reply_to_user_id=nil, source=web, place=nil, user= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, in_reply_to_screen_name=nil, in_reply_to_status_id=nil}, event=favorite, target= {profile_background_tile=false, name=Ray, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=nil, created_at=Mon Apr 12 00:00:00 + 2010, profile_image_url=/images/default_profile_4_normal.png, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=1, id=4, utc_offset=-21600, profile_text_color=00, protected=true, lang=en, followers_count=3, notifications=nil, verified=false, description=nil, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Saskatchewan, profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=3, screen_name=ray, following=nil}, source= {profile_background_tile=false, name=Jack, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=San Francisco, created_at=Wed Apr 28 00:00:00 + 2010, profile_image_url= http://s3.amazonaws.com/twitter_development/profile_images/2/jack_normal.jpg;, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=0, id=3, utc_offset=-28800, profile_text_color=00, protected=true, lang=en, followers_count=2, notifications=nil, verified=false, description=love, love, profile_background_color=9ae4e8, geo_enabled=false, time_zone=Pacific Time (US Canada), profile_background_image_url=/images/themes/theme1/bg.png, statuses_count=1, friends_count=2, screen_name=jack, following=nil}} The third is an improvement to the direct message payload. Currently it's a bit of a pain to disambiguate statuses and DMs. We'll be wrapping direct messages in a higher level direct_message object, e.g. {direct_message= {created_at=Wed Apr 28 14:56:31 + 2010, sender_screen_name=user1, sender= {profile_background_tile=false, name=User1, profile_sidebar_border_color=87bc44, profile_sidebar_fill_color=e0ff92, location=San Francisco, created_at=Wed Apr 28 00:00:00 + 2010, profile_image_url= http://s3.amazonaws.com/twitter_development/profile_images/2/user1_normal.jpg;, profile_link_color=ff, contributors_enabled=false, url=nil, favourites_count=0, id=3, utc_offset=-28800, profile_text_color=00,
[twitter-dev] Fix for handling invalid credentials deployed
Until recently, setting bad credentials when making a call to an unauthenticated endpoint would result in a 200 (and the response body). However repeated calls with bad credentials would lock out the account. We recently started returning an error message indicating the account was locked out. Today we're fixing this the rest of the way, and returning a 401 for any calls that have bad credentials passed in. If you start seeing increased 401s on unauthenticated endpoints it's likely that your credentials have always been invalid, we're just letting you know now. ---Mark http://twitter.com/mccv
Re: [twitter-dev] Re: Is /users/show broken or is it just me?
And... now this user works. Can you still reproduce this issue? If so, can you get me a new set of user IDs? ---Mark http://twitter.com/mccv On Tue, Apr 27, 2010 at 1:47 PM, Ryan Rosario uclamath...@gmail.com wrote: Thanks. Posted. R. On Apr 25, 3:51 pm, Mark McBride mmcbr...@twitter.com wrote: I can reproduce this, so we should be good to go. Can one of you open an issue on the code tracker so we can track it? ---Mark http://twitter.com/mccv On Sun, Apr 25, 2010 at 11:25 AM, Ryan Rosario uclamath...@gmail.com wrote: Here are the ones I have found so far. For the first one, I am able to reproduce the error on this one cursor. http://api.twitter.com/1/statuses/followers/pothos.json?cursor=129860... User numeric ID: 3598791 (cursor unknown) R. On Apr 25, 10:26 am, Raffi Krikorian ra...@twitter.com wrote: this shouldn't happen - feel free to give a sample of the poison user IDs, and we'll investigate them. we already have one, and we'll look into more. On Sun, Apr 25, 2010 at 10:16 AM, Ryan Rosario uclamath...@gmail.comwrote: I've found that all of my 500 isses are related to poison users. For whatever reason, I can never get their followers. I retry on 500, so I end up with an infinite loop of 500s for these users. When 500s happen with other users, my program usually succeeds after 1 or 2 retries. The only way to resolve it is to kill my process, add the user to a blacklist, and start over. It's really frustrating. Ryan On Apr 25, 5:31 am, Dossy Shiobara do...@panoptic.com wrote: From my logged errors ... here's an example: http://api.twitter.com/1/users/show.xml?id=4583991 On 4/25/10 12:37 AM, Mark McBride wrote: Without more details this is going to be really hard to troubleshoot. Can you reliably reproduce this? What are the exact URIs you're calling that return 500s? What user are you using to make these calls? What authentication method? -- Dossy Shiobara | do...@panoptic.com |http://dossy.org/ Panoptic Computer Network |http://panoptic.com/ He realized the fastest way to change is to laugh at your own folly -- then you can let go and quickly move on. (p. 70) -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en -- Raffi Krikorian Twitter Platform Teamhttp://twitter.com/raffi
Re: [twitter-dev] Avatar change - JSON issue
It's in the bug tracker, and on my list of stuff to look at. Caching in general is a high priority issue at the moment. ---Mark http://twitter.com/mccv On Mon, Apr 26, 2010 at 9:19 AM, Edi edi@gmail.com wrote: Hi, I've noticed that if you change the avatar on twitter.com, the API returns the new one on the XML output... but on the JSON output, the URL is still the old one. It changes eventually, but it takes a few hours (or even days sometimes). I've read some older messages and the problem is quite old, but it seems Twitter did not fix it. Any chance of someone (from Twitter) taking a look? Most (mobile) apps use JSON (for obvious reasons), so using XML is not a choice. Thanks. -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Is /users/show broken or is it just me?
I can reproduce this, so we should be good to go. Can one of you open an issue on the code tracker so we can track it? ---Mark http://twitter.com/mccv On Sun, Apr 25, 2010 at 11:25 AM, Ryan Rosario uclamath...@gmail.com wrote: Here are the ones I have found so far. For the first one, I am able to reproduce the error on this one cursor. http://api.twitter.com/1/statuses/followers/pothos.json?cursor=1298609621435131624 User numeric ID: 3598791 (cursor unknown) R. On Apr 25, 10:26 am, Raffi Krikorian ra...@twitter.com wrote: this shouldn't happen - feel free to give a sample of the poison user IDs, and we'll investigate them. we already have one, and we'll look into more. On Sun, Apr 25, 2010 at 10:16 AM, Ryan Rosario uclamath...@gmail.comwrote: I've found that all of my 500 isses are related to poison users. For whatever reason, I can never get their followers. I retry on 500, so I end up with an infinite loop of 500s for these users. When 500s happen with other users, my program usually succeeds after 1 or 2 retries. The only way to resolve it is to kill my process, add the user to a blacklist, and start over. It's really frustrating. Ryan On Apr 25, 5:31 am, Dossy Shiobara do...@panoptic.com wrote: From my logged errors ... here's an example: http://api.twitter.com/1/users/show.xml?id=4583991 On 4/25/10 12:37 AM, Mark McBride wrote: Without more details this is going to be really hard to troubleshoot. Can you reliably reproduce this? What are the exact URIs you're calling that return 500s? What user are you using to make these calls? What authentication method? -- Dossy Shiobara | do...@panoptic.com |http://dossy.org/ Panoptic Computer Network |http://panoptic.com/ He realized the fastest way to change is to laugh at your own folly -- then you can let go and quickly move on. (p. 70) -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en -- Raffi Krikorian Twitter Platform Teamhttp://twitter.com/raffi
Re: [twitter-dev] Re: Is /users/show broken or is it just me?
Without more details this is going to be really hard to troubleshoot. Can you reliably reproduce this? What are the exact URIs you're calling that return 500s? What user are you using to make these calls? What authentication method? ---Mark http://twitter.com/mccv On Sat, Apr 24, 2010 at 6:43 PM, Mytweetopics monsoon@gmail.com wrote: I am having an issue with users/show API request as well today. I am repeatedly getting an xml error that I have exceeded the rate limit even though I have tried it a few times per hour. On Apr 24, 8:35 am, Dossy Shiobara do...@panoptic.com wrote: I've been seeing an unusually high volume of HTTP 500 errors in response to /users/show API requests today. The availability/status page for it shows 100% uptime -- http://status.watchmouse.com/7617/127215/users/show Is this only affecting my requests? Is the status availability service at WatchMouse.com just poorly implemented? False positives in a monitoring service would be really bad. -- Dossy Shiobara | do...@panoptic.com |http://dossy.org/ Panoptic Computer Network |http://panoptic.com/ He realized the fastest way to change is to laugh at your own folly -- then you can let go and quickly move on. (p. 70) -- Subscription settings:http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] statuses/show.json: profile_background_image_url erroneously populated for users with the background image disabled.
Yeah, this is a sticky one. I have a branch to fix some of the issues around this, but getting it right may take some doing. ---Mark http://twitter.com/mccv On Fri, Apr 23, 2010 at 8:28 PM, Abraham Williams 4bra...@gmail.com wrote: There are two related issues: http://code.google.com/p/twitter-api/issues/detail?id=1183 http://code.google.com/p/twitter-api/issues/detail?id=1211 Abraham On Thu, Apr 22, 2010 at 14:03, James Wheare ja...@wheare.org wrote: In results from statuses/show.json, the user data returned sometimes contains a 'profile_background_image_url' for users that have chosen to turn off the background image on their profile. I've made an app that attempts to mimic the user's profile design as closely as possible and this is causing acute ugliness in some cases. e.g. http://www.exquisitetweets.com/tweets?ids=10795543407.10795729981.10796641044.10797050988.10797098108.10796710716.10797057786.10797742374 You'll notice that tweets from the user ru show the default theme's cloudy background, while on his profile the background image is hidden: http://twitter.com/ru It would be great if the API could either return an empty profile_background_image_url field in this case or provide an extra profile_background_image_hidden boolean field to indicate whether they've chosen to hide the image in their design settings. Thanks. - James -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en -- Abraham Williams | Developer for hire | http://abrah.am @abraham | http://projects.abrah.am | http://blog.abrah.am This email is: [ ] shareable [x] ask first [ ] private.
Re: [twitter-dev] users lookup - user missing
No problem. It's something high on our priority list to get rectified. ---Mark http://twitter.com/mccv On Fri, Apr 23, 2010 at 8:17 PM, Christopher Stumm christop...@stumm.ca wrote: From search, and now looking at the page I apparently missed this big warning: Warning: The user ids in the Search API are different from those in the REST API (about the two APIs). This defect is being tracked by Issue 214. This means that the to_user_id and from_user_id field vary from the actualy user id on Twitter.com. Applications will have to perform a screen name-based lookup with the users/show method to get the correct user id if necessary. My apologies for wasting your time. --Christopher On Thu, Apr 22, 2010 at 10:12 PM, Mark McBride mmcbr...@twitter.com wrote: The userid for elliottng appears to be 4696. How did you get the 8467 value? ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 9:52 PM, stumm christop...@stumm.ca wrote: I'm doing a call on users lookup and for some reason it's saying IDs do not exist (for IDs I'd gotten from tweets that I got by doing a search). For example when looking up the user elliottng (who from a quick glance doesn't look like spam). The call I'm making is: http://api.twitter.com/1/users/lookup.json?user_id=8467 Strangely if I do the call with the users screen name, it seems to work. http://api.twitter.com/1/users/lookup.json?screen_name=elliottng Why are these users not showing up when searched by user ID? Thanks, --Christopher -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Mad about lists and cursors... please help
Please stop bumping this thread. We're aware of the issue and its criticality, and are getting a fix out as soon as possible. ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 3:30 AM, fdelpozo iprox...@gmail.com wrote: Please fix this issue soon, We need it. On 20 abr, 17:16, Mark McBride mmcbr...@twitter.com wrote: It hasn't been deployed as far as I know, but it should be out this week. Sent from mobile device On Apr 20, 2010, at 4:38 AM, Zach zcox...@gmail.com wrote: I don't know if this fix for next_cursor always being zero has been deployed or not, but I'm still seeing this bug. A fix for this would be really awesome. On Apr 17, 12:04 pm, Mark McBride mmcbr...@twitter.com wrote: Yes. A fix has been identified, and should be deployed in a few days Sent from mobile device On Apr 17, 2010, at 7:08 AM, Zach zcox...@gmail.com wrote: It's 10 days later and next_cursor on http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-GET-list-member ... is still always 0, even when the user is being followed by far more than 20lists. This is completely broken and prevents 3rd party apps from discovering allliststhat follow a given user. Has anyone at Twitter even looked into this? On Apr 7, 3:43 pm, Mark McBride mmcbr...@twitter.com wrote: Eugene, we're aware of the issue and will take a look at it today. ---Mark http://twitter.com/mccv On Wed, Apr 7, 2010 at 11:09 AM, eugene.man...@gmail.com eugene.man...@gmail.com wrote: I posted this issue to @twitterapi twice, but they ignored it. Dear API group, please address this question. Thank you! On Apr 6, 9:45 am, Spraycode joey.fernan...@gmail.com wrote: Has anyone been able to solve this issue? This is still crippling us. Thanks! On Apr 2, 5:25 am, luisfigo rsoeg...@gmail.com wrote: Having the same problem... Triedhttp://api.twitter.com/1/avinashkaushik/lists/ memberships.xml and get 0 forcursor. This guy is followed by ton oflistsin fact Below is the snapshot of the end result I got... This is screwing up our app right now... . profile_background_image_url http://a1.twimg.com/profile_background_images/79104366/twitter_backgr ... /profile_background_image_url profile_background_tilefalse/profile_background_tile notificationsfalse/notifications geo_enabledfalse/geo_enabled verifiedfalse/verified followingfalse/following statuses_count3208/statuses_count langen/lang contributors_enabledfalse/contributors_enabled /user /list /lists next_cursor0/next_cursor previous_cursor0/previous_cursor /lists_list On Apr 1, 6:00 pm, Diego Rin Martin diego@gmail.com wrote: I think it's a API bug, even in the twitter page the paginator doesn't work as expected, sometimes appears, sometines not, and when appears it makes in a random manner. i'm gettingcursor0 from API, using int or string representation, the bug is in the API that sends thecursor0 randomly. regards, diego. On Thu, Apr 1, 2010 at 2:38 AM, jmathai jmat...@gmail.com wrote: Are you sure you're using the string representation of the cursor instead of the int? The API'scursorexceeds PHP's max integer value (generally). jmathai ~ $ php -r '$x = json_decode (1); echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(false) bool(true) jmathai ~ $ php -r '$x = 1; echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(true) bool(false) On Mar 31, 2:03 am, Diego Rin Martín diego@gmail.co m wrote: Hi there, this is my first post to this group, i'm a spanish developer dealing with twitter api surprises, excuse my poor english, i'will do my best to comunicate nicest. So, to the problem, I'm trying to retrieve thelistsfor a user, via list/membershipsget method, and passingcursoras parameter, I'm having got random results, I explain myself, sometimes I made a request (for user edans, that have a huge amount of pages to paginate) and I get one page, I passcursor-1 and I getcursor0, sometimes I get one page, I passcursor-1 i getcursor 1331431515904087602, then I pass it and I get 0, sometimes I get a random number of pages, but never, never, be able to retrieve the total amount of pages. I use php twitter-async classes to comunicate with API, I thought that it could be the cause of the problem, but using direct curl (via php5- curl extension) calls I'm having the same issues. Same using json or xml. I'm always getting 200 responses, so the call finish in a correct
Re: [twitter-dev] stream api query with both track and follow
This is the correct interpretation. The track limiting is against the total number of messages delivered to your stream, which means follow + track + locations all count against the limit. ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 1:54 PM, Dima Brodsky ddbrod...@gmail.com wrote: Hi I have a question as to the behaviour when one specifies both a 'track' parameter and a 'follow' parameter. From my understanding from the wiki: statuses/filter Returns public statuses that match one or more filter predicates. At least one predicate parameter, follow, locations, or track must be specified. Multiple parameters may be specified which allows most clients to use a single connection to the Streaming API. Placing long parameters in the URL may cause the request to be rejected for excessive URL length. Use a POST request header parameter to avoid long URLs. Is that the parameters are treated as an 'or' clause and thus I would get everything, minus the usual limits, for a particular track predicate and everything for all the users I am following. Is this the correct interpretation. Also, if I was just following a track query and then I add a follow query, will the number of results in my track query go down because some amount is used up by the follow, or are the limits individually placed on track and on follow. Thanks! ttyl Dima -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] stream api query with both track and follow
Small correction: follow is full fidelity and will never be limited. Statuses delivered because of a match on track or locations will count against the same limit. ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 1:57 PM, Mark McBride mmcbr...@twitter.com wrote: This is the correct interpretation. The track limiting is against the total number of messages delivered to your stream, which means follow + track + locations all count against the limit. ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 1:54 PM, Dima Brodsky ddbrod...@gmail.com wrote: Hi I have a question as to the behaviour when one specifies both a 'track' parameter and a 'follow' parameter. From my understanding from the wiki: statuses/filter Returns public statuses that match one or more filter predicates. At least one predicate parameter, follow, locations, or track must be specified. Multiple parameters may be specified which allows most clients to use a single connection to the Streaming API. Placing long parameters in the URL may cause the request to be rejected for excessive URL length. Use a POST request header parameter to avoid long URLs. Is that the parameters are treated as an 'or' clause and thus I would get everything, minus the usual limits, for a particular track predicate and everything for all the users I am following. Is this the correct interpretation. Also, if I was just following a track query and then I add a follow query, will the number of results in my track query go down because some amount is used up by the follow, or are the limits individually placed on track and on follow. Thanks! ttyl Dima -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Mad about lists and cursors... please help
This issue has been fixed. Let me know if it recurs, and I sincerely apologize for the delay Sent from mobile device On Apr 22, 2010, at 9:33 AM, Mark McBride mmcbr...@twitter.com wrote: Please stop bumping this thread. We're aware of the issue and its criticality, and are getting a fix out as soon as possible. ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 3:30 AM, fdelpozo iprox...@gmail.com wrote: Please fix this issue soon, We need it. On 20 abr, 17:16, Mark McBride mmcbr...@twitter.com wrote: It hasn't been deployed as far as I know, but it should be out this week. Sent from mobile device On Apr 20, 2010, at 4:38 AM, Zach zcox...@gmail.com wrote: I don't know if this fix for next_cursor always being zero has been deployed or not, but I'm still seeing this bug. A fix for this would be really awesome. On Apr 17, 12:04 pm, Mark McBride mmcbr...@twitter.com wrote: Yes. A fix has been identified, and should be deployed in a few days Sent from mobile device On Apr 17, 2010, at 7:08 AM, Zach zcox...@gmail.com wrote: It's 10 days later and next_cursor on http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-GET-list-member ... is still always 0, even when the user is being followed by far more than 20lists. This is completely broken and prevents 3rd party apps from discovering allliststhat follow a given user. Has anyone at Twitter even looked into this? On Apr 7, 3:43 pm, Mark McBride mmcbr...@twitter.com wrote: Eugene, we're aware of the issue and will take a look at it today. ---Mark http://twitter.com/mccv On Wed, Apr 7, 2010 at 11:09 AM, eugene.man...@gmail.com eugene.man...@gmail.com wrote: I posted this issue to @twitterapi twice, but they ignored it. Dear API group, please address this question. Thank you! On Apr 6, 9:45 am, Spraycode joey.fernan...@gmail.com wrote: Has anyone been able to solve this issue? This is still crippling us. Thanks! On Apr 2, 5:25 am, luisfigo rsoeg...@gmail.com wrote: Having the same problem... Triedhttp://api.twitter.com/1/avinashkaushik/lists/ memberships.xml and get 0 forcursor. This guy is followed by ton oflistsin fact Below is the snapshot of the end result I got... This is screwing up our app right now... . profile_background_image_url http://a1.twimg.com/profile_background_images/79104366/twitter_backgr ... /profile_background_image_url profile_background_tilefalse/profile_background_tile notificationsfalse/notifications geo_enabledfalse/geo_enabled verifiedfalse/verified followingfalse/following statuses_count3208/statuses_count langen/lang contributors_enabledfalse/contributors_enabled /user /list /lists next_cursor0/next_cursor previous_cursor0/previous_cursor /lists_list On Apr 1, 6:00 pm, Diego Rin Martin diego@gmail.com wrote: I think it's a API bug, even in the twitter page the paginator doesn't work as expected, sometimes appears, sometines not, and when appears it makes in a random manner. i'm gettingcursor0 from API, using int or string representation, the bug is in the API that sends thecursor0 randomly. regards, diego. On Thu, Apr 1, 2010 at 2:38 AM, jmathai jmat...@gmail.com wrote: Are you sure you're using the string representation of the cursor instead of the int? The API'scursorexceeds PHP's max integer value (generally). jmathai ~ $ php -r '$x = json_decode (1); echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(false) bool(true) jmathai ~ $ php -r '$x = 1; echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(true) bool(false) On Mar 31, 2:03 am, Diego Rin Martín diego@gmail.co m wrote: Hi there, this is my first post to this group, i'm a spanish developer dealing with twitter api surprises, excuse my poor english, i'will do my best to comunicate nicest. So, to the problem, I'm trying to retrieve thelistsfor a user, via list/membershipsget method, and passingcursoras parameter, I'm having got random results, I explain myself, sometimes I made a request (for user edans, that have a huge amount of pages to paginate) and I get one page, I passcursor-1 and I getcursor0, sometimes I get one page, I passcursor-1 i getcursor 1331431515904087602, then I pass it and I get 0, sometimes I get a random number of pages, but never, never, be able to retrieve the total amount of pages. I use php twitter-async classes to comunicate with API, I thought that it could be the cause of the problem, but using direct curl (via php5- curl extension) calls I'm having the same issues. Same using json or xml. I'm always
Re: [twitter-dev] users lookup - user missing
The userid for elliottng appears to be 4696. How did you get the 8467 value? ---Mark http://twitter.com/mccv On Thu, Apr 22, 2010 at 9:52 PM, stumm christop...@stumm.ca wrote: I'm doing a call on users lookup and for some reason it's saying IDs do not exist (for IDs I'd gotten from tweets that I got by doing a search). For example when looking up the user elliottng (who from a quick glance doesn't look like spam). The call I'm making is: http://api.twitter.com/1/users/lookup.json?user_id=8467 Strangely if I do the call with the users screen name, it seems to work. http://api.twitter.com/1/users/lookup.json?screen_name=elliottng Why are these users not showing up when searched by user ID? Thanks, --Christopher -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] This account is locked due to too many failed login attempts. Try again in X seconds.
What specific endpoint are you calling? Are you authenticating the call? This is a recent change, and likely indicates that the credentials you're using are invalid. ---Mark http://twitter.com/mccv On Wed, Apr 21, 2010 at 9:27 AM, Joe Taylor iamjoetay...@gmail.com wrote: This account is locked due to too many failed login attempts. Try again in X seconds. Hello, I'm receiving this error for the first time on an application that has been working for almost a year. It only happens when we are searching a profile for to pull up a single users stream. http://www.twitterface.com/tech-news http://skitch.com/kristicolvin/n97ci/twitterface-ungeeked I was wondering if anyone could give me some insight to fix this. Any help is greatly appreciated. -Joe -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: User Stream's API usage
We likely won't send down the unfollows in the short term, for reasons outlined previously. It's not that we won't *ever* do it, but it's delicate. On the user profile changes, that does seem like a good idea. No promises, but I'll look at what we can do. The highest priorities we have right now are 1) Getting the formatting of messages locked down 2) Getting list activity in (lists created/deleted/modified, users added to lists, etc.) ---Mark http://twitter.com/mccv On Wed, Apr 21, 2010 at 1:30 PM, Cameron Kaiser spec...@floodgap.com wrote: Also, unfollows should be treated the same as follows. I know its sad when an unfollow happens, but this is important information too. I disagree. I think unfollows should be totally without penalty, and making them visible/exposed could depending on the situation assign them a very heavy social penalty. Qwitter comes to mind. -- personal: http://www.cameronkaiser.com/ -- Cameron Kaiser * Floodgap Systems * www.floodgap.com * ckai...@floodgap.com -- EH! STEVE! --- -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: This account is locked due to too many failed login attempts. Try again in X seconds.
My guess is this block if($auth) { curl_setopt($ch, CURLOPT_USERPWD, {$this-_authUsername}: {$this-_authPassword}); } Is setting the wrong username/password, and you've locked out that account. Prior to yesterday's patch this call would succeed, but you would have left a potentially unhappy user with a locked out account. Now we tell you you've locked it. Note that the endpoint you're accessing doesn't require access, so you can eliminate the auth setting if you want. ---Mark http://twitter.com/mccv On Wed, Apr 21, 2010 at 6:05 PM, Joe Taylor iamjoetay...@gmail.com wrote: I'm sorry for my ignorance, but I'm think this is what you are asking for. http://twitter.com/statuses/user_timeline/mashable.xml?page=1 ($targetURL) Code: protected function _sendRequest($uri, $auth =TRUE, $method ='GET', $data ='') { $ch = curl_init(); $protocol = ($this-_useSSL) ? 'https' : 'http'; $targetURL = {$protocol}:// . self::API_URI . $uri; curl_setopt($ch, CURLOPT_URL, $targetURL); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:')); if($auth) { curl_setopt($ch, CURLOPT_USERPWD, {$this-_authUsername}: {$this-_authPassword}); } if('POST' == ($method = strtoupper($method))) { curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); } else if('GET' != $method) { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method); } curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, TRUE); curl_setopt($ch, CURLOPT_TIMEOUT, $this-_timeout); $data = curl_exec($ch); $meta = curl_getinfo($ch); curl_close($ch); return new Arc90_Service_Twitter_Response($data, $meta); } $data is returning: This account is locked due to too many failed login attempts. Try again in 3100 seconds. error I hope this is what you were referring to... -Joe On Apr 21, 9:53 am, Mark McBride mmcbr...@twitter.com wrote: What specific endpoint are you calling? Are you authenticating the call? This is a recent change, and likely indicates that the credentials you're using are invalid. ---Mark http://twitter.com/mccv On Wed, Apr 21, 2010 at 9:27 AM, Joe Taylor iamjoetay...@gmail.com wrote: This account is locked due to too many failed login attempts. Try again in X seconds. Hello, I'm receiving this error for the first time on an application that has been working for almost a year. It only happens when we are searching a profile for to pull up a single users stream. http://www.twitterface.com/tech-news http://skitch.com/kristicolvin/n97ci/twitterface-ungeeked I was wondering if anyone could give me some insight to fix this. Any help is greatly appreciated. -Joe -- Subscription settings:http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Mad about lists and cursors... please help
It hasn't been deployed as far as I know, but it should be out this week. Sent from mobile device On Apr 20, 2010, at 4:38 AM, Zach zcox...@gmail.com wrote: I don't know if this fix for next_cursor always being zero has been deployed or not, but I'm still seeing this bug. A fix for this would be really awesome. On Apr 17, 12:04 pm, Mark McBride mmcbr...@twitter.com wrote: Yes. A fix has been identified, and should be deployed in a few days Sent from mobile device On Apr 17, 2010, at 7:08 AM, Zach zcox...@gmail.com wrote: It's 10 days later and next_cursor on http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-GET-list-member ... is still always 0, even when the user is being followed by far more than 20 lists. This is completely broken and prevents 3rd party apps from discovering all lists that follow a given user. Has anyone at Twitter even looked into this? On Apr 7, 3:43 pm, Mark McBride mmcbr...@twitter.com wrote: Eugene, we're aware of the issue and will take a look at it today. ---Mark http://twitter.com/mccv On Wed, Apr 7, 2010 at 11:09 AM, eugene.man...@gmail.com eugene.man...@gmail.com wrote: I posted this issue to @twitterapi twice, but they ignored it. Dear API group, please address this question. Thank you! On Apr 6, 9:45 am, Spraycode joey.fernan...@gmail.com wrote: Has anyone been able to solve this issue? This is still crippling us. Thanks! On Apr 2, 5:25 am, luisfigo rsoeg...@gmail.com wrote: Having the same problem... Triedhttp://api.twitter.com/1/avinashkaushik/lists/ memberships.xml and get 0 forcursor. This guy is followed by ton of lists in fact Below is the snapshot of the end result I got... This is screwing up our app right now... . profile_background_image_url http://a1.twimg.com/profile_background_images/79104366/twitter_backgr ... /profile_background_image_url profile_background_tilefalse/profile_background_tile notificationsfalse/notifications geo_enabledfalse/geo_enabled verifiedfalse/verified followingfalse/following statuses_count3208/statuses_count langen/lang contributors_enabledfalse/contributors_enabled /user /list /lists next_cursor0/next_cursor previous_cursor0/previous_cursor /lists_list On Apr 1, 6:00 pm, Diego Rin Martin diego@gmail.com wrote: I think it's a API bug, even in the twitter page the paginator doesn't work as expected, sometimes appears, sometines not, and when appears it makes in a random manner. i'm gettingcursor0 from API, using int or string representation, the bug is in the API that sends thecursor0 randomly. regards, diego. On Thu, Apr 1, 2010 at 2:38 AM, jmathai jmat...@gmail.com wrote: Are you sure you're using the string representation of the cursor instead of the int? The API'scursorexceeds PHP's max integer value (generally). jmathai ~ $ php -r '$x = json_decode (1); echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(false) bool(true) jmathai ~ $ php -r '$x = 1; echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(true) bool(false) On Mar 31, 2:03 am, Diego Rin Martín diego@gmail.co m wrote: Hi there, this is my first post to this group, i'm a spanish developer dealing with twitter api surprises, excuse my poor english, i'will do my best to comunicate nicest. So, to the problem, I'm trying to retrieve the lists for a user, via list/membershipsget method, and passingcursoras parameter, I'm having got random results, I explain myself, sometimes I made a request (for user edans, that have a huge amount of pages to paginate) and I get one page, I passcursor-1 and I getcursor0, sometimes I get one page, I passcursor-1 i getcursor 1331431515904087602, then I pass it and I get 0, sometimes I get a random number of pages, but never, never, be able to retrieve the total amount of pages. I use php twitter-async classes to comunicate with API, I thought that it could be the cause of the problem, but using direct curl (via php5- curl extension) calls I'm having the same issues. Same using json or xml. I'm always getting 200 responses, so the call finish in a correct way. any clue? I'm turning mad. Thanks in advance. diego. -- To unsubscribe, reply using remove me as the subject.
[twitter-dev] Logical AND supported in streaming API filter endpoint
To date the streaming API has only supported logical OR in track keywords (http://apiwiki.twitter.com/Streaming-API-Documentation#track). Today we're happy to announce that we support logical ANDing in production as well. The track parameter is treated as a series of phrases. Phrases are separated by commas. Words within phrases are delimited by spaces. A tweet matches if any phrase matches. A phrase matches if all of the words are present in the tweet. (e.g. 'the twitter' is 'the' AND 'twitter', and 'the,twitter' is 'the' OR 'twitter'.). Some examples... 1) twitter api,twitter streaming (http://stream.twitter.com/1/statuses/filter.xml?track=twitter+api%2Ctwitter+streaming) will match the tweets The Twitter API is awesome and The twitter streaming deal is fast, but not I'm new to Twitter 2) The same approach to dealing with case, punctuation, @replies and hashtags still applies. So chirp search,chirp streaming (http://stream.twitter.com/1statuses/filter.xml?track=chirp+search%2Cchirp+streaming) will match Listening to the @chirp talk on search, I'm at Chirp talking about search!, and loving this search talk #chirp This should dramatically close the gap on what you can do with the search API but not with streaming, and also reduce the amount of data users have to consumer to match on multiple keywords. Comments/questions welcome as always. ---Mark http://twitter.com/mccv -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
[twitter-dev] Statuses and staleness
We currently have a number of open defects regarding the staleness of various portions of statuses, such as the embedded user objects (e.g. 1378, 1183). We store the entire rendered status, including the user object, and expire it all together as a unit. Therefore, when a user changes his or her information, we do not correctly expire all the statuses and embedded statuses as that is prohibitively expensive. So, this means that the user object rendered in the status is the data as of the time the status for the particular user and format was pulled into cache. The bad news doesn't stop there. The following and notification fields reflect the perspective of the user that caused this object to be pulled into cache -- its probably wrong for you. This is obviously not good. The solution we're working on right now is a substantial rewrite of the way we render tweets. No new fields will be added, and resilient parsers should see little to no effect. The bad news is that the the ordering of attributes in payloads will change, and will likely break some less resilient parsing code in some application. The worse news is that supporting correct values for the following and notification fields in embedded user objects is likely infeasible given current capacity. We will be setting these to false when rendered embedded in a status. However users/show will still show correct values. To ease the transition we will be providing a preview that will use the new renderer before we push it to production, and we'd love help testing it under normal Twitter load. We'll provide details when we have them, but you will likely be able to access the new renderer by setting a header in your HTTP requests (or, potentially using a different API version in URIs). We'll let it sit in preview for a while, gather feedback, and then roll it out to production. If you have questions/concerns please let us know! ---Mark http://twitter.com/mccv -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Mad about lists and cursors... please help
Yes. A fix has been identified, and should be deployed in a few days Sent from mobile device On Apr 17, 2010, at 7:08 AM, Zach zcox...@gmail.com wrote: It's 10 days later and next_cursor on http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-GET-list-memberships is still always 0, even when the user is being followed by far more than 20 lists. This is completely broken and prevents 3rd party apps from discovering all lists that follow a given user. Has anyone at Twitter even looked into this? On Apr 7, 3:43 pm, Mark McBride mmcbr...@twitter.com wrote: Eugene, we're aware of the issue and will take a look at it today. ---Mark http://twitter.com/mccv On Wed, Apr 7, 2010 at 11:09 AM, eugene.man...@gmail.com eugene.man...@gmail.com wrote: I posted this issue to @twitterapi twice, but they ignored it. Dear API group, please address this question. Thank you! On Apr 6, 9:45 am, Spraycode joey.fernan...@gmail.com wrote: Has anyone been able to solve this issue? This is still crippling us. Thanks! On Apr 2, 5:25 am, luisfigo rsoeg...@gmail.com wrote: Having the same problem... Triedhttp://api.twitter.com/1/avinashkaushik/lists/memberships.xml and get 0 for cursor. This guy is followed by ton of lists in fact Below is the snapshot of the end result I got... This is screwing up our app right now... . profile_background_image_url http://a1.twimg.com/profile_background_images/79104366/twitter_backgr ... /profile_background_image_url profile_background_tilefalse/profile_background_tile notificationsfalse/notifications geo_enabledfalse/geo_enabled verifiedfalse/verified followingfalse/following statuses_count3208/statuses_count langen/lang contributors_enabledfalse/contributors_enabled /user /list /lists next_cursor0/next_cursor previous_cursor0/previous_cursor /lists_list On Apr 1, 6:00 pm, Diego Rin Martin diego@gmail.com wrote: I think it's a API bug, even in the twitter page the paginator doesn't work as expected, sometimes appears, sometines not, and when appears it makes in a random manner. i'm getting cursor 0 from API, using int or string representation, the bug is in the API that sends the cursor 0 randomly. regards, diego. On Thu, Apr 1, 2010 at 2:38 AM, jmathai jmat...@gmail.com wrote: Are you sure you're using the string representation of the cursor instead of the int? The API's cursor exceeds PHP's max integer value (generally). jmathai ~ $ php -r '$x = json_decode (1); echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(false) bool(true) jmathai ~ $ php -r '$x = 1; echo $x; echo \n; var_dump ($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(true) bool(false) On Mar 31, 2:03 am, Diego Rin Martín diego@gmail.co m wrote: Hi there, this is my first post to this group, i'm a spanish developer dealing with twitter api surprises, excuse my poor english, i'will do my best to comunicate nicest. So, to the problem, I'm trying to retrieve the lists for a user, via list/membershipsget method, and passing cursor as parameter, I'm having got random results, I explain myself, sometimes I made a request (for user edans, that have a huge amount of pages to paginate) and I get one page, I pass cursor -1 and I get cursor 0, sometimes I get one page, I pass cursor -1 i get cursor 1331431515904087602, then I pass it and I get 0, sometimes I get a random number of pages, but never, never, be able to retrieve the total amount of pages. I use php twitter-async classes to comunicate with API, I thought that it could be the cause of the problem, but using direct curl (via php5- curl extension) calls I'm having the same issues. Same using json or xml. I'm always getting 200 responses, so the call finish in a correct way. any clue? I'm turning mad. Thanks in advance. diego. -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] How to parse the output of Twitter Search API Method: search?
Atom is an XML dialect, so the approach you're using should work fine ---Mark http://twitter.com/mccv On Fri, Apr 16, 2010 at 5:08 AM, Dushyant dushyantaror...@gmail.com wrote: I am using the following method http://apiwiki.twitter.com/Twitter-Search-API-Method%3A-search Now the output formats are json and atom. I want to parse the search results using PHP. Till now I have been following the following approach to parse xml outputs. $url = 'http://api.twitter.com/1/friendships/show.xml? source_id=xtarget_id=y'; $ch = $this-initialize_curl($url,'none',false); // own function $response = curl_exec($ch); curl_close($ch); $xml = simplexml_load_string($response); Can I still use the same approach. Kindly guide me in the right direction. -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Streaming API track vs. Search results
If you can duplicate this, can you send the exact text, tweet IDs and times of the runs? Latency on the streaming API should be better than it is in search (they're both pretty fast), so having the streaming API lag search is surprising. ---Mark http://twitter.com/mccv On Fri, Apr 16, 2010 at 8:55 AM, Mad Euchre mad.ukrain...@gmail.com wrote: I wanted to test if my program is getting all the tweets it should. My simple test was track=Palin and I timed it for exactly 5 minutes. I got 3 tweets and several replies to. Then I immediately ran this: http://search.twitter.com/search.atom?q=Palin and looked for tweets in the last 5 minutes. There were 7 results for the last 5 minutes. The 3 I got from the stream matched the oldest of the 7, so there were 4 newer that the steam didn't pick up. I don't mind if there is a slight delay and the missing 4 would eventually show up. How else can I tell if I'm getting all the tweets that I'm supposed to from the stream? Thanks, Peter -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Update on Missing tweets from Profile page issue
Hrm. Can you open a ticket at twitter.com/help, and let me know the ID? Is anybody else seeing this? ---Mark http://twitter.com/mccv On Thu, Apr 15, 2010 at 6:39 PM, Adriano adriano@gmail.com wrote: Sorry, but I'm still with that issue. Can anyone check that? Greetings! On Apr 4, 11:30 pm, Adriano R. adriano@gmail.com wrote: Hello, Anyone know what might be happening in this issue? Greetings! 2010/3/31 Adriano R. adriano@gmail.com Mark, My twitter is @adrossetto I have some tweets between March 13rd and March 28th and they doesn't appear in my profile, but they appear in my home. Thanks! 2010/3/31 Mark McBride mmcbr...@twitter.com This issue was fixed. We think. If it's still occurring let us know. ---Mark http://twitter.com/mccv On Tue, Mar 30, 2010 at 7:05 PM, Adriano adriano@gmail.com wrote: I still have that problem: http://status.twitter.com/post/475631917/update-on-missing-tweets-fro... Is there any solution for that issue? Greetings! -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: How to parse the output of Twitter Search API Method: search?
My suggestion is to use curl, take a look at the output, and reverse engineer that. If you want a more formal approach, you can look at the Atom RelaxNG specification here http://atompub.org/2005/08/17/atom.rnc, but search results will have some additional customization on top of that. ---Mark http://twitter.com/mccv On Fri, Apr 16, 2010 at 11:29 AM, Dushyant dushyantaror...@gmail.comwrote: How do I find the hierarchical structure of the search reply? On Apr 16, 8:55 pm, Mark McBride mmcbr...@twitter.com wrote: Atom is an XML dialect, so the approach you're using should work fine ---Mark http://twitter.com/mccv On Fri, Apr 16, 2010 at 5:08 AM, Dushyant dushyantaror...@gmail.com wrote: I am using the following method http://apiwiki.twitter.com/Twitter-Search-API-Method%3A-search Now the output formats are json and atom. I want to parse the search results using PHP. Till now I have been following the following approach to parse xml outputs. $url = 'http://api.twitter.com/1/friendships/show.xml? source_id=xtarget_id=y'; $ch = $this-initialize_curl($url,'none',false); // own function $response = curl_exec($ch); curl_close($ch); $xml = simplexml_load_string($response); Can I still use the same approach. Kindly guide me in the right direction. -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Recommended ways to demultiplex the search stream with thousands of searches
One idea off the top of my head: write tweets to something like Lucene, and then rely on its more sophisticated query engine to pull tweets. You'll sacrifice some latency here of course. ---Mark http://twitter.com/mccv On Fri, Apr 16, 2010 at 3:47 PM, Jeffrey Greenberg jeffreygreenb...@gmail.com wrote: So I'm looking at the streaming api (track), and I've got thousands of searches. ( http://tweettronics.com ) I mainly need it to deal with terms that are very high volume, and to deal search api rate limiting. The main difficulty I'm thinking about is the best way to de-multiplex the stream back into the individual searches I'm trying to accomplish. 1. How do you handle if the searches are more complex than single terms, but a boolean expression... Do you convert the boolean into something like regex, and then run that regex on every tweet... So if I have several thousand regexs and thousands of tweets, that's a huge amount of processing just to demultiplex... But is that the way to go? 2 And if the search is just a simple expression, do folks simply demultiplex by doing a string search for each word in the search for every received tweet... like above? I'm looking for recommended ways to demultiplex the search stream... Thanks, jeffrey greenberg -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] User Streams Code Samples
Note that you're getting the follows of all your friends. Not just you. So if you follow 100 people, you'll get 100x 'normal' follow activity. ---Mark http://twitter.com/mccv On Thu, Apr 15, 2010 at 1:36 PM, John Kalucki j...@twitter.com wrote: Personally, I only consume Twitter via curl and streams. Check out Ryan King's (et. al. I think half of eng has contributed into it by now) Earlybird. It's up on the Git Hubs. -John Kalucki http://twitter.com/jkalucki Infrastructure, Twitter Inc. On Thu, Apr 15, 2010 at 12:23 PM, Jesse Stay jesses...@gmail.com wrote: Anyone have any code examples of a working integration of User Streams. When I tail the user.js, I get a constant stream of data for my user. I know I'm not getting that many follows. Curious if I'm querying it the right way. I'd love to see some examples. Jesse -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] User Stream's API usage
Some sample APIs... curl -uyouruser:yourpass http://chirpstream.twitter.com/2b/user.jsohttp://chirpstream.twitter.com/2b/user.json n Will give you a stream of your home timeline, social activity from your friends, and direct messages. curl -uyouruser:yourpass http://chirpstream.twitter.com/2b/user.jsohttp://chirpstream.twitter.com/2b/user.json n?track=#chirp Will give you all of the above, plus any tweets matching #chirp Does that clear it up? If not, I'm currently near The Coop. ---Mark http://twitter.com/mccv On Wed, Apr 14, 2010 at 6:37 PM, Kovas Boguts kovas.bog...@gmail.comwrote: Hi, Is there any description of how to use this? I don't understand how to use track with this or what is generally available for hack day. Thanks! On Apr 14, 2010, at 4:17 PM, John Kalucki j...@twitter.com wrote: Email me your account name. You are in, but not getting data. Also, is this account following anyone? Typos by iPhone. On Apr 14, 2010, at 4:11 PM, Jud jvale...@gmail.com wrote: I'm in the chrip conference IP address range, but http://chirpstream.twitter.com/2b/user.json usage isn't clear. - the follow predicate in a POST doesn't work (should it?) - track as a predicate gets accepted, but no data comes through (I get a single '{friends:[]}', but that's it) - am I supposed to be tracking userids or names or keywords? is the resource simply not turned on until later at/on the hackathon's network? -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] Re: Twitter lists fails
Correct. We've actually identified the issue, are working on a fix and will deploy as soon as possible. Unfortunately that probably means early next week. ---Mark http://twitter.com/mccv On Mon, Apr 12, 2010 at 2:00 PM, Raffi Krikorian ra...@twitter.com wrote: I believe we confirmed this - we're looking into it. On Apr 12, 2010, at 3:49 PM, Spraycode joey.fernan...@gmail.com wrote: We are seeing the same issue with list cursors not working and have also reported it and heard nothing back. Very frustrating since we've done a lot of work to properly support lists in our App. Would love it if someone at Twitter could give us an idea of when this might be fixed? On Apr 12, 8:49 am, fdelpozo iprox...@gmail.com wrote: Sorry my english, this is an automatic Google Translate: For at least 2 weeks and stopped working the lists of Twitter. El fallo está a la hora de ver la lista de listas (valga la redundancia). The ruling is the time to see the list of lists (forgive the redundancy). Fail both the API and the Twitter interface. Twitter lists are recovered through lists 20 pages each, at the end of each page, Twitter returns a cursor that will be used to request the next and so on until you run out (cursor = 0).Twitter Now only return the 1st page, nothing more, but it does randomly, sometimes returns a page more. If you are over 20 lists you can check yourself on Twitter.com, shows you there is no page 20 for more. We have reported to support the API for days but has not yet been solved. If anyone knows anything about this and want to share is appreciated. -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] Re: Upcoming changes to the way status IDs are sequenced
Thank you for the feedback. It's great to hear about the variety of use cases people have for the API, and in particular all the different ways people are using IDs. To alleviate some of the concerns raised in this thread we thought it would be useful to give more details about how we plan to generate IDs 1) IDs are still 64-bit integers. This should minimize any migration pains. 2) You can still sort on ID. Within a few millieconds you may get out of order results, but for most use cases this shouldn't be an issue. 3) since_id will still work (within the caveats given above). 4) We will provide a way to backfill from the streaming API. 5) You cannot use the generated ID to reverse engineer tweet velocity. Note that you can still use the streaming API to determine the rate of public statuses. Additional items of interest 1) At some point we will likely start using this as an ID for direct messages too 2) We will almost certainly open source the ID generation code, probably before we actually cut over to using it. 3) We STRONGLY suggest that you treat IDs as roughly sorted (roughly being within a few ms buckets), opaque 64-bit integers. We may need to change the scheme again at some point in the future, and want to minimize migration pains should we need to do this. Hopefully this puts you more at ease with the changes we're making. If it raises new concerns, please let us know! ---Mark http://twitter.com/mccv On Mon, Apr 5, 2010 at 4:18 PM, M. Edward (Ed) Borasky zn...@comcast.netwrote: On 04/05/2010 12:55 AM, Tim Haines wrote: This made me laugh. Hard. On Fri, Apr 2, 2010 at 6:47 AM, Dewald Pretorius dpr...@gmail.com wrote: Mark, It's extremely important where you have two bots that reply to each others' tweets. With incorrectly sorted tweets, you get conversations that look completely unnatural. On Apr 1, 1:39 pm, Mark McBride mmcbr...@twitter.com wrote: Just out of curiosity, what applications are you building that require sub-second sorting resolution for tweets? Yeah - my bot laughed too ;-) -- M. Edward (Ed) Borasky borasky-research.net/m-edward-ed-borasky A mathematician is a device for turning coffee into theorems. ~ Paul Erdős -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] Re: Upcoming changes to the way status IDs are sequenced
It's a possibility, but by no means a probability. Note that you can mitigate this by using the newest tweet that is outside your danger zone. For example in a sequence of tweets t1, t2 ... ti ... tn with creation times c1, c2 ... ci ... cn and a comfort threshold e you could use since_id from the latest ti such that c1 - ci e. ---Mark http://twitter.com/mccv On Thu, Apr 8, 2010 at 4:27 PM, Naveen knig...@gmail.com wrote: This was my initial concern with the randomly generated ids that I brought up, though I think Brian described it better than I. It simply seems very likely that when using since_id to populate newer tweets for the user, that some tweets will never be seen, because the since_id of the last message received will be larger than one generated 1ms later. With the random generation of ids, I can see two way guarantee delivery of all tweets in a users timeline 1. Page forwards and backwards to ensure no tweets generated at or near the same time as the newest one did not receive a lower id. This will be very expensive for a mobile client not to mention complicate any refresh algorithms significantly. 2. Given that we know how IDs are generated (i.e. which bits represent the time) we can simply over request by decrementing the since_id time bits, by a second or two and filter out duplicates. (again, not really ideal for mobile clients where battery life is an issue, plus it then makes the implementation very dependent on twitters id format remaining stable) Please anyone explain if Brian and I are misinterpreting this as a very real possibility of never displaying some tweets in a time line, without changing how we request data from twitter (i.e. since_id doesn't break) --Naveen Ayyagari @knight9 @SocialScope On Apr 8, 7:01 pm, Brian Smith br...@briansmith.org wrote: What does “within the caveats given above” mean? Either since_id will work or it won’t. It seems to me that if IDs are only in a “rough” order, since_id won’t work—in particular, there is a possibility that paging through tweets using since_id will completely skip over some tweets. My concern is that, since tweets will not be serialized at the time they are written, there will be a race condition between me making a request and users posting new statuses. That is, I could get a response with the largest id in the response being X that gets evaluated just before a tweet (X-1) has been saved in the database; If so, when I issue a request with since_id=X, my program will never see the newer tweet (X-1). Are you going to change the implementation of the timeline methods so that they never return a tweet with ID X until all nodes in the cluster guarantee that they won’t create a new tweet with an ID less than X? I implement the following logic: 1. Let LATEST start out as the earliest tweet available in the user’s timeline. 2. Make a request with since_id={LATEST}, which returns a set of tweets T. 3. If T is empty then stop. 4. Let LATEST= max({ id(t), for all t in T}). 5. Goto 2. Will I be guaranteed not to skip over any tweets in the timeline using this logic? If not, what do I need to do to ensure I get them all? Thanks, Brian From: twitter-development-talk@googlegroups.com [mailto: twitter-development-t...@googlegroups.com] On Behalf Of Mark McBride Sent: Thursday, April 08, 2010 5:10 PM To: twitter-development-talk@googlegroups.com Subject: Re: [twitter-dev] Re: Upcoming changes to the way status IDs are sequenced Thank you for the feedback. It's great to hear about the variety of use cases people have for the API, and in particular all the different ways people are using IDs. To alleviate some of the concerns raised in this thread we thought it would be useful to give more details about how we plan to generate IDs 1) IDs are still 64-bit integers. This should minimize any migration pains. 2) You can still sort on ID. Within a few millieconds you may get out of order results, but for most use cases this shouldn't be an issue. 3) since_id will still work (within the caveats given above). 4) We will provide a way to backfill from the streaming API. 5) You cannot use the generated ID to reverse engineer tweet velocity. Note that you can still use the streaming API to determine the rate of public statuses. Additional items of interest 1) At some point we will likely start using this as an ID for direct messages too 2) We will almost certainly open source the ID generation code, probably before we actually cut over to using it. 3) We STRONGLY suggest that you treat IDs as roughly sorted (roughly being within a few ms buckets), opaque 64-bit integers. We may need to change the scheme again at some point in the future, and want to minimize migration pains should we need to do this. Hopefully this puts you more at ease with the changes we're
Re: [twitter-dev] I think I know why I'm missing from Streaming locations filter
This should be fixed now. Tweets tagged with a place should be correctly dispatched to geohose clients. ---Mark http://twitter.com/mccv On Fri, Apr 2, 2010 at 10:51 PM, M. Edward (Ed) Borasky zn...@comcast.netwrote: On 04/02/2010 09:37 PM, Mark McBride wrote: You can file an issue, but this is very nearly fixed. The update does collision detection on the bounding box for a place. This means that we may overdeliver (you may get a tweet that isn't in the place, but is within its bounding box). If you want absolute collision detection with a place you can run an additional check on the client. We think this is a reasonable balance between processing time consumed on our side and on the client side. I want as many tweets in or near the bounding box as possible, including my own. ;-) The issue is that my tweets are coming from inside the bounding box and aren't showing up in Streaming. So if it's very nearly fixed, I'll just wait. ;-) -- M. Edward (Ed) Borasky borasky-research.net/m-edward-ed-borasky A mathematician is a device for turning coffee into theorems. ~ Paul Erdős -- Subscription settings: http://groups.google.com/group/twitter-development-talk/subscribe?hl=en
Re: [twitter-dev] Re: Mad about lists and cursors... please help
Eugene, we're aware of the issue and will take a look at it today. ---Mark http://twitter.com/mccv On Wed, Apr 7, 2010 at 11:09 AM, eugene.man...@gmail.com eugene.man...@gmail.com wrote: I posted this issue to @twitterapi twice, but they ignored it. Dear API group, please address this question. Thank you! On Apr 6, 9:45 am, Spraycode joey.fernan...@gmail.com wrote: Has anyone been able to solve this issue? This is still crippling us. Thanks! On Apr 2, 5:25 am, luisfigo rsoeg...@gmail.com wrote: Having the same problem... Triedhttp://api.twitter.com/1/avinashkaushik/lists/memberships.xml and get 0 for cursor. This guy is followed by ton of lists in fact Below is the snapshot of the end result I got... This is screwing up our app right now... . profile_background_image_url http://a1.twimg.com/profile_background_images/79104366/twitter_backgr... /profile_background_image_url profile_background_tilefalse/profile_background_tile notificationsfalse/notifications geo_enabledfalse/geo_enabled verifiedfalse/verified followingfalse/following statuses_count3208/statuses_count langen/lang contributors_enabledfalse/contributors_enabled /user /list /lists next_cursor0/next_cursor previous_cursor0/previous_cursor /lists_list On Apr 1, 6:00 pm, Diego Rin Martin diego@gmail.com wrote: I think it's a API bug, even in the twitter page the paginator doesn't work as expected, sometimes appears, sometines not, and when appears it makes in a random manner. i'm getting cursor 0 from API, using int or string representation, the bug is in the API that sends the cursor 0 randomly. regards, diego. On Thu, Apr 1, 2010 at 2:38 AM, jmathai jmat...@gmail.com wrote: Are you sure you're using the string representation of the cursor instead of the int? The API's cursor exceeds PHP's max integer value (generally). jmathai ~ $ php -r '$x = json_decode(1); echo $x; echo \n; var_dump($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(false) bool(true) jmathai ~ $ php -r '$x = 1; echo $x; echo \n; var_dump($x===1); var_dump($x===1.111E+52);' 1.111E+52 bool(true) bool(false) On Mar 31, 2:03 am, Diego Rin Martín diego@gmail.com wrote: Hi there, this is my first post to this group, i'm a spanish developer dealing with twitter api surprises, excuse my poor english, i'will do my best to comunicate nicest. So, to the problem, I'm trying to retrieve the lists for a user, via list/membershipsget method, and passing cursor as parameter, I'm having got random results, I explain myself, sometimes I made a request (for user edans, that have a huge amount of pages to paginate) and I get one page, I pass cursor -1 and I get cursor 0, sometimes I get one page, I pass cursor -1 i get cursor 1331431515904087602, then I pass it and I get 0, sometimes I get a random number of pages, but never, never, be able to retrieve the total amount of pages. I use php twitter-async classes to comunicate with API, I thought that it could be the cause of the problem, but using direct curl (via php5- curl extension) calls I'm having the same issues. Same using json or xml. I'm always getting 200 responses, so the call finish in a correct way. any clue? I'm turning mad. Thanks in advance. diego. -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] I think I know why I'm missing from Streaming locations filter
You can file an issue, but this is very nearly fixed. The update does collision detection on the bounding box for a place. This means that we may overdeliver (you may get a tweet that isn't in the place, but is within its bounding box). If you want absolute collision detection with a place you can run an additional check on the client. We think this is a reasonable balance between processing time consumed on our side and on the client side. ---Mark http://twitter.com/mccv On Fri, Apr 2, 2010 at 8:06 PM, M. Edward (Ed) Borasky zn...@comcast.netwrote: I've got a Streaming API collector going, collecting tweets from the Portland, Oregon area. For those wishing to do likewise, the bounding boxes are 'locations=-123.2,45.2,-122.2,45.75'. I noticed a few days ago that, even though I have Location turned on for my tweets, and they are getting tagged with my location, they weren't showing up in the Streaming collector. I think I see what's happening now. The tweets that are showing up in the collector have the coordinates attribute set with a Point type. I think most of them are getting set by Foursquare and not something in Twitter. My tweets, though tagged in Twitter with a place attribute, have a null coordinates attribute. I'm guessing I should file this as an issue. I would think, though it's obviously a bit more work, that a locations filter should include all tweets tagged with a place if that place is inside the bounding boxes. I have no strong opinions on the definition of inside, though. Should it be any part of the place, all of the place, or the centroid of the place? Maybe a quick hack would be to stuff the centroid of the place into the coordinates attribute. ;-) -- M. Edward (Ed) Borasky borasky-research.net/m-edward-ed-borasky A mathematician is a device for turning coffee into theorems. ~ Paul Erdős
Re: [twitter-dev] Re: Upcoming changes to the way status IDs are sequenced
Just out of curiosity, what applications are you building that require sub-second sorting resolution for tweets? ---Mark http://twitter.com/mccv On Wed, Mar 31, 2010 at 11:01 PM, Aki yoru.fuku...@gmail.com wrote: It actually makes sense to use tweet ID to sort tweets, because timestamp is not a valid source of information for accurate sorting. It is a very common case to have multiple tweets posted at the exact same second, and it is not possible to reproduce the correct ordering of tweets on the client side. This can be improved by having better precision for timestamp (maybe milliseconds), but it is still possible to get tweets posted at the exact same milliseconds (although it is very rare). If Twitter really needs to change the tweet ID scheme, I think better solution for sorting is required to be provided through API. On Mar 27, 7:41 am, Taylor Singletary taylorsinglet...@twitter.com wrote: Hi Developers, It's no secret that Twitter is growing exponentially. The tweets keep coming with ever increasing velocity, thanks in large part to your great applications. Twitter has adapted to the increasing number of tweets in ways that have affected you in the past: We moved from 32 bit unsigned integers to 64-bit unsigned integers for status IDs some time ago. You all weathered that storm with ease. The tweetapoclypse was averted, and the tweets kept flowing. Now we're reaching the scalability limit of our current tweet ID generation scheme. Unlike the previous tweet ID migrations, the solution to the current issue is significantly different. However, in most cases the new approach we will take will not result in any noticeable differences to you the developer or your users. We are planning to replace our current sequential tweet ID generation routine with a simple, more scalable solution. IDs will still be 64-bit unsigned integers. However, this new solution is no longer guaranteed to generate sequential IDs. Instead IDs will be derived based on time: the most significant bits being sourced from a timestamp and the least significant bits will be effectively random. Please don't depend on the exact format of the ID. As our infrastructure needs evolve, we might need to tweak the generation algorithm again. If you've been trying to divine meaning from status IDs aside from their role as a primary key, you won't be able to anymore. Likewise for usage of IDs in mathematical operations -- for instance, subtracting two status IDs to determine the number of tweets in between will no longer be possible. For the majority of applications we think this scheme switch will be a non-event. Before implementing these changes, we'd like to know if your applications currently depend on the sequential nature of IDs. Do you depend on the density of the tweet sequence being constant? Are you trying to analyze the IDs as anything other than opaque, ordered identifiers? Aside for guaranteed sequential tweet ID ordering, what APIs can we provide you to accomplish your goals? Taylor Singletary Developer Advocate, Twitterhttp://twitter.com/episod -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] Re: Streaming API running dry again?
Are newlines (the ones that come every 30 seconds) still coming through, or no data at all? ---Mark http://twitter.com/mccv On Thu, Apr 1, 2010 at 4:36 PM, stephane stephane.philipa...@gmail.comwrote: Yes, we just experienced the same issue today... twice too... @sphilipakis http://www.twazzup.com On Apr 1, 3:46 pm, Chad Etzel jazzyc...@gmail.com wrote: Hi all, I am using the filter stream, and twice in the last 24 hour period the stream has run dry... the connection remains open but no tweets arrive. If I manually kill the connection and reconnect everything works properly again (so I don't think my account somehow got banned). I know this issue popped up and was squashed not too long ago, but is anyone else experiencing this again recently? -Chad -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] Re: Streaming API running dry again?
This appears to have been a load balancing issue that we just resolved. Let us know if this recurs. ---Mark http://twitter.com/mccv On Thu, Apr 1, 2010 at 4:46 PM, Mark McBride mmcbr...@twitter.com wrote: Are newlines (the ones that come every 30 seconds) still coming through, or no data at all? ---Mark http://twitter.com/mccv On Thu, Apr 1, 2010 at 4:36 PM, stephane stephane.philipa...@gmail.comwrote: Yes, we just experienced the same issue today... twice too... @sphilipakis http://www.twazzup.com On Apr 1, 3:46 pm, Chad Etzel jazzyc...@gmail.com wrote: Hi all, I am using the filter stream, and twice in the last 24 hour period the stream has run dry... the connection remains open but no tweets arrive. If I manually kill the connection and reconnect everything works properly again (so I don't think my account somehow got banned). I know this issue popped up and was squashed not too long ago, but is anyone else experiencing this again recently? -Chad -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] Update on Missing tweets from Profile page issue
This issue was fixed. We think. If it's still occurring let us know. ---Mark http://twitter.com/mccv On Tue, Mar 30, 2010 at 7:05 PM, Adriano adriano@gmail.com wrote: I still have that problem: http://status.twitter.com/post/475631917/update-on-missing-tweets-from-profile-page-issue Is there any solution for that issue? Greetings! -- To unsubscribe, reply using remove me as the subject.
Re: [twitter-dev] GUIDs?
UUIDs are 128 bit integers. Moving from 64 to 128 bits is likely far more disruptive than the proposed scheme. ---Mark http://twitter.com/mccv On Fri, Mar 26, 2010 at 2:01 PM, Nigel Legg nigel.l...@gmail.com wrote: If the since_id api calls will work against this, it might be a solution... On 26 March 2010 20:58, Donny V. don...@gmail.com wrote: Why don't you just use GUIDs as your id and then just add a timedate attribute stamp and call it a day. That would give you a unique id and also give your tweets an order. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] the pushing speed for the Twitter's streaming API
You are probably getting limit messages when searching for those terms. The filter endpoints will return all tweets up to a predefined percentage of the total tweet stream. ---Mark http://twitter.com/mccv On Fri, Mar 26, 2010 at 3:49 PM, Lawrence lipeng...@gmail.com wrote: HI Everyone, I am wondering if there is a rate limiting for the pushing speed for the Twitter's streaming API? I first use the Twitter searching API to search a and it returns 2300 tweets per min to me. And then I tested o, it also returned me around 2400 tweets per min. Now, I tested track = a, b. Theoretically, the streaming API should returns me more than 4000 tweets per min. However, I found the streaming API still only returns me about 2400 tweets! My downloading speed is 16.68Mb/s So it seems that I still have enough spare bandwidth, but the Twitter just does not push more data to me. Is this true? Are there any internal limitation has been done by Twitter? Cheers Lawrence To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: the pushing speed for the Twitter's streaming API
They will be discarded. It is very unlikely that any single track term will put you over the limit however. ---Mark http://twitter.com/mccv On Fri, Mar 26, 2010 at 4:17 PM, Lawrence lipeng...@gmail.com wrote: Hi Mark, Thank you for your reply, but could you explain more? For example, if I search a very hot key word (not a, or o ), and the tweet flow is 5000 tweets/min. Does this mean that I only be able to receive 2000tweets/min because the restriction? what about the other 3000 tweets? Will they be delayed or just discarded? Cheers Lawrence On Mar 26, 3:57 pm, Mark McBride mmcbr...@twitter.com wrote: You are probably getting limit messages when searching for those terms. The filter endpoints will return all tweets up to a predefined percentage of the total tweet stream. ---Mark http://twitter.com/mccv On Fri, Mar 26, 2010 at 3:49 PM, Lawrence lipeng...@gmail.com wrote: HI Everyone, I am wondering if there is a rate limiting for the pushing speed for the Twitter's streaming API? I first use the Twitter searching API to search a and it returns 2300 tweets per min to me. And then I tested o, it also returned me around 2400 tweets per min. Now, I tested track = a, b. Theoretically, the streaming API should returns me more than 4000 tweets per min. However, I found the streaming API still only returns me about 2400 tweets! My downloading speed is 16.68Mb/s So it seems that I still have enough spare bandwidth, but the Twitter just does not push more data to me. Is this true? Are there any internal limitation has been done by Twitter? Cheers Lawrence To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] stream api---count parameter
For the streaming API, the count parameter indicates how many statuses back in history you want streamed before switching over to the live stream. This isn't supported on any of the default access levels that I know of. When you say the download speed is too slow, what do you mean? That you want more statuses coming over the wire? ---Mark http://twitter.com/mccv On Thu, Mar 25, 2010 at 2:29 AM, erichou yhl7585...@gmail.com wrote: Dear Experts, Well I have been developing Twitter applicaiton,but encounter some difficult. I don't know how to use the count parameter, and what is the use of count parameter? Now in my application, I use sample api download status, and download 20 status per second, But the download speed is too slow. If I want to improve the speed, what can i do? I don't know wheather I can improve the speed whenI use the count parameter,if can, how to use? To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Follow #topics
The streaming API's filter endpoint may be what you're looking for http://apiwiki.twitter.com/Streaming-API-Documentation#statuses/filter ---Mark http://twitter.com/mccv On Tue, Mar 23, 2010 at 5:27 AM, sem evers sem_...@hotmail.com wrote: Dear reader, Is it possible to follow #topics, like how many tweets contain #twitter for example and who tweeted the tweet containing #twitter? Sorry for my english Kind Regards, Sem Evers To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Is there a way to to make the streaming API track parameter be case sensitive?
There is currently no way to make this case sensitive. You can always post-process on your end. ---Mark http://twitter.com/mccv On Tue, Mar 23, 2010 at 9:19 AM, Mad Euchre mad.ukrain...@gmail.com wrote: It appears it not. I have track=PASS and I get back Passing lane, Forward Pass, Pass the food, etc. Thanks To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: 403 on duplicate post - when?
Yes, that's a hole in the current logic. I'll work on getting the N-n case handled. ---Mark http://twitter.com/mccv On Tue, Mar 23, 2010 at 6:12 AM, Dewald Pretorius dpr...@gmail.com wrote: Mark, Here is what appears to happen. When you try and duplicate the newest tweet (N), you get the expected new behavior with a 403 and Status is a duplicate. When you try and duplicate tweet N-1, you get the old behavior with 200 OK and the details of tweet N. I have not tested tweet N-2, N-3, etc. On Mar 22, 6:27 pm, Mark McBride mmcbr...@twitter.com wrote: I just tried it and got a 403. Can you give me a screen name you're using, the data posted, and the data returned? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 2:14 PM, Dewald Pretorius dpr...@gmail.com wrote: Yes, I just tried it again. URL:https://api.twitter.com/1/statuses/update.json Headers: Date: Mon, 22 Mar 2010 21:09:39 GMT Server: hi Status: 200 OK X-Transaction: 1269292179-62279-30903 ETag: 05ef33cb30cec1cfa0c5887d4862c9df Last-Modified: Mon, 22 Mar 2010 21:09:39 GMT X-Runtime: 0.26340 Content-Type: application/json; charset=utf-8 Content-Length: 1274 Pragma: no-cache X-Revision: DEV Expires: Tue, 31 Mar 1981 05:00:00 GMT Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post- check=0 Set-Cookie: guest_id=1269292179683; path=/ Set-Cookie: lang=en; path=/ Set-Cookie: [snipped] Vary: Accept-Encoding Connection: close The id and text returned were the latest successful tweet, not the duplicate text I was trying to post. On Mar 22, 6:08 pm, Mark McBride mmcbr...@twitter.com wrote: On api.twitter.com/1/statuses/update.json? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 1:58 PM, Dewald Pretorius dpr...@gmail.com wrote: When is the change going live to return a 403 response code on a duplicate post? I'm still getting the old behavior. A 200 OK is returned with the details of the latest successful tweet on the account. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Missing replies to followed user (streaming api)
What track/follow paramaters were you using to get this? follow=briantroytrack=briantroy? ---Mark http://twitter.com/mccv On Tue, Mar 23, 2010 at 1:42 PM, briantroy brian.cosin...@gmail.com wrote: We seem to consistently miss replies to users using the streaming api. Our methodology: If one of our users specifies a twitter user name we both follow the user (using the folllow= predicate) and track on the user's username (using the track= predicate). Our assumption was that this would get structured replies and retweets (via the follow) and unstructured (via the track). This appears to not be the case. We never get some replies. For example: Tweet ID: 10942140971 was never received (in reply to me). Most of these appear to come from 3rd party clients - but this example came from the web. We can confirm (via our logs) that the tweet never comes in on the stream. Anyone else seeing anything like this or have a proven methodology for getting all mentions? Thanks, Brian Roy To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: 403 on duplicate post - when?
Several tweets back, with a several hour cool down. So you could tweet A, B, A, providing they're several hours a part. ---Mark http://twitter.com/mccv On Tue, Mar 23, 2010 at 6:41 PM, Tim Haines tmhai...@gmail.com wrote: Learnt something here. I knew you couldn't post the same tweet twice in a row. But Twitter is also blocking you from repeating a tweet you posted earlier in the day? So you can't Tweet: A B AThis one won't go through? If this is the case, how far back does it check for duplicates? Guy Kawasaki must hate this. :-) Tim. On Wed, Mar 24, 2010 at 5:28 AM, Mark McBride mmcbr...@twitter.comwrote: Yes, that's a hole in the current logic. I'll work on getting the N-n case handled. ---Mark http://twitter.com/mccv On Tue, Mar 23, 2010 at 6:12 AM, Dewald Pretorius dpr...@gmail.comwrote: Mark, Here is what appears to happen. When you try and duplicate the newest tweet (N), you get the expected new behavior with a 403 and Status is a duplicate. When you try and duplicate tweet N-1, you get the old behavior with 200 OK and the details of tweet N. I have not tested tweet N-2, N-3, etc. On Mar 22, 6:27 pm, Mark McBride mmcbr...@twitter.com wrote: I just tried it and got a 403. Can you give me a screen name you're using, the data posted, and the data returned? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 2:14 PM, Dewald Pretorius dpr...@gmail.com wrote: Yes, I just tried it again. URL:https://api.twitter.com/1/statuses/update.json Headers: Date: Mon, 22 Mar 2010 21:09:39 GMT Server: hi Status: 200 OK X-Transaction: 1269292179-62279-30903 ETag: 05ef33cb30cec1cfa0c5887d4862c9df Last-Modified: Mon, 22 Mar 2010 21:09:39 GMT X-Runtime: 0.26340 Content-Type: application/json; charset=utf-8 Content-Length: 1274 Pragma: no-cache X-Revision: DEV Expires: Tue, 31 Mar 1981 05:00:00 GMT Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post- check=0 Set-Cookie: guest_id=1269292179683; path=/ Set-Cookie: lang=en; path=/ Set-Cookie: [snipped] Vary: Accept-Encoding Connection: close The id and text returned were the latest successful tweet, not the duplicate text I was trying to post. On Mar 22, 6:08 pm, Mark McBride mmcbr...@twitter.com wrote: On api.twitter.com/1/statuses/update.json? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 1:58 PM, Dewald Pretorius dpr...@gmail.com wrote: When is the change going live to return a 403 response code on a duplicate post? I'm still getting the old behavior. A 200 OK is returned with the details of the latest successful tweet on the account. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: Why does changing this one char invalidate this message
I tested this by 1) Replacing the basic auth header with my own 2) Opening a connection via telnet on OS X telnet twitter.com 80 3) Pasting in the sample 4) Looking at the response And it works for me. Note that if I do it a second time I get a 200 and an empty response, as you're going to twitter.com instead of api.twitter.com. ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 8:09 AM, Oli oliverst...@gmail.com wrote: Hi again Mark. I have just used realterm to connect instead of hyperterminal (shows every char including hidden ones) and I have had success with my first example, however I am still struggling to get the full example working (I had tried to simplify to a working/non- working example as much as possible). Could you give this a quick try please? POST http://twitter.com/statuses/update.json HTTP/1.1 Host: twitter.com Authorization: Basic xxx Content-type: application/x-www-form-urlencoded Content-length: 47 Connection: Close status=ALARM%3A+Test_Unit+t1%3A+35litres+2425+C If you have success, could you let me know exactly how you have tested this (software etc) so I can duplicate it? I really appreciate your help and advice on this - It's one of the final sticking problems of this project. Many thanks On Mar 19, 5:51 pm, Mark McBride mmcbr...@twitter.com wrote: Now that I'm clear... 1) It works for me using telnet. This may or may not be subtly different from hyperterminal. 2) Note that if you do this repeatedly with the same status text you'll get rejections due to duplicate tweets. On twitter.com this returns a 200 with no response body. You shouldn't be using this endpoint anyway, please use api.twitter.com instead. ---Mark http://twitter.com/mccv On Fri, Mar 19, 2010 at 10:33 AM, Oli oliverst...@gmail.com wrote: Hi Mark, thanks for your response but I think you may be mistaken. In the first call, I do send 36 bytes I state prior to sending - status=ALAhM%3A+Test_Unit+t1%3A35tej In the second call, I do send the 35 bytes I state prior to sending - status=ALAhM%3A+Test_Unit+t1%3A35te Additionally, I am 100% sure there are no spaces at the end / other chars that are hidden. I am dealing with the raw socket and to rule out any software mishap I have been testing manually using hyperterminal (winsock) to diagnose the problem. I'm at a dead end on this until somebody can figure out what I am doing wrong / if there is genuinely a problem elsewhere. Thanks again On Mar 19, 4:58 pm, Mark McBride mmcbr...@twitter.com wrote: On to the real problem, are you using a library to make that POST request, or raw sockets? What is likely happening is you're telling the server to expect 36 bytes of info in the first call. You send 35. The server waits and waits then hangs up. In the second call you're telling the server to expect 35, you send 35, the server does it's deal, and everybody is happy. ---Mark http://twitter.com/mccv On Fri, Mar 19, 2010 at 9:55 AM, Mark McBride mmcbr...@twitter.com wrote: Missed the part about the one letter change. Clever! ---Mark http://twitter.com/mccv On Fri, Mar 19, 2010 at 9:54 AM, Mark McBride mmcbr...@twitter.com wrote: You'll almost certainly want to change the password on that account immediately, as the basic auth header is easily decrypted. ---Mark http://twitter.com/mccv On Fri, Mar 19, 2010 at 9:20 AM, Oli oliverst...@gmail.com wrote: Also worth noting: there was no error returned - it hung up after 3/4 seconds. If you connect to twitter.com port 80 using hyperterminal / winsock, you can copy and paste (replacing the authorisation, and enabling append line feeds onto line ends in hyperterminal options) my examples and see this for yourself. Any other ideas? I would really appreciate any comments on this issue. On Mar 19, 3:16 pm, Oli oliverst...@gmail.com wrote: Hi there, I've just been playing about and have come across a curious bug (I have changed one letter of the hashcode) - connecting and sending POSThttp://twitter.com/statuses/update.jsonHTTP/1.1 Host: twitter.com Authorization: Basic bWz0cm9uMjpwb2tlcmNoYW1wMQ== Content-type: application/x-www-form-urlencoded Content-length: 36 Connection: Close status=ALAhM%3A+Test_Unit+t1%3A35tej DOESN'T WORK but POSThttp://twitter.com/statuses/update.jsonHTTP/1.1 Host: twitter.com Authorization: Basic bWz0cm9uMjpwb2tlcmNoYW1wMQ== Content-type: application/x-www-form-urlencoded Content-length: 35 Connection: Close status=ALAhM%3A+Test_Unit+t1%3A35te DOES - why is this?? Many thanks in advance To unsubscribe from this group, send email to twitter-development-talk
Re: [twitter-dev] getting authenticated user's rate-limit-using rest API.
Authenticate as the second user. ---Mark http://twitter.com/mccv On Sun, Mar 21, 2010 at 11:55 PM, Rushikesh Bhanage rishibhan...@gmail.comwrote: Hi, (Note: In my app, single white listed useraccount's requests are not sufficient to complete particular task, so i need to switch from one account to another without breaking operation, if previous A/C's hits got over. ) In my case both the users are authenticated. Now problem is that how to switch from one user to another, when next user comes, he should come up with it's hits for the operations, when previous user's hits got over. In such situation how can i use rate_limit_status method. Thank you in advance, rishibhanage On Mon, Mar 22, 2010 at 1:19 AM, Chris Thomson chri...@chris24.ca wrote: The rate_limit_status method does not take a username as a parameter. All account methods act on the authenticating user's account (or in the case of an unauthenticated call, the requesting IP address). In order to get each other's rate limit information, you'll need to have both the user's authenticated as themselves. -- Chris Thomson On Mar 21, 2010, at 8:01 AM, Rushikesh Bhanage wrote: Hi, there, I am using rest api method in my app, in that, I have two users(i.e white-listed user accounts.) and need to get each user's account rate-limit request balance, I am using following URL to get request balance. ' http://twitter.com/account/rate_limit_status/'.$unm.'.xmlhttp://twitter.com/account/rate_limit_status/%27.$unm.%27.xml'. Here $unm is user name passed through ratelimit() function . Below is the code logic: (using cURL functions ) [ function Checklimit() { for($i=0; $i2; $i++) { $usrlimit = $this-ratelimit($this-u[$i]); // ratelimit($unm) function will give array containing remaining hits. foreach($usrlimit as $key=$val) // $this-u[] is the array used for fetching users with $i. { if($key == 'remaining-hits') { if($val != 0) {// here will return array element which is having hits. return $i; // here it doesn't come inside when value of ratelimit of first user comes to an end } } } // Actually here it goes to second user but does not get it's hits from api using ratelimit function. gets same 0 as like first user. It will return -1 when no user is having hits. } return -1; } ] Can I have some clue, please. Thank You in advance. with regards, rishibhanage. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: Open Source Project website
Done ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 9:38 AM, IanQuigley irquig...@gmail.com wrote: Are you sure they check this forum for update requests? You might want to email them directly. I did. Ian To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: 403 on statuses longer than 140 characters
Complete is probably overly optimistic. However for the case of when we return 403s on status updates and how you can tell why we did so the documentation is now more up to date. Enjoy! ---Mark http://twitter.com/mccv On Fri, Mar 19, 2010 at 11:08 PM, Andy Freeman ana...@earthlink.net wrote: I don't suppose that the API documentation will be updated and made complete On Mar 19, 9:52 am, Mark McBride mmcbr...@twitter.com wrote: Abraham is correct. We only truncate text in the case of SMS tweets. We won't chop text off of tweets when posted via the API, however we will shorten URLs if it will get the tweet to fit into 140 characters. ---Mark http://twitter.com/mccv On Fri, Mar 19, 2010 at 8:52 AM, Abraham Williams 4bra...@gmail.com wrote: The URLs might be shortened not the text of the status itself. Abraham On Thu, Mar 18, 2010 at 22:03, Andy Freeman ana...@earthlink.net wrote: What in the return JSON tells us that you've shortened? For example, are you setting/returning truncate? Are you returning the shortened tweet in status? On Mar 18, 12:30 pm, Mark McBride mmcbr...@twitter.com wrote: I should clarify. Returning a 403 is what we do right now. Later today (hopefully) we will correct the behavior to return a 200 in this case. So short story: we'll be doing what you want us to do. ---Mark http://twitter.com/mccv On Thu, Mar 18, 2010 at 11:57 AM, Dewald Pretorius dewaldpub...@gmail.comwrote: In the announcement, Mark said, ...in the case that a long status can be reduced to under 140 characters by shortening URLs. In this case we return a 403 but successfully create the status. Any chance that you can instead return a 200? Returning a 403 while you actually created the status will cause confusion.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. -- Abraham Williams | Community Advocate |http://abrah.am TwitterOAuth |http://github.com/abraham/twitteroauth This email is: [ ] shareable [x] ask first [ ] private. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: 401 Unauthorized
Everything looks fine with your POST conversation. Can you email directly with more details? 1) What library/tool are you using to make your POSTs? 2) What are the OS/architectures you're running on in your different environments? 3) Are there odd characters in the password? (could this be a character encoding issue?) These are shots in the dark. We're not seeing this with other users/environments that I know of. ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 7:29 AM, Uladzimir Pashkevich v.pashkev...@gmail.com wrote: Hi Mark, Thanks for your reply! Screen name of the account is dmlreach. Please see the request and 2 responses. Request: GET /1/account/verify_credentials.xml HTTP/1.1 Authorization: Basic MY_AUTH_STRING_HERE Host: api.twitter.com OK response headers: Status: 200 OK X-Transaction: 1269267625-43203-17004 X-RateLimit-Limit: 2 X-RateLimit-Remaining: 19998 X-Runtime: 0.06217 Pragma: no-cache X-RateLimit-Class: api_whitelisted X-Revision: DEV X-RateLimit-Reset: 1269271222 Content-Length: 2730 Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post- check=0 Content-Type: application/xml; charset=utf-8 Date: Mon, 22 Mar 2010 14:20:25 GMT Expires: Tue, 31 Mar 1981 05:00:00 GMT ETag: 1f0dfa0c9c82fe48bec465b9bad3793a Last-Modified: Mon, 22 Mar 2010 14:20:25 GMT Set-Cookie: guest_id=1269267625681; path=/,lang=en; path=/,_twitter_sess=BAh7CToRdHJhbnNfcHJvbXB0MDoPY3JlYXRlZF9hdGwrCOn2PoYnAToHaWQi %250AJWIyNDJhNjNkZjI1MzVkZDBmMWE5ODExZWMxOGE1ZjRkIgpmbGFzaElDOidB %250AY3Rpb25Db250cm9sbGVyOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA-- bbde5312124b201f3cead86cb3d7e2947579ab88; domain=.twitter.com; path=/ Server: hi Vary: Accept-Encoding Connection: close 401 response headers: Status: 401 Unauthorized X-Runtime: 0.00763 Content-Length: 155 Cache-Control: no-cache, max-age=1800 Content-Type: application/xml; charset=utf-8 Date: Mon, 22 Mar 2010 14:04:48 GMT Set-Cookie: guest_id=1269266688016; path=/,_twitter_sess=BAh7CDoPY3JlYXRlZF9hdGwrCBeoMIYnAToHaWQiJWE1ZjZhMDdjZDA5OWUy %250AZjM1ZDFmMmY5Mzc1YWFjMTQ4IgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVy %250AOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA-- fcdae0e1bde0a38c30903e86171f6b7a26afa0d0; domain=.twitter.com; path=/ Server: hi WWW-Authenticate: Basic realm=Twitter API Expires: Mon, 22 Mar 2010 14:34:47 GMT Vary: Accept-Encoding Connection: close So, in response to the same request I got two different responses. Both requests were made from the same server. I would be very grateful if someone could help me with this issue. On Mar 17, 7:29 pm, Mark McBride mmcbr...@twitter.com wrote: Without more details it's tough to say. Do you at least have the screen name of the account in question, and details on both the success and failure environments? ---Mark http://twitter.com/mccv On Wed, Mar 17, 2010 at 1:39 AM, Uladzimir Pashkevich v.pashkev...@gmail.com wrote: Does anyone has any ideas? Any help is really appreciated, because I can't understand this kind of the API's behavior. On Mar 12, 6:40 pm, Uladzimir Pashkevich v.pashkev...@gmail.com wrote: Hi everyone, I am developing an application using Twitter API and I have encountered into a strange behavior connected with 401 error. I am using basic auth. When I run my application locally, it works just fine and I never get any 401 errors. However, when I run my application on another environment, I get 401 error in approximately 80% cases. I am completely sure that the credentials are correct. What makes this situation even more weird is that I am working with several accounts, and most of them work fine in both environments. I am experiencing problems only with one account. All accounts I work with are whitelisted, so rate limit should not be an issue here. I have no idea what may cause this behavior. Could you please explain me the possible reasons I am getting 401? Thanks, Uladzimir To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] /filter question
You can. However this will be a logical ORing of predicates. So you'll get all tweets from user 1234566, and all tweets with the keyword foo ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 11:28 AM, rob robert.bag...@gmail.com wrote: Quick question: When consuming the Streaming API on the Filter endpoint can you provide both the track and follow predicates? ex: ?track=foofollow=1234566 We would like to have a single user with elevated access for both the track and follow roles and utilize a single connection. Thanks, Rob To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] 403 on duplicate post - when?
On api.twitter.com/1/statuses/update.json? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 1:58 PM, Dewald Pretorius dpr...@gmail.com wrote: When is the change going live to return a 403 response code on a duplicate post? I'm still getting the old behavior. A 200 OK is returned with the details of the latest successful tweet on the account. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.
Re: [twitter-dev] Re: 403 on duplicate post - when?
I just tried it and got a 403. Can you give me a screen name you're using, the data posted, and the data returned? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 2:14 PM, Dewald Pretorius dpr...@gmail.com wrote: Yes, I just tried it again. URL: https://api.twitter.com/1/statuses/update.json Headers: Date: Mon, 22 Mar 2010 21:09:39 GMT Server: hi Status: 200 OK X-Transaction: 1269292179-62279-30903 ETag: 05ef33cb30cec1cfa0c5887d4862c9df Last-Modified: Mon, 22 Mar 2010 21:09:39 GMT X-Runtime: 0.26340 Content-Type: application/json; charset=utf-8 Content-Length: 1274 Pragma: no-cache X-Revision: DEV Expires: Tue, 31 Mar 1981 05:00:00 GMT Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post- check=0 Set-Cookie: guest_id=1269292179683; path=/ Set-Cookie: lang=en; path=/ Set-Cookie: [snipped] Vary: Accept-Encoding Connection: close The id and text returned were the latest successful tweet, not the duplicate text I was trying to post. On Mar 22, 6:08 pm, Mark McBride mmcbr...@twitter.com wrote: On api.twitter.com/1/statuses/update.json? ---Mark http://twitter.com/mccv On Mon, Mar 22, 2010 at 1:58 PM, Dewald Pretorius dpr...@gmail.com wrote: When is the change going live to return a 403 response code on a duplicate post? I'm still getting the old behavior. A 200 OK is returned with the details of the latest successful tweet on the account. To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.- Hide quoted text - - Show quoted text - To unsubscribe from this group, send email to twitter-development-talk+ unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject. To unsubscribe from this group, send email to twitter-development-talk+unsubscribegooglegroups.com or reply to this email with the words REMOVE ME as the subject.