[twitter-dev] Re: URGENT: Error Signing In Twitter Users on TweetPhoto API (Metering/Rate Limiting)
Alex introduced a limit (15/hr ) to verify_credentials – even authentic calls. But IIRC, this was later removed, looks like it's back.
[twitter-dev] Re: Search API Rate limiting - App Engine (again)
Hi. I have this problem too. My application does two request per hour and it get rate limit. What is wrong? I think it is twitter's problems On 1 окт, 01:45, Paul Kinlan paul.kin...@gmail.com wrote: Hi Guys, I have an app on the App engine using the search API and it is getting heavily rate limited again this past couple of days. I know that we are on a shared set of IP addresses and someone else could be hammering the system, but it seems to run for weeks without seeing the rate limit being hit and then all of a sudden only about 60% of the searches I perform will be rate limited. This seems to occur every two months or so. Has something changed recently? Paul
[twitter-dev] Re: How to check if user is followed?
Hi Tomas, Thanks for the clarification. One question - if you have many users, you will need to load all the IDs for All the users in the memory - isn't that too heavy?some of the users have 10+ followers. Thanks. On Oct 4, 6:26 pm, Thomas Hübner thueb...@gmx.de wrote: the problem is that a friendship exist is an expensive API Call (of 150 possible per hr) I do not know what kind of Application you plan but for my client App I load the ID's of followers with one API call and keep this list in memory. If a status become loaded I compare the icluded UserID with the list and switch the menues depending on containing this ID or not. This is much faster then request the API each time. Only situation which is not working for are search calls because the delivered result (ATOM) does not contain any userID which is a fail twittme_mobi schrieb: Hi Tomas, thanks for the reply! the social graph methods are too heavy for such a simple operation. I have to check if user is followed every time that a profile is visited so i would now where to put Follow or Unfollow button.It is not reasonable to execute the social graph methods every time, because sometimes users might have thousands of followers.Isn't it the friendship/exists method that needs to be fixed, after all, it is just for checking if user is followed or not.. Thanks!Your opinion is welcome! On Oct 3, 2:20 pm, Thomas Hübner thueb...@gmx.de wrote: you have the social graph methods which deliver ID's. Unfortunately the same API call for screennames is missed - so you never can make comparings with search API results because there is no userID in. friends/ids followers/ids cheers, Thomas twittme_mobi schrieb: Hi guys, i tried friendship/exists but it throws an error when the user is protected.How should i accomplish this task with the API? signature.asc 1KViewDownload signature.asc 1KViewDownload
[twitter-dev] Re: How to check if user is followed?
Hi Tomas, another question to collaborate, do you think that is faster to find the ID in array by iterating it rather that searching for a string in the XML with some well known search function On Oct 5, 10:54 am, twittme_mobi nlupa...@googlemail.com wrote: Hi Tomas, Thanks for the clarification. One question - if you have many users, you will need to load all the IDs for All the users in the memory - isn't that too heavy?some of the users have 10+ followers. Thanks. On Oct 4, 6:26 pm, Thomas Hübner thueb...@gmx.de wrote: the problem is that a friendship exist is an expensive API Call (of 150 possible per hr) I do not know what kind of Application you plan but for my client App I load the ID's of followers with one API call and keep this list in memory. If a status become loaded I compare the icluded UserID with the list and switch the menues depending on containing this ID or not. This is much faster then request the API each time. Only situation which is not working for are search calls because the delivered result (ATOM) does not contain any userID which is a fail twittme_mobi schrieb: Hi Tomas, thanks for the reply! the social graph methods are too heavy for such a simple operation. I have to check if user is followed every time that a profile is visited so i would now where to put Follow or Unfollow button.It is not reasonable to execute the social graph methods every time, because sometimes users might have thousands of followers.Isn't it the friendship/exists method that needs to be fixed, after all, it is just for checking if user is followed or not.. Thanks!Your opinion is welcome! On Oct 3, 2:20 pm, Thomas Hübner thueb...@gmx.de wrote: you have the social graph methods which deliver ID's. Unfortunately the same API call for screennames is missed - so you never can make comparings with search API results because there is no userID in. friends/ids followers/ids cheers, Thomas twittme_mobi schrieb: Hi guys, i tried friendship/exists but it throws an error when the user is protected.How should i accomplish this task with the API? signature.asc 1KViewDownload signature.asc 1KViewDownload
[twitter-dev] Re: How to check if user is followed?
I only can talk for .NET - A Dictionary(of Long, Boolean) with 5000 Id's needs around 500 Ticks If I request the Method .ContainsKey. I don't think that an API Request with parsing xml can be faster. Additional you nail the server with unneeded requests which are expensive (rate limits) too I don't know your Applicaton but you'll handle all accounts at the same time? Normaly if an user authenticates the first calls could be to request the ID Lists and store them during this users sessiontime. If a user leaves you can free this memory. On 5 Okt., 12:03, twittme_mobi nlupa...@googlemail.com wrote: Hi Tomas, another question to collaborate, do you think that is faster to find the ID in array by iterating it rather that searching for a string in the XML with some well known search function On Oct 5, 10:54 am, twittme_mobi nlupa...@googlemail.com wrote: Hi Tomas, Thanks for the clarification. One question - if you have many users, you will need to load all the IDs for All the users in the memory - isn't that too heavy?some of the users have 10+ followers. Thanks. On Oct 4, 6:26 pm, Thomas Hübner thueb...@gmx.de wrote: the problem is that a friendship exist is an expensive API Call (of 150 possible per hr) I do not know what kind of Application you plan but for my client App I load the ID's of followers with one API call and keep this list in memory. If a status become loaded I compare the icluded UserID with the list and switch the menues depending on containing this ID or not. This is much faster then request the API each time. Only situation which is not working for are search calls because the delivered result (ATOM) does not contain any userID which is a fail twittme_mobi schrieb: Hi Tomas, thanks for the reply! the social graph methods are too heavy for such a simple operation. I have to check if user is followed every time that a profile is visited so i would now where to put Follow or Unfollow button.It is not reasonable to execute the social graph methods every time, because sometimes users might have thousands of followers.Isn't it the friendship/exists method that needs to be fixed, after all, it is just for checking if user is followed or not.. Thanks!Your opinion is welcome! On Oct 3, 2:20 pm, Thomas Hübner thueb...@gmx.de wrote: you have the social graph methods which deliver ID's. Unfortunately the same API call for screennames is missed - so you never can make comparings with search API results because there is no userID in. friends/ids followers/ids cheers, Thomas twittme_mobi schrieb: Hi guys, i tried friendship/exists but it throws an error when the user is protected.How should i accomplish this task with the API? signature.asc 1KViewDownload signature.asc 1KViewDownload
[twitter-dev] Radio Silence on API Request?
Hey, Twitter API staff, can you recommend a next step for me to take? It's been more than a week since I issued a rate-limit request, and I haven't heard anything, nor seen any changes. What to do when the rate limit request form yields radio silence? Thanks! - Waldron Faulkner @WaldronFaulkner
[twitter-dev] Re: Radio Silence on API Request?
I'm working through the backlog now... -Chad On Mon, Oct 5, 2009 at 8:28 AM, Waldron Faulkner waldronfaulk...@gmail.com wrote: Hey, Twitter API staff, can you recommend a next step for me to take? It's been more than a week since I issued a rate-limit request, and I haven't heard anything, nor seen any changes. What to do when the rate limit request form yields radio silence? Thanks! - Waldron Faulkner @WaldronFaulkner
[twitter-dev] Re: Lookup lots of user_ids from screenames?
Why not request whitelisting? You'll be able to make 20,000 requests per hour. Provided you have a legitimate application, there's no reason why you wouldn't be whitelisted, and it generally seems to happen pretty quickly. http://twitter.com/help/request_whitelisting See more under Whitelisting: http://apiwiki.twitter.com/Rate-limiting Good luck! Richard On Oct 4, 3:08 am, Andrew McCloud and...@amccloud.com wrote: If possible can I get the rate limit lifted temporarily for few thousand request? the account is flockwith and the ip is 67.23.46.141 On Oct 3, 6:34 pm, Andrew McCloud and...@amccloud.com wrote: Is it possible to lookup lots of user_ids from screenames without being rate limited? I'm doing a 1 time import into our db and need to get it done asap.
[twitter-dev] Re: Chage from on tweets
To be fair to the newer Twitter apps shouldn't all API posts not using OAUTH show up as from API ? On Oct 5, 12:11 am, ryan alford ryanalford...@gmail.com wrote: Twitter removed that functionality just recently. Any application that used if before it was removed is still allowed to use it. On Oct 5, 2009, at 12:07 AM, Vincent Nguyen kureik...@gmail.com wrote: We knew is to change from on tweets, we must use Oauth! But i see desktop client such as tweetdeck, twitterfox,... don't use Oauth and they still have from twitterfox,.. how does that happens?
[twitter-dev] Re: Status id documentation
I hadn't looked at this in a while, but apparently the status id format has changed in the JSON response. I see a live example such as: 'id' = ( { 'value' = [ '2050382', '463' ], 'sign' = '+' }, 'Math::BigInt' ), This looks like Perl. Are you sure you're really dumping the Twitter object? -- personal: http://www.cameronkaiser.com/ -- Cameron Kaiser * Floodgap Systems * www.floodgap.com * ckai...@floodgap.com -- Why did the chicken cross the Moebius strip? To get to the other ... uh ...
[twitter-dev] Re: Status id documentation
Yes, it was Perl ... This obviously wasn't JSON. It was the output of Data::Dumper that produced this. I guess I should get more sleep. Thanks, Scott On Oct 5, 1:35 pm, Cameron Kaiser spec...@floodgap.com wrote: I hadn't looked at this in a while, but apparently the status id format has changed in the JSON response. I see a live example such as: 'id' = ( { 'value' = [ '2050382', '463' ], 'sign' = '+' }, 'Math::BigInt' ), This looks like Perl. Are you sure you're really dumping the Twitter object? -- personal:http://www.cameronkaiser.com/-- Cameron Kaiser * Floodgap Systems *www.floodgap.com* ckai...@floodgap.com -- Why did the chicken cross the Moebius strip? To get to the other ... uh ...
[twitter-dev] Re: Return number of pages (or number of friends/followers) on first call with cursor
Anyone else still confused at how this works? I'm still confused at how this is any different than the way it was before with the paging (other than one-less API call). Jesse On Sun, Oct 4, 2009 at 10:57 PM, John Kalucki jkalu...@gmail.com wrote: If an API is untrusted, it must be treated as entirely untrusted. You should be adding defensive heuristics between the untrusted API results and your application. If a given fetch seems bad, then queue the results and don't act on them until otherwise corroborated, perhaps by some quorum of subsequent results. You should also carefully be checking HTTP result codes, and performing exhaustive field existence checking. In the end, if some results are untrusted, you cannot trust the suggested improvements, as the improvements will, by necessity, be served from the same data store. Finally, the suggested improvements take resources away from stabilizing and otherwise improving the API. The purpose of the cursored resource is to make retrieval of high- velocity high-cardinality sets possible via a RESTful API. This scheme does not provide a snapshot view. The cursor scheme offers several useful properties however. One such property is that if an edge exists at the beginning of a traversal and remains unmodified throughout the traversal, the edge will always(**) be returned in the result set, regardless of all other possible operations performed on all other edges in the set. Additions and modifications made after the first block is returned will tend to not to be represented (perhaps never be present). Deletions made after the first block is returned may or may not be represented. This is a very strong and very useful form of consistency. ** = There remains an issue with cursor jitter that can, very rarely, result in minor loss and minor overdelivery. I don't know when this issue will be fully addressed. This jitter issue should only effect high velocity sets, and rarely, if ever, affect ordinary users. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Oct 4, 10:45 am, Jesse Stay jesses...@gmail.com wrote: John, because no offense, but frankly I don't trust the Twitter API. I've been burned too many times by things that were supposed to work, code pushed into production that wasn't tested properly, etc. that I know better to do all I can to account for Twitter's mistakes. There's no telling if at some point that next_cursor returns nothing, but in reality it was supposed to return something, and my users accidentally unfollow all their friends because of it when they weren't intending to do so. Having that number in there ensures, without a doubt (unless the number itself is wrong, which I can't do anything about), that I know if Twitter is right or not when I retrieve that next_cursor value. I hope that makes sense - it's nothing against Twitter, I've just seen it too many times to know that I need to have backup error checking in place to be sure I know Twitter's return data is correct. Regarding the user being removed before finished, I thought the whole purpose of these cursors was to provide a snapshot of a social graph at a given point of time, so unfollowed users don't show up until after the list is retrieved - is that not the case? Also, my experience has been that pulling the user's friend and follower count ahead of time pulls a number that is not the same as the number of followers/friends I actually pull from the API. Having you guys do a count on the set ahead of time will help ensure that's the correct number. Thanks, Jesse On Sun, Oct 4, 2009 at 8:24 AM, John Kalucki jkalu...@gmail.com wrote: Curious -- why isn't the end of list indicator a reliable enough indication? Iterate until seems simple and reliable. Can you request the denormalized count via the API before you begin? (Not familiar enough with the API, but the back-end store offers this for all sorts of purposes.) You'd have to apply some heuristic to allow for high-velocity sets. The last user in the list could be removed before iteration completes, setting up a race-condition that you'd have to allow for as well. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Oct 4, 1:29 am, Jesse Stay jesses...@gmail.com wrote: I was wondering if it might be possible to include, at least in the first page, but if it's easier it could be on all pages, either a total expected number of followers/friends, or a total expected number of returned pages when the cursor parameter is provided for friends/ids and followers/ids? I'm assuming since you're moving to the cursor-based approach you ought to be able to accurately count this now since it's a snapshot of the data at that time. The reason I think that would be useful is that occasionally Twitter goes down or
[twitter-dev] Registered app under wrong twitter account?
I recently registered an app under @MacksMind, but the account I'll use for support etc is @TweetMention. So 2 questions: Should I care, because I'm not sure it really matters. And then how would I fix it?
[twitter-dev] Having Twitter automatically update a 3rd party site user's status
Hello, I'm developing for the E.Factor, an entrepreneurial website. I have a question that I am wondering if it's possible to do. Facebook has an app that allows a user to configure their Facebook status updates to automatically be updated when they post something to their Twitter feed. Is it possible for us to have a similar feature, so that a users' status update on E.Factor can be automatically updated when someone updates their Twitter feed? If so, how about do I go implementing this feature? Please note: I am not talking about updating Twitter from E.Factor, I'm talking updating E.Factor from Twitter.
[twitter-dev] Re: Search API Rate limiting - App Engine (again)
Hi all, I am having the same issue. I have tried setting a custom user-agent, but this doesn't seem to affect the fact that twitter is limiting based on I.P. address. I'm only making about 5 searches an hour and 80% of them are failing on app engine due to a 503 rate limit. Twitter needs to determine a better way to let cloud clients access their search API. It seems like they have really started blocking search requests in the last week or so. If anyone has any idea about how to better identify my app engine app please let let me know. On Oct 5, 2:59 am, steel steel...@gmail.com wrote: Hi. I have this problem too. My application does two request per hour and it get rate limit. What is wrong? I think it is twitter's problems On 1 окт, 01:45, Paul Kinlan paul.kin...@gmail.com wrote: Hi Guys, I have an app on the App engine using the search API and it is getting heavily rate limited again this past couple of days. I know that we are on a shared set of IP addresses and someone else could be hammering the system, but it seems to run for weeks without seeing the rate limit being hit and then all of a sudden only about 60% of the searches I perform will be rate limited. This seems to occur every two months or so. Has something changed recently? Paul
[twitter-dev] Re: Search API Rate limiting - App Engine (again)
I'm noticing this problem as well. I'm making only a couple requests per hour. I have tried setting the user-agent and the HTTP_REFERER headers to a custom name, but Twitter doesn't seem to care. On Oct 5, 2:59 am, steel steel...@gmail.com wrote: Hi. I have this problem too. My application does two request per hour and it get rate limit. What is wrong? I think it is twitter's problems On 1 окт, 01:45, Paul Kinlan paul.kin...@gmail.com wrote: Hi Guys, I have an app on the App engine using the search API and it is getting heavily rate limited again this past couple of days. I know that we are on a shared set of IP addresses and someone else could be hammering the system, but it seems to run for weeks without seeing the rate limit being hit and then all of a sudden only about 60% of the searches I perform will be rate limited. This seems to occur every two months or so. Has something changed recently? Paul
[twitter-dev] Re: Search API Rate limiting - App Engine (again)
I am pretty sure there are custom headers on the App Engine that indicate the application that is sending the request. 2009/10/5 elkelk danielshaneup...@gmail.com Hi all, I am having the same issue. I have tried setting a custom user-agent, but this doesn't seem to affect the fact that twitter is limiting based on I.P. address. I'm only making about 5 searches an hour and 80% of them are failing on app engine due to a 503 rate limit. Twitter needs to determine a better way to let cloud clients access their search API. It seems like they have really started blocking search requests in the last week or so. If anyone has any idea about how to better identify my app engine app please let let me know. On Oct 5, 2:59 am, steel steel...@gmail.com wrote: Hi. I have this problem too. My application does two request per hour and it get rate limit. What is wrong? I think it is twitter's problems On 1 окт, 01:45, Paul Kinlan paul.kin...@gmail.com wrote: Hi Guys, I have an app on the App engine using the search API and it is getting heavily rate limited again this past couple of days. I know that we are on a shared set of IP addresses and someone else could be hammering the system, but it seems to run for weeks without seeing the rate limit being hit and then all of a sudden only about 60% of the searches I perform will be rate limited. This seems to occur every two months or so. Has something changed recently? Paul
[twitter-dev] Re: Having Twitter automatically update a 3rd party site user's status
Tom, We have a number of services doing this. Facebook was the first, and probably last service that we'll actively push updates into. All the rest grab statuses from Twitter. The easiest way is to put a widget on the page and let the browser include the Tweets. If you want a deeper integration, you can use the REST API, but at scale it is far easier to use the follow parameter on the Streaming API. This has been working well for even the largest scale integrations. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Oct 5, 8:29 am, Tom Farvour tfarv...@gmail.com wrote: Hello, I'm developing for the E.Factor, an entrepreneurial website. I have a question that I am wondering if it's possible to do. Facebook has an app that allows a user to configure their Facebook status updates to automatically be updated when they post something to their Twitter feed. Is it possible for us to have a similar feature, so that a users' status update on E.Factor can be automatically updated when someone updates their Twitter feed? If so, how about do I go implementing this feature? Please note: I am not talking about updating Twitter from E.Factor, I'm talking updating E.Factor from Twitter.
[twitter-dev] Re: Status id documentation
A followup to this for those that are interested: My real problem wasn't Data::Dumper, but rather the use of JSON::DWIW It turns out that that module will convert a number into a Math::BigInt object if the number is too large to be represented natively and the Math::BigInt module is installed. If Math::BigInt isn't installed, the number is turned into a string to prevent data loss. For consistent behaviour, I will probably pre-emptively convert raw numbers to strings prior to processing by JSON::DWIW. FWIW (not DWIW ;-), I just natively eat the numbers. Perl will happily accept numbers over int size; they are treated internally as strings, but can still have math operations performed on them. Above a certain quantity of significant digits this will break down, but for Twitter purposes that ceiling is quite high. -- personal: http://www.cameronkaiser.com/ -- Cameron Kaiser * Floodgap Systems * www.floodgap.com * ckai...@floodgap.com -- There is always one more imbecile than you counted on. -
[twitter-dev] Streaming API -- Depreciated URL removal warning
A number of clients are still connecting on the deprecated Streaming API URLs. Be sure that your client is connecting to the documented /1/ statuses/* resources and not the unsupported /gardenhose, /spritzer, / shadow, /follow, /track, etc. resources. The old URLs have been unsupported for about 25 days and the rewrite rules may be removed at any time. The original announcement: http://groups.google.com/group/twitter-development-talk/msg/46e5947fd0023a2d -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc.
[twitter-dev] Re: Rate limit response code(s)
Hello, On Mon, Oct 5, 2009 at 8:53 PM, jmathai jmat...@gmail.com wrote: Why are 400, 403 and 503 valid response codes to signify that a call is being rate limited? Was there a dart board involved? I don't know, but it would be really hard to play 301 with that dartboard. * 400 Bad Request: The request was invalid. An accompanying error message will explain why. This is the status code will be returned during rate limiting. This is for hourly rate limits for GET requests. 150 req/hr for the normal case (20k req/hr for whitelist). * 403 Forbidden: The request is understood, but it has been refused. An accompanying error message will explain why. This code is used when requests are being denied due to update limits. This is for daily update limits (POST requests: sending tweets and DMs, following people, etc). * 503 Service Unavailable: The Twitter servers are up, but overloaded with requests. Try again later. The search and trend methods use this to indicate when you are being rate limited. This is a hold-over from when Twitter Search was Summize. I expect if/when the Search and REST APIs merge into a single API that this rate-limit code will be 400 instead. -Chad
[twitter-dev] Re: friendship/create, and OAuth?
Nobody knows anything about this? I've tried three different OAuth frameworks (one in PHP and two in Objective-C) and all of them return a Page not found for a /friendships/create.json Is anybody on the Twitter team able to confirm or deny whether this is a bug? Regards, Fahim On Oct 4, 11:27 am, Fahim fah...@gmail.com wrote: When I issue a friendship/create request using OAuth authentication, I seem to get a 404 error. The same request sent using basic authentication appears to work correctly. Is this a known issue or something new that has not been encountered by anybody else before? I've tested other OAuth requests (status updates, timeline requests etc.) and they all work fine. So this is not an OAuth issue as far as I know. Anybody else encounter something similar and perhaps know of a workaround? Regards, Fahim
[twitter-dev] Re: friendship/create, and OAuth?
I have tested friendships/create using my python libraryvia oauth and works fine. My guess is you are not generating a valid oauth request (ex. invalid signature). Could you provide a link to the code you are trying and what libraries you are using? It would help others in diagnosing your issue. Best of luck, Josh On Mon, Oct 5, 2009 at 9:33 PM, Fahim fah...@gmail.com wrote: Nobody knows anything about this? I've tried three different OAuth frameworks (one in PHP and two in Objective-C) and all of them return a Page not found for a /friendships/create.json Is anybody on the Twitter team able to confirm or deny whether this is a bug? Regards, Fahim On Oct 4, 11:27 am, Fahim fah...@gmail.com wrote: When I issue a friendship/create request using OAuth authentication, I seem to get a 404 error. The same request sent using basic authentication appears to work correctly. Is this a known issue or something new that has not been encountered by anybody else before? I've tested other OAuth requests (status updates, timeline requests etc.) and they all work fine. So this is not an OAuth issue as far as I know. Anybody else encounter something similar and perhaps know of a workaround? Regards, Fahim
[twitter-dev] Account Owner's last tweet
What api do I use to identify the last or latest tweet of the account owner? http://twitter.com/users/show could contain a tweet by a follower. http://twitter.com/statuses/user_timeline - states that it returns the 20 most recent statuses posted from the authenticating user but it shows status updates made by all people. For example, my twitter account is John Jim posts a tweet John posts a tweet Mary posts a tweet I want to be able to grab John's tweet ONLY. Do I have to go through the user_timeline and filter out anything beginning with a @? Thanks!
[twitter-dev] Re: Rate limit response code(s)
Yea, I understood the differences. My question was why are there different response codes for the same result? I can understand the 503 being inherited from Summize. However, the 400 vs 403 seems like poor planning when building out the API. Is there a chance or are there any plans to unify the response codes to make more sense? On Oct 5, 6:48 pm, Chad Etzel c...@twitter.com wrote: Hello, On Mon, Oct 5, 2009 at 8:53 PM, jmathai jmat...@gmail.com wrote: Why are 400, 403 and 503 valid response codes to signify that a call is being rate limited? Was there a dart board involved? I don't know, but it would be really hard to play 301 with that dartboard. * 400 Bad Request: The request was invalid. An accompanying error message will explain why. This is the status code will be returned during rate limiting. This is for hourly rate limits for GET requests. 150 req/hr for the normal case (20k req/hr for whitelist). * 403 Forbidden: The request is understood, but it has been refused. An accompanying error message will explain why. This code is used when requests are being denied due to update limits. This is for daily update limits (POST requests: sending tweets and DMs, following people, etc). * 503 Service Unavailable: The Twitter servers are up, but overloaded with requests. Try again later. The search and trend methods use this to indicate when you are being rate limited. This is a hold-over from when Twitter Search was Summize. I expect if/when the Search and REST APIs merge into a single API that this rate-limit code will be 400 instead. -Chad