[twitter-dev] Re: Recent Following and Follower Issues and Some Background on Social Graph
John: Will the third system be used if, e.g., the user has 1000 friends and we request friends/ids WITHOUT pagination? Or must we include pagination arguments even if 5000 to use the third system? PJB On Sep 7, 9:52 pm, John Kalucki jkalu...@gmail.com wrote: I don't know all the details, but my general understanding is that these bulk followers calls have been heavily returning 503s for quite some time now, and this is long established, but bad, behavior. These bulk calls are hard to support and they need to be moved over to some form of practical pagination scheme. Ideally, we'd offer a stream of social graph deltas on the Streaming API and this polling business could be tightly restricted. Bluntly, until further back-end work is in place, we can return 5k followers reliably from the third system, or we can attempt to return large result sets, but often throw 503s -- really, timeouts, from the second system. We cannot return bulk operations, or use row-based cursors, from the third system. Scraping the social graph is certainly valuable in some cases, but generally it's a low value proposition for users, and scraping is often is used to support abusive behavior. -John Kaluckihttp://twitter.com/jkalucki Services, Twitter Inc. On Sep 7, 9:27 pm, David W. d...@botanicus.net wrote: Hi John, On Sep 6, 3:59 pm, John Kalucki jkalu...@gmail.com wrote: resources. There is minor pagination jitter in one case and a certain class of row-count-based queries have to be deprecated (or limited) and replaced with cursor-based queries to be practical. For now, we're sending the row-count-queries queries back to the second system, which is otherwise idle, but isn't consistent with the first or third system. I am getting several emails per day at the moment from users telling me my app's results are wrong. The application currently asks for the entire follower/following ID list at once, using /followers/ids and / friends/ids. Does this count as a row-count-query? David
[twitter-dev] Strange inconsistent posting failures
For the last three days I've had half or more of my site's posts fail to go through. I don't yet have full debugging results to show what I was receiving each time it failed, but I want to share this bit now. This server is not yet on the API whitelist. It makes 3-5 API requests every hour for most of the day, and several thousand search requests during the very early morning. Check out this set of consecutive 'curl' calls from this evening: curl -I 'http://twitter.com/users/show.xml?screen_name=dougw' HTTP/1.0 200 OK Connection: Close Pragma: no-cache cache-control: no-cache Refresh: 0.1 Content-Type: text/html; charset=iso-8859-1 curl -I 'http://twitter.com/users/show.xml?screen_name=dougw' HTTP/1.1 200 OK Date: Tue, 08 Sep 2009 00:52:08 GMT Server: hi Last-Modified: Tue, 08 Sep 2009 00:52:08 GMT Status: 200 OK X-RateLimit-Limit: 150 ETag: 99ae783e1715c8b08029dd1fe876576c X-RateLimit-Remaining: 149 Pragma: no-cache Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post- check=0 Content-Type: application/xml; charset=utf-8 X-RateLimit-Reset: 1252374728 Content-Length: 1880 Expires: Tue, 31 Mar 1981 05:00:00 GMT X-Revision: 7049adb008908242a7a3c2fe1ebe55e640e3e9fc X-Transaction: 1252371128-41890-18859 Set-Cookie: lang=en; path=/ Set-Cookie: _twitter_sess=BAh7CDoRdHJhbnNfcHJvbXB0MDoHaWQiJWVlYjJhYzY4MmMwMmRlZjg5MjU2%250AN2U0NTY2OGI0MjYzIgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVyOjpGbGFz %250AaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA--3228a79ee32dfd0c8d0808acb82e8e715999594f; domain=.twitter.com; path=/ Vary: Accept-Encoding Connection: close Anyone know what's up with that first request? Has anyone seen that? Perhaps it's part of the DoS prevention tools recently deployed by Twitter. Josh
[twitter-dev] follow and reply using auth tokens
hi Can any one help me to do follow and reply in twitter API using auth tokens thanks
[twitter-dev] Twitter for a Library
I need to set up a Twitter account for one of my clients, which is a public library. Anything I need to set up differently then what is provided on your set up account page? What would you suggest? Spyrrow
[twitter-dev] Know the number of results only
How do I get the number of results for a given search phrase? I don't want the results themselves, I just want to know the size of the results set for any given phrase. For example jnni hinklebootmurgh returns 0 results, where michael jackson returns gazillions. How can I get just the total number of results? I thought max_id might have something to do with it, but evidently not.
[twitter-dev] Re: Twitter for a Library
You should get a verified account since they'll presumably want to be a trusted provider of information. - h On Mon, Sep 7, 2009 at 20:01, spyrrow hughes...@sbcglobal.net wrote: I need to set up a Twitter account for one of my clients, which is a public library. Anything I need to set up differently then what is provided on your set up account page? What would you suggest? Spyrrow
[twitter-dev] Re: screen_name param for /statuses/mentions and/or xml format for search results?
No, frankly, I didn't put 2 and 2 together on the piece of info you're looking for; the XML aspect of your subject confuses focus. Well, sorry about that ... it's referred to as the xml format in all of the API docs, and it has no DTD or XSD schema to infer a better name from. so that's how i referred to it -- for future reference, is there some other name people use to refer to that format option on this list? in-memory. That scenario has simply never been a problem for me. A minor amount of additional work and resources required, but the server-side business-centric apps I work with have a lot of state to begin with. I wouldn't mind seeing full XML info available in the search API, but it doesn't seem like much of a stretch to separately retrieve and cache that sort of info either. I have no problem maintaining state, i am happily maintaining all the state and history i can about the user est i'm interested in -- and i'd even be willing to maintain state about every tweet ever to twtiter that refers to one those users by name ... if there was an easy way to get that info. But fetching each of those tweet individually seems ridiculous and prohibitive, especially since all my app cares about is tweets that are replies -- there's no way to filter on that type of information using the search API, so most of the individual tweets i have to retrieve (one at a time) don't even have the data neccessary to make them worth maintaining state about. your example of caching user data is one thing: it's trivial to cache all the metadata about a finite set of users, but you can't cache tweets that haven't happened yet.
[twitter-dev] Re: Counter for rate limit remaining requests unreliable, often reaches 0 unduly
I wish someone could just check this matter. I can provide an XML file showing all ordered requests (with all params, responses, etc) with the dumb counter values showing up. Thanks Xavier On Sep 4, 11:37 am, Reivax xavier.yo...@gmail.com wrote: All requests are done authentified. Thanks Xavier On Sep 4, 11:26 am, fbparis fbou...@gmail.com wrote: According to the last api request you've done, X-RateLimit-Remaining can be user limit or IP limit (depends if you made an authentified request or not). This can explain the X-RateLimit-Remaining values you've posted. On Sep 4, 11:03 am, Reivax xavier.yo...@gmail.com wrote: I'm having this problem for a few days, and I've been monitoring ALL requests sent to twitter, here is what I saw : The value of the X-RateLimit-Remaining header is totally unreliable. For instance, the response to a request will have it at 120, while the next response will have it at 40. Then subsequent request responses will have values such as 118, 39, 37, 36, 117, ... and so on. All responses have the same X-RateLimit-Reset ! It all looks like there are 2 unsynchronized counters, and responses get values from either one of them... The trouble is that one counter reaches 0 much too early, which makes my twitter client says the maximum allowed request has been reached !! I make 3 requests every 2 minutes, so I should never reach the max. I have the exact same behavior when using the rate_limit_status request. I made sure I have no other client on that account, and I can reproduce the problem each time. Even if I had, there would not be cases where it goes from 36 to 117 for 2 adjacent requests... Thanks for looking into that ! (I can provide traces of the requests) Regards, Xavier
[twitter-dev] Re: Counter for rate limit remaining requests unreliable, often reaches 0 unduly
I've seen many many reports of this coming in to TweetDeck support. Rate limit exceeded when it's not really. On Sep 8, 9:26 am, Reivax xavier.yo...@gmail.com wrote: I wish someone could just check this matter. I can provide an XML file showing all ordered requests (with all params, responses, etc) with the dumb counter values showing up. Thanks Xavier On Sep 4, 11:37 am, Reivax xavier.yo...@gmail.com wrote: All requests are done authentified. Thanks Xavier On Sep 4, 11:26 am, fbparis fbou...@gmail.com wrote: According to the last api request you've done, X-RateLimit-Remaining can be user limit or IP limit (depends if you made an authentified request or not). This can explain the X-RateLimit-Remaining values you've posted. On Sep 4, 11:03 am, Reivax xavier.yo...@gmail.com wrote: I'm having this problem for a few days, and I've been monitoring ALL requests sent to twitter, here is what I saw : The value of the X-RateLimit-Remaining header is totally unreliable. For instance, the response to a request will have it at 120, while the next response will have it at 40. Then subsequent request responses will have values such as 118, 39, 37, 36, 117, ... and so on. All responses have the same X-RateLimit-Reset ! It all looks like there are 2 unsynchronized counters, and responses get values from either one of them... The trouble is that one counter reaches 0 much too early, which makes my twitter client says the maximum allowed request has been reached !! I make 3 requests every 2 minutes, so I should never reach the max. I have the exact same behavior when using the rate_limit_status request. I made sure I have no other client on that account, and I can reproduce the problem each time. Even if I had, there would not be cases where it goes from 36 to 117 for 2 adjacent requests... Thanks for looking into that ! (I can provide traces of the requests) Regards, Xavier
[twitter-dev] Re: Counter for rate limit remaining requests unreliable, often reaches 0 unduly
Hey Richard, If you get a chance to put a proxy to display all requests going out of TweetDeck, you'll easily see that 'remaining' counters sent back by twitter go wild often enough. Chances are TweetDeck users blame it on TweetDeck :( Thanks for your feedback, let's hope that will help make twitter dev team work on that critical issue Xavier On Sep 8, 10:47 am, Richard richardbar...@gmail.com wrote: I've seen many many reports of this coming in to TweetDeck support. Rate limit exceeded when it's not really. On Sep 8, 9:26 am, Reivax xavier.yo...@gmail.com wrote: I wish someone could just check this matter. I can provide an XML file showing all ordered requests (with all params, responses, etc) with the dumb counter values showing up. Thanks Xavier On Sep 4, 11:37 am, Reivax xavier.yo...@gmail.com wrote: All requests are done authentified. Thanks Xavier On Sep 4, 11:26 am, fbparis fbou...@gmail.com wrote: According to the last api request you've done, X-RateLimit-Remaining can be user limit or IP limit (depends if you made an authentified request or not). This can explain the X-RateLimit-Remaining values you've posted. On Sep 4, 11:03 am, Reivax xavier.yo...@gmail.com wrote: I'm having this problem for a few days, and I've been monitoring ALL requests sent to twitter, here is what I saw : The value of the X-RateLimit-Remaining header is totally unreliable. For instance, the response to a request will have it at 120, while the next response will have it at 40. Then subsequent request responses will have values such as 118, 39, 37, 36, 117, ... and so on. All responses have the same X-RateLimit-Reset ! It all looks like there are 2 unsynchronized counters, and responses get values from either one of them... The trouble is that one counter reaches 0 much too early, which makes my twitter client says the maximum allowed request has been reached !! I make 3 requests every 2 minutes, so I should never reach the max. I have the exact same behavior when using the rate_limit_status request. I made sure I have no other client on that account, and I can reproduce the problem each time. Even if I had, there would not be cases where it goes from 36 to 117 for 2 adjacent requests... Thanks for looking into that ! (I can provide traces of the requests) Regards, Xavier
[twitter-dev] Re: Twitter for a Library
Howard, Can you do that on the regular set up account page or do you have to go through something else? Sent from my BlackBerry Smartphone provided by Alltel -Original Message- From: Howard Siegel hsie...@gmail.com Date: Mon, 7 Sep 2009 23:30:20 To: twitter-development-talk@googlegroups.com Subject: [twitter-dev] Re: Twitter for a Library You should get a verified account since they'll presumably want to be a trusted provider of information. - h On Mon, Sep 7, 2009 at 20:01, spyrrow hughes...@sbcglobal.net wrote: I need to set up a Twitter account for one of my clients, which is a public library. Anything I need to set up differently then what is provided on your set up account page? What would you suggest? Spyrrow
[twitter-dev] Re: Getting any users home timeline
Would appreciate some feedback on this? sorry for resending. --dharmesh On Fri, Sep 4, 2009 at 12:07 PM, dp dharmesh.par...@gmail.com wrote: So the statuses/friends_timeline api call gives an authentated users and his friends statuses. Basically that authentacted users home page. Now is there any similar way to get any users home timeline. statuses/ user_timeline gives the statuses for any user specified by a userid. But it gives what is posted by them only. An e.g to clear things up User X is authenticated through API. the App makes a call and gets his home timeline using statuses/ friends_timeline . User X has a friend User Y. App can call statuses/user_timeline for user Y but that will return only User Ys statutes (which can also be got from statuses/friends_timeline earlier). What i want is an easy way so the the App can get User Y;s home time- line ( User Ys statuses as well User Y friends statuses). One can find User Ys friends and then call statuses/user_timeline for each of friend to get what i want. Seems to expensive in terms of api calls Any better way of doing this? i could not see the api supporting this directly. --dharmesh -- --Dharmesh
[twitter-dev] Re: Know the number of results only
On Mon, Sep 7, 2009 at 8:33 PM, 8-30 silverfrien...@gmail.com wrote: How do I get the number of results for a given search phrase? I don't want the results themselves, I just want to know the size of the results set for any given phrase. For example jnni hinklebootmurgh returns 0 results, where michael jackson returns gazillions. How can I get just the total number of results? I thought max_id might have something to do with it, but evidently not. This question has been asked a few times before - it isn't available. Nick
[twitter-dev] Still 401, Failed to validate oauth signature and token
Hi, As mentioned by many people, that a failure in the stage of request_token is probably caused by the unsynchronized system clock. That is somehow not the reason for my problem where I tried to implement the OAuth in java. Basically, the requested url plus the parameters is as: https://twitter.com/oauth/request_token?oauth_consumer_key=rfuDvUfcKACTug7tJQNQoauth_nonce=7987404850514744029oauth_signature_method=HMAC-SHA1oauth_timestamp=1252395244oauth_version=1.0oauth_signature=o2Vl8W8IlVTNQb0ylmvOWIDgUU8%3D I used the (long) Date.getTime()/1000 to get the current time in seconds and my system clock is synchronized anyway (GMT+2:00). It keeps returning Failed to validate oauth signature and token, I really don't know why this could happen. Any solution? Thanks.
[twitter-dev] Widget - external links ?
Hi everybody, I'm trying to use the widget to have a shoutbox. I'm using this one: http://twitter.com/goodies/widget_search I am using iframes, so when I click on the links of the shoutbox, they open only in the iframe. I there a way to set the target of all links in the shoutbox on _blank ? Best regards Chris
[twitter-dev] tracking URLs using Streaming API
Hi, I want to use the Streaming API to track all the statuses that include URLs from a particular domain. e.g. * I really like http://mysite.com;, * http://mysite.com/goodstuff is great etc. Given the current track api this doesn't seem to be possible? If I specify http://mysite.com; as a keyword, it doesn't match the above cases. Is there a way to do that? A specific keyword syntax perhaps? We happen to be using the Twitter4J java client, but I don't think this is a client issue. Using the search api, specifying mysite.com (but not http:// mysite.com) finds the statuses we want to match, but we would rather use the streaming api rather than polling. thanks, Robert
[twitter-dev] Delphi Twitter Checker
Hi, I've made a Delphi application that checks for your friends tweets and shows a ballon tooltip when new ones arrive. I think it may be useful because there are few twitter API examples using Delphi. I don't know if this is a good place for this kind of announcements, if it's not, please let me know where to post it Twitter Checker is a small application that checks your Twitter account and popups a ballon tooltip when one of your friends tweets. It's useful for people who are starting with twitter and don't want to have a full twitter client open all day but want to know when their friends tweet. It's written using Delphi 2009. It's freeware and Open Source. Application and source code can be downloaded here. http://tekblues.com/?page_id=171 Regards Javier Rojas Goñi tekbl...@gmail.com
[twitter-dev] Re: Bad response on Show
This is a very known issue and there are threads about it in this group once every 18 or so hours. On Tue, Sep 8, 2009 at 09:38, Francis Shanahan francisshana...@gmail.comwrote: I'm calling :http://twitter.com/users/show.xml My request works fine, it's signed correctly with a valid token etc. Every so often I get this response: !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/ TR/1999/REC-html401-19991224/strict.dtdhttp://www.w3.org/%0ATR/1999/REC-html401-19991224/strict.dtd !-- !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd; -- HTML HEAD META HTTP-EQUIV=Refresh CONTENT=0.1 META HTTP- EQUIV=Pragma CONTENT=no-cache META HTTP-EQUIV=Expires CONTENT=-1 TITLE/TITLE /HEAD BODYP/BODY /HTML No error is thrown and no reason code or anything comes back. Is this a bug on the Twitter side? Is this a known issue? -fs http://tweetarun.com -- Internets. Serious business.
[twitter-dev] Re: Spammers in followers list
An added benefit to this approach is it adds a disincentive for SPAM. Spammers don't waste time on things that no one will ever see... -ch On Sep 8, 9:12 am, Craig Hockenberry craig.hockenbe...@gmail.com wrote: As we're all aware, there has been a huge influx of spammy followers (e.g. @Girl12345.) These accounts are deactivated quickly enough, but we're seeing cases where they accounts hang around in the user's follower list. From the application's point-of-view, there's no way to know that the @Girl12345 account has been suspended so it goes to load more information (e.g. the relationship status.) This results in a 404 being returned. For the user, this presents a couple of problems: 1) They are being shown users who no longer exist and get errors if they try to query these users. 2) Some users find these (mostly adult) followers to be offensive and don't want to see them. I'm thinking about how our application might go about helping with these problems, but I can't find any good solutions. The main problem is that the followers list contains old data (that hasn't expired from a cache.) Would it be possible for Twitter to delay the addition of followers to the user's list? Presumably, most of these spammy followers are identified in the first 24-48 hours. If a user doesn't get flagged in that period of time, then they get added during the follower list update. -ch
[twitter-dev] Re: Spammers in followers list
Its going to be hard to please everyone, if there is a delay when followers are actually being added to the list, then users will be confused or annoyed why the following numbers are out of sync. People generally expect realtime changes, especially on twitter where many people use it to have realtime conversations. People get annoyed when you make them wait 10 seconds let alone 24 hours. Ideally, twitter could update the cache of the users who the offending account was following.. Not saying its an easy solution, but twitter knows every account that the user was following and looping through those users to remove the spam account in theory would not be too difficult. Quick and dirty solution would be to just invalidate the cache for the users that who the spam account follows, but that would put extra load on their backend.. They do have some method of keeping the list realtime, as when valid users follow or un-follow it is pretty much instantaneous, it just a matter of doing the looping to unfollow everyone that the offending account follows using the existing code path. I am sure someone at twitter has already thought of this, but its not very high priority for them. Someone has to write the script for the abuse team to use to perform this action and I think the developers are probably pretty busy already.
[twitter-dev] Re: Spammers in followers list
Speaking here more as a user than just as a developer - this approach would both not work and annoy many users. It would not work because it would merely delay the blocks which are the signals (among others I assume) to twitter that an account is a spammer - i.e. until people know that an account has followed them no one will know that the account exists (or very very very few people) and thus no one will have started to block the account. It would also depending on how implemented mean that users who, like myself (and many many many others) use multiple means of accessing Twitter would see different information via different means (i.e. perhaps see users in their followers list via the web who aren't there via applications/api calls?) Already the emails vs online list of followers is NOT very accurate - I have been seeing followers on my followers list who are NOT generating emails to me about the new follower (though others on the list before and later after a new follower are generating such emails). I try to go through my followers list and purge spammers (and block them) once a week or so - an amazing number of clear spam accounts are NOT being auto detected and blocked of late. Shannon On Tue, Sep 8, 2009 at 9:50 AM, Craig Hockenberry craig.hockenbe...@gmail.com wrote: An added benefit to this approach is it adds a disincentive for SPAM. Spammers don't waste time on things that no one will ever see... -ch On Sep 8, 9:12 am, Craig Hockenberry craig.hockenbe...@gmail.com wrote: As we're all aware, there has been a huge influx of spammy followers (e.g. @Girl12345.) These accounts are deactivated quickly enough, but we're seeing cases where they accounts hang around in the user's follower list. From the application's point-of-view, there's no way to know that the @Girl12345 account has been suspended so it goes to load more information (e.g. the relationship status.) This results in a 404 being returned. For the user, this presents a couple of problems: 1) They are being shown users who no longer exist and get errors if they try to query these users. 2) Some users find these (mostly adult) followers to be offensive and don't want to see them. I'm thinking about how our application might go about helping with these problems, but I can't find any good solutions. The main problem is that the followers list contains old data (that hasn't expired from a cache.) Would it be possible for Twitter to delay the addition of followers to the user's list? Presumably, most of these spammy followers are identified in the first 24-48 hours. If a user doesn't get flagged in that period of time, then they get added during the follower list update. -ch
[twitter-dev] Bad response on Show
I'm calling :http://twitter.com/users/show.xml My request works fine, it's signed correctly with a valid token etc. Every so often I get this response: !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/ TR/1999/REC-html401-19991224/strict.dtd !-- !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd; -- HTML HEAD META HTTP-EQUIV=Refresh CONTENT=0.1 META HTTP- EQUIV=Pragma CONTENT=no-cache META HTTP-EQUIV=Expires CONTENT=-1 TITLE/TITLE /HEAD BODYP/BODY /HTML No error is thrown and no reason code or anything comes back. Is this a bug on the Twitter side? Is this a known issue? -fs http://tweetarun.com
[twitter-dev] Spammers in followers list
As we're all aware, there has been a huge influx of spammy followers (e.g. @Girl12345.) These accounts are deactivated quickly enough, but we're seeing cases where they accounts hang around in the user's follower list. From the application's point-of-view, there's no way to know that the @Girl12345 account has been suspended so it goes to load more information (e.g. the relationship status.) This results in a 404 being returned. For the user, this presents a couple of problems: 1) They are being shown users who no longer exist and get errors if they try to query these users. 2) Some users find these (mostly adult) followers to be offensive and don't want to see them. I'm thinking about how our application might go about helping with these problems, but I can't find any good solutions. The main problem is that the followers list contains old data (that hasn't expired from a cache.) Would it be possible for Twitter to delay the addition of followers to the user's list? Presumably, most of these spammy followers are identified in the first 24-48 hours. If a user doesn't get flagged in that period of time, then they get added during the follower list update. -ch
[twitter-dev] Re: Implementing update via JS
On Mon, 7 Sep 2009 02:06:33 -0700 (PDT) Srinivas srinivas.venka...@gmail.com wrote: Hi, I have to implement updating Twitter status through JS. Need pointers on how to get started http://apiwiki.twitter.com/Libraries#JavaScript
[twitter-dev] Re: tracking URLs using Streaming API
In order to accomplish this, you need to follow each and every link that gets passed on Twitter to see if it matches the domain you are looking for. We do this on inView for our clients, and it may be what you are looking for: http://myinview.com (Note: This is our service, there may be others doing this, but if so, I am unaware of them) -Joel On Tue, Sep 8, 2009 at 4:37 AM, Robert Chatley rob...@metabroadcast.comwrote: Hi, I want to use the Streaming API to track all the statuses that include URLs from a particular domain. e.g. * I really like http://mysite.com;, * http://mysite.com/goodstuff is great etc. Given the current track api this doesn't seem to be possible? If I specify http://mysite.com; as a keyword, it doesn't match the above cases. Is there a way to do that? A specific keyword syntax perhaps? We happen to be using the Twitter4J java client, but I don't think this is a client issue. Using the search api, specifying mysite.com (but not http:// mysite.com) finds the statuses we want to match, but we would rather use the streaming api rather than polling. thanks, Robert
[twitter-dev] retriveing status of milion of users..
My problem is that , In my app,I want the users statuses to be retrieved from the point they join my app..and there is chance of million of users . I'll process those statuses for some specific data(secret :)). The most obvious solution that looks to me is that: using twitter stream api and using filter method with follow paramters. But i think this would lead to creating hundreds of connections to api/ method and listening to them continously if they have made a tweet which is a bad practice,..And also probably will block my app.. Does u guys can suggest any solution.. ?
[twitter-dev] Re: Getting screen_name from id without gazillion API calls?
Owkaye, Well, Twitter would not need to change the system (with id's an screenname's) because there is a user advantage to being able to change your screenname. But, maybe the Twitter API could return both ID and screen_name with only 1 call to the API. Programmers can then choose to work with ID and/or screen_name and the API calls would still be limited. Only the data returned would be (a little) more... But, as it stands, there seems to be no other way to get screen_names (for friends and or followers) without doing 1 API call for each person (ID) on the returndata, which amounts to alot of API calls. On Sep 5, 5:09 pm, owkaye owk...@gmail.com wrote: The ideal solution is for Twitter to change the system and allow each account to have only one screen name, all the time, forever, with no changes. Then a separate id value is not required because all account identification will be done by the original screen name. REST and SEARCH would finally be consistent. No extra calls to figure out who the user really is. Users would complain until they got used to the fact that they cannot change their screen names on a whim anymore, but they will learn to deal with it soon enough. Email doesn't just let you change your address whenever you feel like it, and I see no reason why Twitter should allow screen name changes either ... except that it takes more work to standardize the system in this way than to continue with what already exists. But with only the screen name as each unique account identifier things would certainly be much simpler. Many fewer requests to the server. Less data storage. And being that Twitter is supposed to be simple this seems like a goal worth pursuing, at least from my point of view. Owkaye When i request friends (or followers) from the Twitter API i want to get the screen_name's based on the id's. I use users/show for this, inputting the id and getting back de screen_name. This costs ALOT of API calls and i run into the API rate limit fast, especially with many friends. Is there a better way of getting screen_names for friends / followers? ( Better, meaning in fewer API calls.)
[twitter-dev] Re: Bad response on Show
While this issue is known and does show up on the list fairly frequently, I think the best solution is to point users who report this to the number of existing issues filed for this bug so that they may STAR them and be kept up to date about what is going on with the issue. http://code.google.com/p/twitter-api/issues/detail?id=1014 http://code.google.com/p/twitter-api/issues/detail?id=1015 http://code.google.com/p/twitter-api/issues/detail?id=968 On Sep 8, 12:02 pm, JDG ghil...@gmail.com wrote: This is a very known issue and there are threads about it in this group once every 18 or so hours. On Tue, Sep 8, 2009 at 09:38, Francis Shanahan francisshana...@gmail.comwrote: I'm calling :http://twitter.com/users/show.xml My request works fine, it's signed correctly with a valid token etc. Every so often I get this response: !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/ TR/1999/REC-html401-19991224/strict.dtdhttp://www.w3.org/%0ATR/1999/REC-html401-19991224/strict.dtd !-- !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd; -- HTML HEAD META HTTP-EQUIV=Refresh CONTENT=0.1 META HTTP- EQUIV=Pragma CONTENT=no-cache META HTTP-EQUIV=Expires CONTENT=-1 TITLE/TITLE /HEAD BODYP/BODY /HTML No error is thrown and no reason code or anything comes back. Is this a bug on the Twitter side? Is this a known issue? -fs http://tweetarun.com -- Internets. Serious business.
[twitter-dev] Re: Bad response on Show
Thank you both. On Sep 8, 1:47 pm, Naveen A knig...@gmail.com wrote: While this issue is known and does show up on the list fairly frequently, I think the best solution is to point users who report this to the number of existing issues filed for this bug so that they may STAR them and be kept up to date about what is going on with the issue. http://code.google.com/p/twitter-api/issues/detail?id=1014http://code.google.com/p/twitter-api/issues/detail?id=1015http://code.google.com/p/twitter-api/issues/detail?id=968 On Sep 8, 12:02 pm, JDG ghil...@gmail.com wrote: This is a very known issue and there are threads about it in this group once every 18 or so hours. On Tue, Sep 8, 2009 at 09:38, Francis Shanahan francisshana...@gmail.comwrote: I'm calling :http://twitter.com/users/show.xml My request works fine, it's signed correctly with a valid token etc. Every so often I get this response: !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/ TR/1999/REC-html401-19991224/strict.dtdhttp://www.w3.org/%0ATR/1999/REC-html401-19991224/strict.dtd !-- !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd; -- HTML HEAD META HTTP-EQUIV=Refresh CONTENT=0.1 META HTTP- EQUIV=Pragma CONTENT=no-cache META HTTP-EQUIV=Expires CONTENT=-1 TITLE/TITLE /HEAD BODYP/BODY /HTML No error is thrown and no reason code or anything comes back. Is this a bug on the Twitter side? Is this a known issue? -fs http://tweetarun.com -- Internets. Serious business.
[twitter-dev] following users using twitter steam api .filter method,follow predicate
Hii guys, I want to use twitter's streaming api with filter method and follow predicate., that said how can i follow thousands of users through single connection.. Or simply put getting tweets from thousands of users by following them through a single connection.. the problem is the url string grows exponentially as we go on increasing the user id's in the http string.. any ideas
[twitter-dev] Re: OAuth 408 Request Timeout
I've been having the same issue. It happens intermittently while attempting to authorize a just logged in user. Once that has occurred, any other access to the API proceeds as expected. Have you had any success in figuring out what could be the cause? Thanks, Tejus On Aug 30, 4:45 pm, J. W. johngw...@gmail.com wrote: Hello, I have been using the Ruby OAuth gem to handle Twitter authentication via OAuth. Most of the time it works fine. But there are a number of times in which a408RequestTimeouterror is thrown. This is thrown during either the Consumer RequestsRequestToken step or the Consumer Requests Access Token step. I have attempted to retry therequest, however it does not appear to help. I see that other's are encounter this issue as well: http://groups.google.com/group/twitter-development-talk/t/7ffc247b1ce...http://groups.google.com/group/twitter-development-talk/t/74b5311710d... Are there any recommended steps to work around this issue? Any advice would be appreciated. Thank you, JW
[twitter-dev] Re: Widget - external links ?
2009/9/8 Chris abcnoct...@googlemail.com: Hi everybody, I'm trying to use the widget to have a shoutbox. I'm using this one: http://twitter.com/goodies/widget_search I am using iframes, so when I click on the links of the shoutbox, they open only in the iframe. I there a way to set the target of all links in the shoutbox on _blank ? Put a base tag in the head section: http://www.w3schools.com/TAGS/tag_base.asp -Stuart -- http://stut.net/projects/twitter/
[twitter-dev] Re: 200 errors
We're seeing same error from time to time
[twitter-dev] Re: Getting screen_name from id without gazillion API calls?
I've done this this way: Every time I get a user's data- I store it in my database. Doesn't matter if its from gardenhose or a REST method. I track various versions of it and keep all changes (good data warehousing practice). Then, when I crawl a user's list of friends I ask the database if we already have the user (by id). If we've already got them, then I don't waste an API call in asking for it again (as I only have so many). If we don't have them, then I ask Twitter for it. If the next person I go through has all the same friends, then I never make an additional REST API requests. I also do this when accessing the Search API, to make sure I have all user profiles (at least in some stage). Unfortunately I have to do this one by screen_name/from_user because the Search API returns different user id numbers (Which I also store so I can match them if I must). I've got nearly 8M twitter user profiles this way so far and its always growing. -dave On Sep 8, 12:41 pm, dizid glasw...@gmail.com wrote: Owkaye, Well, Twitter would not need to change the system (with id's an screenname's) because there is a user advantage to being able to change your screenname. But, maybe the Twitter API could return both ID and screen_name with only 1 call to the API. Programmers can then choose to work with ID and/or screen_name and the API calls would still be limited. Only the data returned would be (a little) more... But, as it stands, there seems to be no other way to get screen_names (for friends and or followers) without doing 1 API call for each person (ID) on the returndata, which amounts to alot of API calls. On Sep 5, 5:09 pm, owkaye owk...@gmail.com wrote: The ideal solution is for Twitter to change the system and allow each account to have only one screen name, all the time, forever, with no changes. Then a separate id value is not required because all account identification will be done by the original screen name. REST and SEARCH would finally be consistent. No extra calls to figure out who the user really is. Users would complain until they got used to the fact that they cannot change their screen names on a whim anymore, but they will learn to deal with it soon enough. Email doesn't just let you change your address whenever you feel like it, and I see no reason why Twitter should allow screen name changes either ... except that it takes more work to standardize the system in this way than to continue with what already exists. But with only the screen name as each unique account identifier things would certainly be much simpler. Many fewer requests to the server. Less data storage. And being that Twitter is supposed to be simple this seems like a goal worth pursuing, at least from my point of view. Owkaye When i request friends (or followers) from the Twitter API i want to get the screen_name's based on the id's. I use users/show for this, inputting the id and getting back de screen_name. This costs ALOT of API calls and i run into the API rate limit fast, especially with many friends. Is there a better way of getting screen_names for friends / followers? ( Better, meaning in fewer API calls.)
[twitter-dev] Re: retriveing status of milion of users..
Sonam, You can do this with just one or two connections. There's a section in the wiki with some practical advice on updating predicates: http://apiwiki.twitter.com/Streaming-API-Documentation#UpdatingFilterPredicates -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Sep 8, 10:08 am, Sonam Singh sonamsingh...@yahoo.co.in wrote: My problem is that , In my app,I want the users statuses to be retrieved from the point they join my app..and there is chance of million of users . I'll process those statuses for some specific data(secret :)). The most obvious solution that looks to me is that: using twitter stream api and using filter method with follow paramters. But i think this would lead to creating hundreds of connections to api/ method and listening to them continously if they have made a tweet which is a bad practice,..And also probably will block my app.. Does u guys can suggest any solution.. ?
[twitter-dev] Re: tracking URLs using Streaming API
You could track on http, but you'll be rate limited. You can track on mysite and I think you'll get what you want, and a little more, but if you track on mysite.com you probably won't get anything. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Sep 8, 4:37 am, Robert Chatley rob...@metabroadcast.com wrote: Hi, I want to use the Streaming API to track all the statuses that include URLs from a particular domain. e.g. * I really likehttp://mysite.com;, * http://mysite.com/goodstuffis great etc. Given the current track api this doesn't seem to be possible? If I specify http://mysite.com; as a keyword, it doesn't match the above cases. Is there a way to do that? A specific keyword syntax perhaps? We happen to be using the Twitter4J java client, but I don't think this is a client issue. Using the search api, specifying mysite.com (but not http:// mysite.com) finds the statuses we want to match, but we would rather use the streaming api rather than polling. thanks, Robert
[twitter-dev] Re: Recent Following and Follower Issues and Some Background on Social Graph
Eventually all requests will be handled by the third system, and the second system will be removed from production. I don't know how this will all play out. I'll see about getting Someone Who Knows to Do Something. -John On Sep 7, 11:03 pm, PJB pjbmancun...@gmail.com wrote: John: Will the third system be used if, e.g., the user has 1000 friends and we request friends/ids WITHOUT pagination? Or must we include pagination arguments even if 5000 to use the third system? PJB On Sep 7, 9:52 pm, John Kalucki jkalu...@gmail.com wrote: I don't know all the details, but my general understanding is that these bulk followers calls have been heavily returning 503s for quite some time now, and this is long established, but bad, behavior. These bulk calls are hard to support and they need to be moved over to some form of practical pagination scheme. Ideally, we'd offer a stream of social graph deltas on the Streaming API and this polling business could be tightly restricted. Bluntly, until further back-end work is in place, we can return 5k followers reliably from the third system, or we can attempt to return large result sets, but often throw 503s -- really, timeouts, from the second system. We cannot return bulk operations, or use row-based cursors, from the third system. Scraping the social graph is certainly valuable in some cases, but generally it's a low value proposition for users, and scraping is often is used to support abusive behavior. -John Kaluckihttp://twitter.com/jkalucki Services, Twitter Inc. On Sep 7, 9:27 pm, David W. d...@botanicus.net wrote: Hi John, On Sep 6, 3:59 pm, John Kalucki jkalu...@gmail.com wrote: resources. There is minor pagination jitter in one case and a certain class of row-count-based queries have to be deprecated (or limited) and replaced with cursor-based queries to be practical. For now, we're sending the row-count-queries queries back to the second system, which is otherwise idle, but isn't consistent with the first or third system. I am getting several emails per day at the moment from users telling me my app's results are wrong. The application currently asks for the entire follower/following ID list at once, using /followers/ids and / friends/ids. Does this count as a row-count-query? David
[twitter-dev] Re: Spammers in followers list
This is the app I wrote using the API. It looks at the ratio of follower to followed and blocks folks. Feel free to check it out and offer your suggestions. http://dogearedpress.com/curtains/ On Sep 8, 12:57 pm, Shannon Clark shannon.cl...@gmail.com wrote: Speaking here more as a user than just as a developer - this approach would both not work and annoy many users. It would not work because it would merely delay the blocks which are the signals (among others I assume) to twitter that an account is a spammer - i.e. until people know that an account has followed them no one will know that the account exists (or very very very few people) and thus no one will have started to block the account. It would also depending on how implemented mean that users who, like myself (and many many many others) use multiple means of accessing Twitter would see different information via different means (i.e. perhaps see users in their followers list via the web who aren't there via applications/api calls?) Already the emails vs online list of followers is NOT very accurate - I have been seeing followers on my followers list who are NOT generating emails to me about the new follower (though others on the list before and later after a new follower are generating such emails). I try to go through my followers list and purge spammers (and block them) once a week or so - an amazing number of clear spam accounts are NOT being auto detected and blocked of late. Shannon On Tue, Sep 8, 2009 at 9:50 AM, Craig Hockenberry craig.hockenbe...@gmail.com wrote: An added benefit to this approach is it adds a disincentive for SPAM. Spammers don't waste time on things that no one will ever see... -ch On Sep 8, 9:12 am, Craig Hockenberry craig.hockenbe...@gmail.com wrote: As we're all aware, there has been a huge influx of spammy followers (e.g. @Girl12345.) These accounts are deactivated quickly enough, but we're seeing cases where they accounts hang around in the user's follower list. From the application's point-of-view, there's no way to know that the @Girl12345 account has been suspended so it goes to load more information (e.g. the relationship status.) This results in a 404 being returned. For the user, this presents a couple of problems: 1) They are being shown users who no longer exist and get errors if they try to query these users. 2) Some users find these (mostly adult) followers to be offensive and don't want to see them. I'm thinking about how our application might go about helping with these problems, but I can't find any good solutions. The main problem is that the followers list contains old data (that hasn't expired from a cache.) Would it be possible for Twitter to delay the addition of followers to the user's list? Presumably, most of these spammy followers are identified in the first 24-48 hours. If a user doesn't get flagged in that period of time, then they get added during the follower list update. -ch
[twitter-dev] Re: Random 408 errors having been appearing the last 48 hours
For our app, this started happening just after the DOS attacks and have persisted since then. So my suspicion is that the 408 error is a throttling mechanism. 408 is a connection read timeout. The problem as I see it is that there is no way that the exception could get thrown so fast if there were really a connection timeout. Is it possible that twitter can customize the timeout for particular API callers? With no code changes on our end, (our app is a server app in java that uses the jtwitter libary) we see 408's and 200's. We haven't changed the code at all and the behavior seems to be about 60% 408 responses and 40% 200. We weren't doing a very good job of giving our users a message that would indicate it was a twitter API issue rather than our software so I have begun updating to the latest version of Jtwitter which handles the errors a lot more explicitly. However, when posting from my sandbox instance, I ONLY get 403 errors (Forbidden). Perhaps this is because the domain (localhost) doesn't match our API key? At any rate, it isn't possible for us to provide a curl output since we are posting via the jtwitter library so I don't know how to provide anything useful as to debugging but this is awfully frustrating for our customers. I'd love to know that there is a way to fix it on my end by doing something different. It will be a pain (we'll have to deploy code in order to make any changes) but it would help us satisfy our own customers. On Sep 6, 10:51 am, bosher bhellm...@gmail.com wrote: Random 408 errors are being returned when users are attempting to Sign in with Twitter on my site TweetMeNews.com. Has anyone else been seeing this? Twitter, is there any way you can expand on the error message instead of just saying 408? That would help us better Understand Report what's breaking... Thanks, Bretthttp://twitter.com/TweetMeNews/
[twitter-dev] Re: Followers count
If I'm not mistaken, that still requires you to page through 5000 at a time until you reach the end to figure out the number of followers. I don't need the user ids of each follower, just the count. Being able to get this with users/show is perfect because it only requires one API call. Except it doesn't update between status updates. Will this be fixed? - Jason On Sep 4, 8:51 pm, freefall tehgame...@googlemail.com wrote: Until today you could use:http://twitter.com/followers/ids.xml and get the total - this was way more accurate than getting it from user/show. They appear to ahve just lowerd this total to 5000 so that will no longer work (unless that's a bug). On Sep 2, 5:44 pm, Jason Tan jasonw...@gmail.com wrote: Hello, I have spent a good portion of today reading through closed, merged, and open issues onhttp://code.google.com/p/twitter-api/issues/list I am trying to figure out the best way to get an accurate followers count. Initially, I was using /users/show which returns the full user object, including the followers_count item. However, I have noticed that this number only updates when the user posts a tweet. If the user has no new tweets, the follower count is not updated. Data I was pulling in was many days old. I understand the need to cache data, but being unable to pull up an approximate count of followers from the past several days is a problem. I have seen this issue posted many times, but it is always merged into issue 474, which appears to only deal with the following flag, and not the followers_count. There was one issue (which I can't find anymore) where there was acknowledgment that the users/show data was cached until a new post was made but no mention of any fix or solution. My next approach was to use the statuses/user_timeline. I wasn't sure if the user object for each status would have the current value or the value at the time of the status update. When I grabbed the xml formatted response, I got (starting from the most recent status and going back): 1686, 1653, 1685, 1685, 1685, 1685, 1685... Through the rest of the statuses, it stayed the same. Interestingly, 1686 is the current value listed on the website. 1653 was the value I got from /users/show. And I'm quite certain that the followers count did not stay constant at 1685. Moreover, when I grabbed the json version of statuses/user_timeline, I got entirely different results: 1653, 1653, 1683, 1675, 1652, 1661, 1644... This seems to reflect the current number of followers at the time of the status update, unlike the XML feed. Anyways, to get back to my original question. How do I get an accurate followers count for a user? Also, why are there still XML/ JSON discrepancies (I came across a few reported issues that said they had been resolved). Any help or suggestions would be very much appreciated! Thanks, Jason P.S. The account I was using for the above examples was DailyPHP
[twitter-dev] Re: unexpected 401 unauthorized from streaming api
I am having the same problem today with @dshimy. On Sep 5, 11:30 am, Fabien Penso fabienpe...@gmail.com wrote: On Sat, Sep 5, 2009 at 3:38 PM, John Kaluckijkalu...@gmail.com wrote: There's probably a defect in the last version of the server, or maybe there's an inconsistent auth database that's tripping things up. I tried to reproduce this numerous ways last night, and I think I saw this issue once, but I wasn't sure. If there's a defect, it's subtle. I had the same issue today but it came back to normal few minutes later, and worked since.
[twitter-dev] followers/ids for users with millions of followers
Hi everyone, I was wondering if anyone had any suggestions on how to use followers/ ids to store the followers of a user who may have millions of followers. The API says there you can page through each result set of 5,000. But wouldn't one eventually hit their request limit for their IP? Michael
[twitter-dev] Re: What is 140 characters?
It's been nearly 6 months. Has this question been answered? If so I missed it. On Tue, Mar 24, 2009 at 9:36 PM, Alex Paynea...@twitter.com wrote: Unfortunately, nothing definitive. We're still looking into this. On Tue, Mar 24, 2009 at 07:56, Craig Hockenberry craig.hockenbe...@gmail.com wrote: Any news from the Service Team? I'd really like to get the counters right in an upcoming release... -ch On Mar 6, 12:18 pm, Alex Payne a...@twitter.com wrote: I'm taking this email to our Service Team, the folks who work on the back-end of the service. The whole message body changing as it moves from cache to backing store thing is totally unacceptable. Answers soon. On Fri, Mar 6, 2009 at 09:43, Craig Hockenberry craig.hockenbe...@gmail.com wrote: Some discussion about this thread popped up on Twitter yesterday: http://groups.google.com/group/twitter-development-talk/browse_thread/ thread/44be91d5ec5850fa Alex states that it's 140 bytes per tweet. So, of course, Loren Brichter and I tried to prove that. With the following results: 1) 140 characters that including ones that include HTML entities: http://twitter.com/gnitset/status/1286202252 At the time of posting, this tweet showed up on the site and in feeds with all 140 characters. After a few hours, the was converted to lt;, increasing the count per character from one to four bytes and decreasing the tweet length from 140 characters to 69. (You can see this truncation at the end of the tweet: the is from lt;) Presumably, this happens as tweets in the memcache are written though to the backing store. I also see a lot of Twitter clients that don't realize how special the lt; and gt; entities are. It took me a LONG time to figure out what was going on here. 2) 140 Unicode _multi-byte_ characters: http://twitter.com/atebits/ status/1286199010 What's curious is that Loren's example with 140 characters uses the Unicode 27A1 glyph. It uses 3 bytes in UTF-8. Why didn't it get truncated? This seems to contradict Alex's statement in the thread mentioned above. As people start to use things like Emoji, tinyarro.ws and generally figure out that Unicode (UTF-8) is a valid type of data on Twitter, our clients should adapt and display more accurate characters remaining counts. I can count bytes instead of characters, but I'm not sure if I should or not. No one likes a truncated tweet: we need an explicit statement on how to count and submit multi-byte characters and entities. -ch -- Alex Payne - API Lead, Twitter, Inc.http://twitter.com/al3x -- Alex Payne - API Lead, Twitter, Inc. http://twitter.com/al3x
[twitter-dev] Re: tweets
Dick, Better ask questiosn in English here ;) Als ik een tweet zend kom ik deze naderhand niet tegen bij degene die ik volg. Klopt, diegene aan wie jij een tweet stuurt moet jou volgen (i.p.v. wat jij boven beschrijft, nl. dat jij diegene volgt) Als er een tweet gestuurd woord door de gene die ik volg komt hij wel op mijn site maar niet andersom. Dat lijkt ook te kloppen: jij volgt diegene, dus je krijgt z'n tweets te zien (via API of web, maakt niet uit) heb ik iets verkeerd ingesteld soms? Lijkt mij verwachtte gedrag vh systeem Marc
[twitter-dev] Data from Dead Accounts
Hi, We have an issue with some accounts being active for a brief while and then going dead. We are using the streaming API and the REST API for our application. Streaming API doesn't notify me in any way, if the account I was following becomes dead. Example: http://twitter.com/warped09 - this existed till a few days back - now its dead. Is there some way you could give a status update on this event (account going dead), if its in our follow list? The REST API returns with a message that looks like this: {request:\/statuses\/user_timeline.json? screen_name=warped09count=5,error:This method requires authentication.} - the error message is completely irrelevant to the actual error of the account being dead. I verified - it isn't an authentication issue, I can get responses from valid accounts using the same program. Could you modify the error message to reflect the real error ? Or was this an one-off case? I need to design the application accordingly to realize that the account has been deleted / has become dead. Thanks, Lakshmi Naarayanan R -
[twitter-dev] 401 status 98% of the time
I have several twitter accounts; personal, business, and project related. When trying to auth to the stream api with any of them I get a 401 error 98% of the time. Just a few days ago I had no problem connecting. @amccloud on twitter
[twitter-dev] Re: 2 week advance notice: changes to /friends/ids and /followers/ids
I remember reading about this a while back. Has this been deployed yet? The wiki doesn't look like it has any info about cursors. Thanks! Yu-Shan On Tue, Aug 4, 2009 at 10:18 AM, Alex Payne a...@twitter.com wrote: Once we deprecate the page parameter, it will simply be ignored and the method will attempt to return the entire result set. On Sun, Aug 2, 2009 at 15:15, janoles...@mobileways.de wrote: Hi Alex, In two weeks, we'll be addressing this with a change in back-end infrastructure. The page parameter will be replaced with a cursor does this mean the page parameter won't work anymore after the change? What's happening to those calls to the API still containing the page=x parameter? Cheers Ole -- Jan Ole Suhr s...@mobileways.de http://twitter.com/janole -- Alex Payne - Platform Lead, Twitter, Inc. http://twitter.com/al3x -- “When nothing seems to help, I go look at a stonecutter hammering away at his rock perhaps a hundred times without as much as a crack showing in it. Yet at the hundred and first blow it will split in two, and I know it was not that blow that did it, but all that had gone before.” — Jacob Riis
[twitter-dev] Re: Data from Dead Accounts
The Streaming API does not currently offer social graph changes. This is an often requested feature. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Sep 8, 2:31 pm, Narayan lakshminaarayana...@gmail.com wrote: Hi, We have an issue with some accounts being active for a brief while and then going dead. We are using the streaming API and the REST API for our application. Streaming API doesn't notify me in any way, if the account I was following becomes dead. Example:http://twitter.com/warped09- this existed till a few days back - now its dead. Is there some way you could give a status update on this event (account going dead), if its in our follow list? The REST API returns with a message that looks like this: {request:\/statuses\/user_timeline.json? screen_name=warped09count=5,error:This method requires authentication.} - the error message is completely irrelevant to the actual error of the account being dead. I verified - it isn't an authentication issue, I can get responses from valid accounts using the same program. Could you modify the error message to reflect the real error ? Or was this an one-off case? I need to design the application accordingly to realize that the account has been deleted / has become dead. Thanks, Lakshmi Naarayanan R -
[twitter-dev] Re: 200 errors
Error from Safari when my feeds fail: Safari can’t open the page “feed://twitter.com/statuses/user_timeline/ 18918483.rss”. The error is: “The feed could not be loaded because the content is not in a known feed format.” (PubSub:2) Please choose Safari Report Bugs to Apple, note the error number, and describe what you did before you saw this message. After hitting refresh, the feed will be fixed and my PHP parser will correctly parse the pages. -j On Aug 9, 12:27 am, Chris Babcock cbabc...@asciiking.com wrote: This is what the 200 response is looking like: [u...@cl-t090-563cl bin]$ time curl -Lsim 10http://twitter.com/account/rate_limit_status.xml HTTP/1.0 200 OK Connection: Close Pragma: no-cache cache-control: no-cache Refresh: 0.1 Content-Type: text/html; charset=iso-8859-1 !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd; !-- !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd; -- HTML HEAD META HTTP-EQUIV=Refresh CONTENT=0.1 META HTTP-EQUIV=Pragma CONTENT=no-cache META HTTP-EQUIV=Expires CONTENT=-1 TITLE/TITLE /HEAD BODYP/BODY /HTML real 0m0.100s user 0m0.002s sys 0m0.004s [u...@cl-t090-563cl bin]$ time curl -Lsim 10http://twitter.com/account/rate_limit_status.xml HTTP/1.1 200 OK Date: Sun, 09 Aug 2009 07:17:05 GMT Server: hi Last-Modified: Sun, 09 Aug 2009 07:17:05 GMT Status: 200 OK ETag: d3498c2414150299df3cc1f6bb73b92c Pragma: no-cache Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post-check=0 Content-Type: application/xml; charset=utf-8 Content-Length: 302 Expires: Tue, 31 Mar 1981 05:00:00 GMT X-Revision: 5a9a0d1ff0ba64c181510974278cfccc10e77d0b X-Transaction: 1249802225-83448-6420 Set-Cookie: _twitter_sess=BAh7BzoHaWQiJWVkNjk5Njk2YWNhNjQ3ZjgyOGQzNzdjNTAzMTE3ZjBmIgpm% 250AbGFzaElDOidBY3Rpb25Db250cm9sbGVyOjpGbGFzaDo6Rmxhc2hIYXNoewAG%250AOgpAdX NlZHsA--639086f2287f85ef9e07f98d16adcce416b79e8d; domain=.twitter.com; path=/ Vary: Accept-Encoding Connection: close ?xml version=1.0 encoding=UTF-8? hash remaining-hits type=integer150/remaining-hits hourly-limit type=integer150/hourly-limit reset-time-in-seconds type=integer1249805825/reset-time-in-seconds reset-time type=datetime2009-08-09T08:17:05+00:00/reset-time /hash real 0m0.184s user 0m0.002s sys 0m0.003s In a browser that would be functionally the same as a 302, but I'm not using a browser so the semantics are kind of important. It *seems* to happen whenever I hit the API with a cold request. Pure speculation. If I think of a way to test it, I will do so. Chris Babcock
[twitter-dev] Re: 401 status 98% of the time
Several people have reported similar behavior, but I haven't been able to reproduce. I'm going to look into these erratic 401s in more detail this evening. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc. On Sep 8, 2:36 pm, Andrew McCloud and...@amccloud.com wrote: I have several twitter accounts; personal, business, and project related. When trying to auth to the stream api with any of them I get a 401 error 98% of the time. Just a few days ago I had no problem connecting. @amccloud on twitter
[twitter-dev] Re: 200 errors
I'm also getting these errors. To get the feed working again, I have to pull up the feed on Safari, and it will show an error. If I hit refresh, the page will pull new feeds and my PHP pages which parse the feed also gets refreshed. -j On Aug 9, 12:27 am, Chris Babcock cbabc...@asciiking.com wrote: This is what the 200 response is looking like: [u...@cl-t090-563cl bin]$ time curl -Lsim 10http://twitter.com/account/rate_limit_status.xml HTTP/1.0 200 OK Connection: Close Pragma: no-cache cache-control: no-cache Refresh: 0.1 Content-Type: text/html; charset=iso-8859-1 !DOCTYPE html PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd; !-- !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01//EN http://www.w3.org/TR/html4/strict.dtd; -- HTML HEAD META HTTP-EQUIV=Refresh CONTENT=0.1 META HTTP-EQUIV=Pragma CONTENT=no-cache META HTTP-EQUIV=Expires CONTENT=-1 TITLE/TITLE /HEAD BODYP/BODY /HTML real 0m0.100s user 0m0.002s sys 0m0.004s [u...@cl-t090-563cl bin]$ time curl -Lsim 10http://twitter.com/account/rate_limit_status.xml HTTP/1.1 200 OK Date: Sun, 09 Aug 2009 07:17:05 GMT Server: hi Last-Modified: Sun, 09 Aug 2009 07:17:05 GMT Status: 200 OK ETag: d3498c2414150299df3cc1f6bb73b92c Pragma: no-cache Cache-Control: no-cache, no-store, must-revalidate, pre-check=0, post-check=0 Content-Type: application/xml; charset=utf-8 Content-Length: 302 Expires: Tue, 31 Mar 1981 05:00:00 GMT X-Revision: 5a9a0d1ff0ba64c181510974278cfccc10e77d0b X-Transaction: 1249802225-83448-6420 Set-Cookie: _twitter_sess=BAh7BzoHaWQiJWVkNjk5Njk2YWNhNjQ3ZjgyOGQzNzdjNTAzMTE3ZjBmIgpm% 250AbGFzaElDOidBY3Rpb25Db250cm9sbGVyOjpGbGFzaDo6Rmxhc2hIYXNoewAG%250AOgpAdX NlZHsA--639086f2287f85ef9e07f98d16adcce416b79e8d; domain=.twitter.com; path=/ Vary: Accept-Encoding Connection: close ?xml version=1.0 encoding=UTF-8? hash remaining-hits type=integer150/remaining-hits hourly-limit type=integer150/hourly-limit reset-time-in-seconds type=integer1249805825/reset-time-in-seconds reset-time type=datetime2009-08-09T08:17:05+00:00/reset-time /hash real 0m0.184s user 0m0.002s sys 0m0.003s In a browser that would be functionally the same as a 302, but I'm not using a browser so the semantics are kind of important. It *seems* to happen whenever I hit the API with a cold request. Pure speculation. If I think of a way to test it, I will do so. Chris Babcock
[twitter-dev] Re: Data from Dead Accounts
Hmm.. Any suggestions on the REST API front? Is there any standardized error message I can parse and process? Thanks, On Sep 8, 5:42 pm, John Kalucki jkalu...@gmail.com wrote: The Streaming API does not currently offer social graph changes. This is an often requested feature. -John Kaluckihttp://twitter.com/jkalucki Services, Twitter Inc. On Sep 8, 2:31 pm, Narayan lakshminaarayana...@gmail.com wrote: Hi, We have an issue with some accounts being active for a brief while and then going dead. We are using the streaming API and the REST API for our application. Streaming API doesn't notify me in any way, if the account I was following becomes dead. Example:http://twitter.com/warped09-this existed till a few days back - now its dead. Is there some way you could give a status update on this event (account going dead), if its in our follow list? The REST API returns with a message that looks like this: {request:\/statuses\/user_timeline.json? screen_name=warped09count=5,error:This method requires authentication.} - the error message is completely irrelevant to the actual error of the account being dead. I verified - it isn't an authentication issue, I can get responses from valid accounts using the same program. Could you modify the error message to reflect the real error ? Or was this an one-off case? I need to design the application accordingly to realize that the account has been deleted / has become dead. Thanks, Lakshmi Naarayanan R -
[twitter-dev] Re: 2 week advance notice: changes to /friends/ids and /followers/ids
It hasn't been deployed yet, but it's still gonna happen. Will update when I know more. On Tue, Sep 8, 2009 at 13:59, Yu-Shan Fungambivale...@gmail.com wrote: I remember reading about this a while back. Has this been deployed yet? The wiki doesn't look like it has any info about cursors. Thanks! Yu-Shan On Tue, Aug 4, 2009 at 10:18 AM, Alex Payne a...@twitter.com wrote: Once we deprecate the page parameter, it will simply be ignored and the method will attempt to return the entire result set. On Sun, Aug 2, 2009 at 15:15, janoles...@mobileways.de wrote: Hi Alex, In two weeks, we'll be addressing this with a change in back-end infrastructure. The page parameter will be replaced with a cursor does this mean the page parameter won't work anymore after the change? What's happening to those calls to the API still containing the page=x parameter? Cheers Ole -- Jan Ole Suhr s...@mobileways.de http://twitter.com/janole -- Alex Payne - Platform Lead, Twitter, Inc. http://twitter.com/al3x -- “When nothing seems to help, I go look at a stonecutter hammering away at his rock perhaps a hundred times without as much as a crack showing in it. Yet at the hundred and first blow it will split in two, and I know it was not that blow that did it, but all that had gone before.” — Jacob Riis -- Alex Payne - Platform Lead, Twitter, Inc. http://twitter.com/al3x
[twitter-dev] Re: Change in API
So, I'm still having trouble. I have the following code (cribbed from a tutorial) which is very simple and should work but does not: Start of Code ?php $twitter_api_url = http://twitter.com/statuses/update.xml;; $twitter_data = status=Updating the API CAlls; $twitter_user = [username]; $twitter_password = [password]; $ch = curl_init($twitter_api_url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $twitter_data); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERPWD, {$twitter_user}: {$twitter_password}); $twitter_data = curl_exec($ch); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpcode == 200) { echo Congratulations, Tweet was posted correctly.; }else{ echo Something went wrong, and the tweet wasn't posted.; } ? =End of Code = Can anyone tell me what I'm doing wrong? (I have changed the username and password values for this post, normally, they are correct. Thanks On Sep 4, 5:44 pm, Peter Denton petermden...@gmail.com wrote: It may be that posts were changed to gets. On Sep 4, 2009, at 2:21 PM, Sean Fawcett s...@fawcettassociates.com wrote: Hi: A couple of months ago, I received an email from Twitter about some changes in the API. I was, at that time, up to my eyeballs with a time sensitive project and did not have time to follow up. Now, I notice that a very simple function that I created, allowing a user to fill in a text field from a web page and post a Tweet, no longer works. Is there something I missed? What do I need to do to make sure my old code (March '09) now works with the API changes. Any insight would be very helpful. Thanks Sean
[twitter-dev] Geocoded OR search broken?
Until a couple of hours ago, searching for something like edmonton OR #yeg OR near:edmonton (or the API equivalent) worked just fine. Now it doesn't return anything new, and seems to return an odd set of old results. You can search for them separately, as in edmonton OR #yeg and near:edmonton but not together. What gives?
[twitter-dev] Re: Geocoded OR search broken?
Our Search Team informs me that they shipped a new query parser today. This is likely a bug in the new parser, and I've let them know about it. On Tue, Sep 8, 2009 at 17:48, Mack D. Malemaster...@gmail.com wrote: Until a couple of hours ago, searching for something like edmonton OR #yeg OR near:edmonton (or the API equivalent) worked just fine. Now it doesn't return anything new, and seems to return an odd set of old results. You can search for them separately, as in edmonton OR #yeg and near:edmonton but not together. What gives? -- Alex Payne - Platform Lead, Twitter, Inc. http://twitter.com/al3x
[twitter-dev] Re: Geocoded OR search broken?
Awesome, thanks! On Sep 8, 7:05 pm, Alex Payne a...@twitter.com wrote: Our Search Team informs me that they shipped a new query parser today. This is likely a bug in the new parser, and I've let them know about it. On Tue, Sep 8, 2009 at 17:48, Mack D. Malemaster...@gmail.com wrote: Until a couple of hours ago, searching for something like edmonton OR #yeg OR near:edmonton (or the API equivalent) worked just fine. Now it doesn't return anything new, and seems to return an odd set of old results. You can search for them separately, as in edmonton OR #yeg and near:edmonton but not together. What gives? -- Alex Payne - Platform Lead, Twitter, Inc.http://twitter.com/al3x
[twitter-dev] Re: Geocoded OR search broken?
Geocoded API searches are also broken. This is the geocoding example from the API documentation, which used to work and now doesn't: http://search.twitter.com/search.atom?geocode=40.757929%2C-73.985506%2C25km My website (blablabra.net) does similar searches and now receives only 403 Forbidden errors or an empty XML/JSON with You must enter a query if I try this search on my browser window. On Sep 8, 10:05 pm, Alex Payne a...@twitter.com wrote: Our Search Team informs me that they shipped a new query parser today. This is likely a bug in the new parser, and I've let them know about it. On Tue, Sep 8, 2009 at 17:48, Mack D. Malemaster...@gmail.com wrote: Until a couple of hours ago, searching for something like edmonton OR #yeg OR near:edmonton (or the API equivalent) worked just fine. Now it doesn't return anything new, and seems to return an odd set of old results. You can search for them separately, as in edmonton OR #yeg and near:edmonton but not together. What gives? -- Alex Payne - Platform Lead, Twitter, Inc.http://twitter.com/al3x
[twitter-dev] Re: 200 errors
This happens to me when I do json get requests as well. It happens very inconsistently during a normal session, but I can almost always reproduce it if I let the client sit for a while and then try. Is almost as if the server can't authenticate the request fast enough and throws back an empty html page by default. On Sep 7, 10:48 am, Rich rhyl...@gmail.com wrote: Can we please hear something from someone at Twitter about this, it's becoming unusable with constant XML errors On Sep 7, 4:51 am, Naveen A knig...@gmail.com wrote: We are seeing this HTML META REFRESH as well from our clients. We are a mobile application and seeing this issue more and more frequently to the point that application is not functioning properly, its hard for use to provide any specific ip data as the carriers are most likely proxying the requests from the device. It is not limited to a specific api call either, it is a systemic issue across a wide range of calls we make. There was a ticket related to the issue in the bug tracker for search, but it has been closed and I think it should be re-opened as it is still a problemhttp://code.google.com/p/twitter-api/issues/detail?id=968 Any feedback would be appreciated. On Sep 6, 3:01 pm, Rich rhyl...@gmail.com wrote: Yeah it's happening to me again, same as my previous email, except the time stamp will be around 2 minutes ago On Sep 6, 4:05 pm, twittme_mobi nlupa...@googlemail.com wrote: Hi Ryan, I am getting the same error - i can found it in the logs of my app every day - at least 20 times. 1. The IP of the machine making requests to the Twitter API. If you're behind NAT, please be sure to send us your *external* IP. --- Name: twittme.mobi Address: 67.222.129.154 2. The IP address of the machine you're contacting in the Twitter cluster. You can find this on UNIX machines via the host or nslookup commands, and on Windows machines via the nslookup command. --- Name: twitter.com Address: 128.121.146.100 3. The Twitter API URL (method) you're requesting and any other details about the request (GET vs. POST, parameters, headers, etc.). --- 'account/rate_limit_status.xml' 4. Your host operating system, browser (including version), relevant cookies, and any other pertinent information about your environment. --- Linux, mobile browser,firefox, no cookies used. 5. What kind of network connection you have and from which provider, and what kind of network connectivity devices you're using. --- devices are mostly mobile..probably using mobile connections or wireless. Thanks! On Sep 5, 2:54 pm, Alex hyc...@gmail.com wrote: hi Ryan, any update on this issue ?
[twitter-dev] Re: Geocoded OR search broken?
FFS. Any chance that things will actually be tested before they are rolled out into PRODUCTION? Dewald On Sep 8, 10:25 pm, Jose Tinoco jose.tin...@gmail.com wrote: Geocoded API searches are also broken. This is the geocoding example from the API documentation, which used to work and now doesn't: http://search.twitter.com/search.atom?geocode=40.757929%2C-73.985506%... My website (blablabra.net) does similar searches and now receives only 403 Forbidden errors or an empty XML/JSON with You must enter a query if I try this search on my browser window.
[twitter-dev] Re: Know the number of results only
But then how does the search know it has zero results, and how does it know when its reached the end of the results, ie, there are no more results to fetch? 8-30. On Sep 9, 1:22 am, Nick Arnett nick.arn...@gmail.com wrote: On Mon, Sep 7, 2009 at 8:33 PM, 8-30 silverfrien...@gmail.com wrote: How do I get the number of results for a given search phrase? I don't want the results themselves, I just want to know the size of the results set for any given phrase. For example jnni hinklebootmurgh returns 0 results, where michael jackson returns gazillions. How can I get just the total number of results? I thought max_id might have something to do with it, but evidently not. This question has been asked a few times before - it isn't available. Nick
[twitter-dev] Re: Geocoded OR search broken?
These people should notify us about these changes: http://twitter.com/twitterapi On Tue, Sep 8, 2009 at 10:10 PM, Hrishikesh Bakshi bakshi.hrishik...@gmail.com wrote: Quick fix: Add q=* to your URL On Tue, Sep 8, 2009 at 10:04 PM, Dewald Pretorius dpr...@gmail.comwrote: FFS. Any chance that things will actually be tested before they are rolled out into PRODUCTION? Dewald On Sep 8, 10:25 pm, Jose Tinoco jose.tin...@gmail.com wrote: Geocoded API searches are also broken. This is the geocoding example from the API documentation, which used to work and now doesn't: http://search.twitter.com/search.atom?geocode=40.757929%2C-73.985506%. .. My website (blablabra.net) does similar searches and now receives only 403 Forbidden errors or an empty XML/JSON with You must enter a query if I try this search on my browser window. -- Hrishikesh Bakshi -- Hrishikesh Bakshi
[twitter-dev] Re: Geocoded OR search broken?
Quick fix: Add q=* to your URL On Tue, Sep 8, 2009 at 10:04 PM, Dewald Pretorius dpr...@gmail.com wrote: FFS. Any chance that things will actually be tested before they are rolled out into PRODUCTION? Dewald On Sep 8, 10:25 pm, Jose Tinoco jose.tin...@gmail.com wrote: Geocoded API searches are also broken. This is the geocoding example from the API documentation, which used to work and now doesn't: http://search.twitter.com/search.atom?geocode=40.757929%2C-73.985506%... My website (blablabra.net) does similar searches and now receives only 403 Forbidden errors or an empty XML/JSON with You must enter a query if I try this search on my browser window. -- Hrishikesh Bakshi
[twitter-dev] Streaming API -- Excessive 401 defect fixed
A few corner cases were causing excessive rate limiting on the Streaming API. One bad login, perhaps due to an unparsable predicate, or other minor validation issue, would lock out some users in some cases. Another class of users were only allowed in once and were subsequently limited. The vast majority of users were unaffected by this recently introduced defect. All such cases should be resolved. -John Kalucki http://twitter.com/jkalucki Services, Twitter Inc.
[twitter-dev] Re: since_retweet_id needed?
anyone? On Sep 2, 3:40 pm, hansamann sven.hai...@googlemail.com wrote: To track retweets over time and to not waste resources, I believe it would be great to get a since_retweet_id parameter for the new retweet status methods like statuses retweeted_to_me If we just have a status_id, you cannot pull for new retweets over time I believe. If you use the statusId, once you pulled a status with that Id, you should theoretically no longer get any more retweets for that status. Now having a since_retweet_id makes a lot of sense in this case. You can poll for new retweets without having to pull in the last 50 or so all the time, which saves resources. What do you think? Cheers Sven
[twitter-dev] Re: 2 week advance notice: changes to /friends/ids and /followers/ids
Is the cursor parameter usage explained anywhere? Can't find it on the API doc site. On Sep 8, 2009, at 2:10 PM, Alex Payne a...@twitter.com wrote: It hasn't been deployed yet, but it's still gonna happen. Will update when I know more. On Tue, Sep 8, 2009 at 13:59, Yu-Shan Fungambivale...@gmail.com wrote: I remember reading about this a while back. Has this been deployed yet? The wiki doesn't look like it has any info about cursors. Thanks! Yu-Shan On Tue, Aug 4, 2009 at 10:18 AM, Alex Payne a...@twitter.com wrote: Once we deprecate the page parameter, it will simply be ignored and the method will attempt to return the entire result set. On Sun, Aug 2, 2009 at 15:15, janoles...@mobileways.de wrote: Hi Alex, In two weeks, we'll be addressing this with a change in back-end infrastructure. The page parameter will be replaced with a cursor does this mean the page parameter won't work anymore after the change? What's happening to those calls to the API still containing the page=x parameter? Cheers Ole -- Jan Ole Suhr s...@mobileways.de http://twitter.com/janole -- Alex Payne - Platform Lead, Twitter, Inc. http://twitter.com/al3x -- “When nothing seems to help, I go look at a stonecutter hammering away at his rock perhaps a hundred times without as much as a crack showing in it. Yet at the hundred and first blow it will split in two, and I know it was not that blow that did it, but all that had gone before.” — Jacob Riis -- Alex Payne - Platform Lead, Twitter, Inc. http://twitter.com/al3x
[twitter-dev] Re: What is 140 characters?
Hi There, I'm sorry this never got updated. Some changes have been made and are waiting to go out now. When I switched from working on the Platform (formerly API) team to my focus on international I took over this issue. Once this current fix is deployed (probably in a week or so since I'm traveling at the moment) the definition of a character will be consistent throughout our API. The new change will always compute length based on the Unicode NFC [1] version of the string. Using the NFC form makes the 140 character limit based on the length as displayed rather than some under-the-cover byte arithmetic. I more than agree with the above statement that a character is a character and Twitter shouldn't care. Data should be data. The main issue with that is that some clients compose characters and some don't. My common example of this is é. Depending on your client Twitter could get: é - 1 byte - URL Encoded UTF-8: %C3%A9 - http://www.fileformat.info/info/unicode/char/00e9/index.htm -- or -- é - 2 bytes - URL Encoded UTF-8: %65%CC%81 - http://www.fileformat.info/info/unicode/char/0065/index.htm + plus: http://www.fileformat.info/info/unicode/char/0301/index.htm So, my fix will make it so that no matter the client if the user sees é it counts as a single character. I'll announce something in the change log once my fix is deployed. Thanks; — Matt Sanford / @mzsanford [1] - http://www.unicode.org/reports/tr15/ On Sep 9, 6:05 am, TjL luo...@gmail.com wrote: It's been nearly 6 months. Has this question been answered? If so I missed it. On Tue, Mar 24, 2009 at 9:36 PM, Alex Paynea...@twitter.com wrote: Unfortunately, nothing definitive. We're still looking into this. On Tue, Mar 24, 2009 at 07:56, Craig Hockenberry craig.hockenbe...@gmail.com wrote: Any news from the Service Team? I'd really like to get the counters right in an upcoming release... -ch On Mar 6, 12:18 pm, Alex Payne a...@twitter.com wrote: I'm taking this email to our Service Team, the folks who work on the back-end of the service. The whole message body changing as it moves from cache to backing store thing is totally unacceptable. Answers soon. On Fri, Mar 6, 2009 at 09:43, Craig Hockenberry craig.hockenbe...@gmail.com wrote: Some discussion about this thread popped up on Twitter yesterday: http://groups.google.com/group/twitter-development-talk/browse_thread/ thread/44be91d5ec5850fa Alex states that it's 140 bytes per tweet. So, of course, Loren Brichter and I tried to prove that. With the following results: 1) 140 characters that including ones that include HTML entities: http://twitter.com/gnitset/status/1286202252 At the time of posting, this tweet showed up on the site and in feeds with all 140 characters. After a few hours, the was converted to lt;, increasing the count per character from one to four bytes and decreasing the tweet length from 140 characters to 69. (You can see this truncation at the end of the tweet: the is from lt;) Presumably, this happens as tweets in the memcache are written though to the backing store. I also see a lot of Twitter clients that don't realize how special the lt; and gt; entities are. It took me a LONG time to figure out what was going on here. 2) 140 Unicode _multi-byte_ characters: http://twitter.com/atebits/ status/1286199010 What's curious is that Loren's example with 140 characters uses the Unicode 27A1 glyph. It uses 3 bytes in UTF-8. Why didn't it get truncated? This seems to contradict Alex's statement in the thread mentioned above. As people start to use things like Emoji, tinyarro.ws and generally figure out that Unicode (UTF-8) is a valid type of data on Twitter, our clients should adapt and display more accurate characters remaining counts. I can count bytes instead of characters, but I'm not sure if I should or not. No one likes a truncated tweet: we need an explicit statement on how to count and submit multi-byte characters and entities. -ch -- Alex Payne - API Lead, Twitter, Inc.http://twitter.com/al3x -- Alex Payne - API Lead, Twitter, Inc. http://twitter.com/al3x
[twitter-dev] Getting sample of recent statues (not real time) for large list of specific users
For a new project we'll need to retrieve the text of recent statuses for a large group of specific users (several thousand to start), matching a smaller list of keyword strings. Both the users and keywords will grow over time but the keyword set will probably remain at least an order of magnitude smaller than the set of users and grow more slowly Real time is not important and the statuses can be a few hours old. Is using the 'shadow' method of the Streaming API with a negative 'count' parameter the best way to do this with a minimum load on the API? If so, what's the best way to obtain the access needed? It looks like the initial base of users is going to outstrip the 'filter' method's limitation, and 'filter' doesn't allow for the use of 'count' in the default role. Thanks --Lee Semel Recent Twitter projects: http://muckrack.com - http://venturemaven.com - http://twittorati.com - http://shortyawards.com - http://shortyawards.com/twitter_pro/