[twitter-dev] Re: via, RT, and reply_to linking
Sounds like a bad idea simply because the name of it IS 'in_REPLY_to_status_id', and retweets aren't replies. I wonder if Twitter will adopt retweets in any way, in the same way they did with replies? On Jun 22, 7:08 pm, Chad Etzel jazzyc...@gmail.com wrote: For the moment, I'll skip my rant about how stupid I think the via mechanism is, but I'm starting to notice a trend that several clients are now starting to set the in_reply_to_status_id data when the tweet is in fact a retweet/repost. I'm not sure how I feel about this. One the one hand, they aren't replies, so it just seems like noise. One the other hand, it does give a direct link to the original source. How do others feel about this? -Chad
[twitter-dev] Re: Storing OAuth Tokens in MySQL Database
You can store $tok['oauth_token'] $tok ['oauth_token_secret'] when the state==return. Both of this represent like username and password On Jun 22, 1:18 pm, DevinPitcher devinpitc...@gmail.com wrote: ?php session_start(); include(../../../settings/mysql.php); require_once('twitterOAuth.php'); mysql_connect($mysql_host, $mysql_username, $mysql_password) or die(ERROR: Could not connect to MySQL.); mysql_select_db($mysql_database) or die(ERROR: Could not connect to selected MySQL database.); $sql=SELECT * FROM cirrus_members WHERE member_id='$_SESSION [cirrus_member_id]'; $result=mysql_query($sql); $rows=mysql_fetch_array($result); $consumer_key = 'D6IpkcZ5RAXgVYpyLOuw'; $consumer_secret = 'B0NqK3CiNHAaDzseK5YQ6BKE9KrWPb4YGgDIoRVhEnQ'; $content = NULL; /* Set state if previous session */ $state = $_SESSION['oauth_state']; /* Checks if oauth_token is set from returning from twitter */ $session_token = $_SESSION['oauth_request_token']; /* Checks if oauth_token is set from returning from twitter */ $oauth_token = $_REQUEST['oauth_token']; /* Set section var */ $section = $_REQUEST['section']; if ($_REQUEST['access'] === 'revoke') { session_destroy(); session_start(); header(location:index.php); } /* If oauth_token is missing get it */ if ($_REQUEST['oauth_token'] != NULL $_SESSION['oauth_state'] === 'start') { $_SESSION['oauth_state'] = $state = 'returned'; } /* * 'default': Get a request token from twitter for new user * 'returned': The user has authorize the app on twitter */ switch ($state) { default: /* Create TwitterOAuth object with app key/secret */ $to = new TwitterOAuth($consumer_key, $consumer_secret); /* Request tokens from twitter */ $tok = $to-getRequestToken(); /* Save tokens for later */ $_SESSION['oauth_request_token'] = $token = $tok['oauth_token']; $_SESSION['oauth_request_token_secret'] = $tok ['oauth_token_secret']; $_SESSION['oauth_state'] = start; /* Build the authorization URL */ $request_link = $to-getAuthorizeURL($token); /* Build link that gets user to twitter to authorize the app */ $content .= 'a href='.$request_link.'Authenticate on Twitter.com/ a to access this application.'; break; case 'returned': /* If the access tokens are already set skip to the API call */ if ($_SESSION['oauth_access_token'] === NULL $_SESSION ['oauth_access_token_secret'] === NULL) { /* Create TwitterOAuth object with app key/secret and token key/ secret from default phase */ $to = new TwitterOAuth($consumer_key, $consumer_secret, $_SESSION ['oauth_request_token'], $_SESSION['oauth_request_token_secret']); /* Request access tokens from twitter */ $tok = $to-getAccessToken(); /* Save the access tokens. Normally these would be saved in a database for future use. */ $_SESSION['oauth_access_token'] = $tok['oauth_token']; $_SESSION['oauth_access_token_secret'] = $tok ['oauth_token_secret']; } /* Create TwitterOAuth with app key/secret and user access key/ secret */ $to = new TwitterOAuth($consumer_key, $consumer_secret, $_SESSION ['oauth_access_token'], $_SESSION['oauth_access_token_secret']); /* Run request on twitter API as user. */ if ($_GET['action'] == getinfo) { $content = $to-OAuthRequest ('https://twitter.com/account/verify_credentials.xml', array(), 'GET'); } if ($_GET['action'] == update) { $content = $to-OAuthRequest ('https://twitter.com/statuses/update.xml', array('status' = $_POST ['status']), 'POST'); } if ($_GET['action'] == getreplies) { $content = $to-OAuthRequest ('https://twitter.com/statuses/replies.xml', array(), 'GET'); } if ($_GET['action'] == ) { $content = $to-OAuthRequest('https:// twitter.com/statuses/friends_timeline.xml?count=5', array(), 'GET'); $showTweetBox = true; } break;} ? OK, so I have all of the code I need ready, but how can I store all of these tokens into a MySQL database for each user? I set up rows for each (oauth_state, oauth_token, oauth_token_secret, oauth_request_token, oauth_request_token_secret, oauth_access_token, and oauth_access_token_secret) so I can store any of them. I don't know which ones to store. Any ideas?
[twitter-dev] update: RSS feeds of twitter topics now available from web2express.org
Update: I just added RSS feed links on web2express.org digest website. The RSS feeds provide up to 100 new topics from today's twitter conversations or tweets in the last 3 days or 7 days. Twitter.com search gives you 10 top trending topics. If you want more top twitter topics, you may get the rss feeds from web2express.org. -aj -- AJ Chen, PhD Co-Chair, Semantic Web SIG, sdforum.org http://web2express.org Palo Alto, CA
[twitter-dev] 2-legged OAuth
Anyone have a working 2-legged OAuth example built on Twitter? (a little background: http://www.hueniverse.com/hueniverse/2009/03/taking-oauth-beyond-the-3rd-leg.html) We're actively migrating all of my app's users to OAuth right now, but this presents real integration challenges as we no longer have Twitter credentials to work with. Is there a functional standard here? @gotwalt
[twitter-dev] Re: Streaming API Terms Of Service change - multiple simultaneous logins discouraged
John, Can we have two concurrent connections, one each to the methods gardenhose and shadow from a single Twitter account? Thanks, Karthik On May 10, 9:04 am, John Kalucki jkalu...@gmail.com wrote: Note: TheStreamingAPI is currently under a limited alpha test, details below. Multiple concurrent connections from the same account are discouraged on theStreamingAPI. Starting on or after the afternoon of Monday, May 11th (22:00:00 11-May-2009 UTC) the service will gently enforce this policy. A later release will fully enforce this policy. Subsequent connections from the same account will cause previously established connections to be disconnected. In some cases, this might cause operational difficulties for developers who are using the restricted resources. For example, a developer's staging test might knock that developer's production / gardenhose feed offline. Non-production uses should connect to the / spritzer resource with a secondary account to avoid these conflicts. We may, on a case-by-case basis, grant exceptions to this policy as we work through the alpha test. We will attempt to balance ease-of-use, resource consumption and abuse prevention. -John Kalucki - Services, Twitter Inc.http://twitter.com/jkalucki Important Alpha Test Note: TheStreamingAPI (aka Hosebird) is currently under an alpha test. All developers using theStreamingAPI must tolerate possible unannounced and extended periods of unavailability, especially during off-hours, Pacific Time. New features, resources and policies are being deployed on very little, if any, notice. Any developer may experiment with the unrestricted resources and provide feedback via this list. Access to restricted resources is extremely limited and is only granted on a case-by-case basis after acceptance of an additional terms of service document. Documentation is available:http://apiwiki.twitter.com/Streaming-API-Documentation.
[twitter-dev] Search Hashtag Query Results Not Posting
I have been reading over these discussion forums and searching the web and was able to create a simple html javascript code that produced a list of tweets from my user-id: div id=twitter_div ul id=twitter_update_list/ul /div script type=text/javascript src=http://twitter.com/javascripts/ blogger.js/script script type=text/javascript src=http://twitter.com/statuses/ user_timeline/xen_com_mgr.json?callback=twitterCallback2ampcount=5/ script I have been trying to take this one step further and instead of displaying tweets based on my user-id; I would like to use a search on a hashtag (e.g. #23). I have the following code which is going to search.twitter but the results are not being produced. Not sure why? div id=twitter_div ul id=twitter_update_list/ul /div script type=text/javascript src=http://twitter.com/javascripts/ blogger.js/script script type=text/javascript src=http://search.twitter.com/search?q= %23xen/script I am not a Javascript expert so perhaps I am doing something wrong with that? Appreciate the assistance.
[twitter-dev] Re: Streaming API Terms Of Service change - multiple simultaneous logins discouraged
You can't have multiple logins per account at the moment. In general, contact the API group for help with this. In this case, I'll set things up for you. -John Kalucki Services, Twitter Inc. On Jun 23, 7:26 am, கார்த்திக்.மு fermis...@gmail.com wrote: John, Can we have two concurrent connections, one each to the methods gardenhose and shadow from a single Twitter account? Thanks, Karthik On May 10, 9:04 am, John Kalucki jkalu...@gmail.com wrote: Note: TheStreamingAPI is currently under a limited alpha test, details below. Multiple concurrent connections from the same account are discouraged on theStreamingAPI. Starting on or after the afternoon of Monday, May 11th (22:00:00 11-May-2009 UTC) the service will gently enforce this policy. A later release will fully enforce this policy. Subsequent connections from the same account will cause previously established connections to be disconnected. In some cases, this might cause operational difficulties for developers who are using the restricted resources. For example, a developer's staging test might knock that developer's production / gardenhose feed offline. Non-production uses should connect to the / spritzer resource with a secondary account to avoid these conflicts. We may, on a case-by-case basis, grant exceptions to this policy as we work through the alpha test. We will attempt to balance ease-of-use, resource consumption and abuse prevention. -John Kalucki - Services, Twitter Inc.http://twitter.com/jkalucki Important Alpha Test Note: TheStreamingAPI (aka Hosebird) is currently under an alpha test. All developers using theStreamingAPI must tolerate possible unannounced and extended periods of unavailability, especially during off-hours, Pacific Time. New features, resources and policies are being deployed on very little, if any, notice. Any developer may experiment with the unrestricted resources and provide feedback via this list. Access to restricted resources is extremely limited and is only granted on a case-by-case basis after acceptance of an additional terms of service document. Documentation is available:http://apiwiki.twitter.com/Streaming-API-Documentation.
[twitter-dev] Re: deleted tweets ares retrieved in the search results
Currently there is no way to remove tweets from search. On Tue, Jun 23, 2009 at 11:31, Borja Martínbor...@dagi3d.net wrote: Hi, I deleted some tweets I posted using a certain hashtag during the development of my application but they are still being retrieved using the search api method. I guess the results are cached, so I wonder how long does it take to flush the cache or if there is any way to delete these tweets from the results. Thanks in advance -- def dagi3d(me) case me when :web then http://dagi3d.net; when :twitter then http://twitter.com/dagi3d; end end -- Abraham Williams | Community Evangelist | http://web608.org Hacker | http://abrah.am | http://twitter.com/abraham Project | http://fireeagle.labs.poseurtech.com This email is: [ ] blogable [x] ask first [ ] private.
[twitter-dev] Re: deleted tweets ares retrieved in the search results
Hey there, For the record, I'm working to fix that in the near term. I know it's been a long time coming but I have a git branch under way to add it so I hope it's not too much farther off. Thanks; – Matt Sanford / @mzsanford Twitter Dev On Jun 23, 2009, at 5:17 PM, Abraham Williams wrote: Currently there is no way to remove tweets from search. On Tue, Jun 23, 2009 at 11:31, Borja Martínbor...@dagi3d.net wrote: Hi, I deleted some tweets I posted using a certain hashtag during the development of my application but they are still being retrieved using the search api method. I guess the results are cached, so I wonder how long does it take to flush the cache or if there is any way to delete these tweets from the results. Thanks in advance -- def dagi3d(me) case me when :web then http://dagi3d.net; when :twitter then http://twitter.com/dagi3d; end end -- Abraham Williams | Community Evangelist | http://web608.org Hacker | http://abrah.am | http://twitter.com/abraham Project | http://fireeagle.labs.poseurtech.com This email is: [ ] blogable [x] ask first [ ] private.
[twitter-dev] Re: best practice for dealing with streaming api connection close
I use two levels of controls, which seems working smoothly. 1. when exception is thrown, check if it's the type that results from connection dropping, i.e. IOException or HTTP code=4xx or error message; reconnect only if this is true. there may be many other types of exceptions, but don't reconnect in those cases. Normally, I only notice a couple of disconnection a day. 2. set a max number of reconnection; when reaching the max, don't auto-reconnect, but requires a manual reconnect instead. This way, if the api server goes wrong, you won't bombard the server. -aj On Tue, Jun 23, 2009 at 3:49 PM, danielo ohboyot...@gmail.com wrote: I had a similar question. I think you've mostly answered it, but I want to be clear so as to avoid harassing the API. I'm developing a client to connect to the streaming API (nothing fancy at the moment; just spritzer), and of course, I'm bungling it up regularly. I'll hack a bunch, try it, watch it break, shut it down, and hack some more. Is there a practical limit at which point I should apply the human throttle-back? Or is there no realistic human limit at which I risk a ban from the streaming service? I imagine that if a 15- second wait period is sufficient to avoid bad things, the more likely 1-to-2-minute wait between my attempts will be fine. I ask, nonetheless, as my repeated requests will persist for the duration of my work, whereas a running client would (hopefully) snag a valid connection after some time and stop spamming at that point. Thanks! On Jun 14, 8:14 pm, John Kalucki jkalu...@gmail.com wrote: AJ, If you had a validconnectionand theconnectiondrops, reconnect immediately. This is encouraged! If you attempt aconnectionand get a TCP or IP level error, back off linearly, but cap the backoff to something fairly short. Perhaps start at 20 milliseconds, double, and cap at 15 seconds. There's probably a transitory network problem and it will probably clear up quickly. If you get a HTTP error (4XX), backoff linearly, but cap the backoff at something longer, perhaps start at 250 milliseconds, double, and cap at 120 seconds. Whatever has caused the issue isn't going away anytime soon. There's not much point in polling any faster and you are just more likely to run afoul of some rate limit. The service is fairly lenient. You aren't going to get banned for a few dozen bungled connections here and there. But, if you do anything in a while loop that also doesn't have a sleep, you'll eventually get the hatchet for some small number of minutes. If you get the hatchet repeatedly, you'll be cut off for an indeterminate period of time. There are four main reasons to have yourconnectionclosed: * Duplicate clients logins (earlier connections terminated) * Hosebird server restarts (code deploys) * Laggingconnectiongetting thrown off (client too slow, or insufficient bandwidth) * General Twitter network maintenance (Load balancer restarts, network reconfigurations, other very very rare events) We plan to have enough spare capacity on the surviving servers to absorb the load from server restarts. You must ensure that your client is fast enough and that you have sufficient bandwidth and a stable enoughconnectionto consume your stream. I usually see connections that survive for a few days before mysteriously being dropped. Just reconnect in these cases. -John Kalucki Services, Twitter Inc. On Jun 14, 3:31 pm, AJ cano...@gmail.com wrote: Thestreamingapiis great, but it sometimes closes theconnectionfor whatever reason. my realtime system must figure out when to reconnect automatically. the auto-reconnection can't blindly request a connectionwhenever it is not connected, otherwise it will floor the apiand may cause theapito ban or refuse the user's request. it's bad to bombard theapiserver with repeatedconnectionrequests. Could theapiteam recommend some best practice for dealing with auto- reconnection? maybe certain error code or error message can indicate the cause of droppingconnectionand wait time for nextconnectionrequest. I just a long list of exceptions fromstreamingapias a result of repeated connection, and the different messages are: twitter4j.TwitterException: Address already in use: connect twitter4j.TwitterException: Authentication credentials were missing or incorrect. twitter4j.TwitterException:Connectionrefused: connect twitter4j.TwitterException: No route to host: connect twitter4j.TwitterException: Stream closed. twitter4j.TwitterException: The request is understood, but it has been refused. An accompanying error message will explain why. twitter4j.TwitterException: connect timed out How to prevent such situation of repeated connections requests? thanks, aj -- AJ Chen, PhD Co-Chair, Semantic Web SIG, sdforum.org http://web2express.org Palo Alto, CA
[twitter-dev] created_at format change
Around 7:45pm Central time, I noticed that the format of the created_at timestamp changed from Fri, 15 May 2009 14:41:50 + to 2009-05-15 14:41:50 UTC. Was this change intentional? If so, was it communicated anywhere? We had to rush out a fix to our app in order to change the format string we were using to parse the date. (The true issue, of course, is that Python needs a strtotime() like PHP. :-) Chris
[twitter-dev] Re: created_at format change
Yeah, all of my timestamps are now busted and I'm just finding out... It looks like this was just a change in the Search API format, and not the REST API format? Is that correct? Going bonkers, -Chad On Tue, Jun 23, 2009 at 9:02 PM, Christopher Finkecfi...@gmail.com wrote: Around 7:45pm Central time, I noticed that the format of the created_at timestamp changed from Fri, 15 May 2009 14:41:50 + to 2009-05-15 14:41:50 UTC. Was this change intentional? If so, was it communicated anywhere? We had to rush out a fix to our app in order to change the format string we were using to parse the date. (The true issue, of course, is that Python needs a strtotime() like PHP. :-) Chris
[twitter-dev] Re: created_at format change
yes, I found this as well. -Jeff On Jun 23, 6:02 pm, Christopher Finke cfi...@gmail.com wrote: Around 7:45pm Central time, I noticed that the format of the created_at timestamp changed from Fri, 15 May 2009 14:41:50 + to 2009-05-15 14:41:50 UTC. Was this change intentional? If so, was it communicated anywhere? We had to rush out a fix to our app in order to change the format string we were using to parse the date. (The true issue, of course, is that Python needs a strtotime() like PHP. :-) Chris
[twitter-dev] Re: created_at format change
Hi, After the change, the API started to return status code:403 when there is no matching tweets. It used to be returning status code 404. Will this be a permanent behavior? --- [Wed Jun 24 12:50:31 JST 2009]GET http://search.twitter.com/search.json?q=from%3Atwit4j+doesnothit [Wed Jun 24 12:50:31 JST 2009]X-Twitter-Client-URL: http://yusuke.homeip.net/twitter4j/en/twitter4j-undefined.xml [Wed Jun 24 12:50:31 JST 2009]Accept-Encoding: gzip [Wed Jun 24 12:50:31 JST 2009]User-Agent: twitter4j http://yusuke.homeip.net/twitter4j/ /undefined [Wed Jun 24 12:50:31 JST 2009]X-Twitter-Client-Version: undefined [Wed Jun 24 12:50:31 JST 2009]Response: [Wed Jun 24 12:50:31 JST 2009]HTTP/1.1 403 Forbidden [Wed Jun 24 12:50:31 JST 2009]Age: 0 [Wed Jun 24 12:50:31 JST 2009]X-Served-From: searchdb014 [Wed Jun 24 12:50:31 JST 2009]Content-Length: 53 [Wed Jun 24 12:50:31 JST 2009]Expires: Wed, 24 Jun 2009 03:55:32 GMT [Wed Jun 24 12:50:31 JST 2009]X-Served-By: searchweb014.twitter.com [Wed Jun 24 12:50:31 JST 2009]Connection: close [Wed Jun 24 12:50:31 JST 2009]Server: hi [Wed Jun 24 12:50:31 JST 2009]X-Cache: MISS [Wed Jun 24 12:50:31 JST 2009]Cache-Control: max-age=60, must- revalidate, max-age=300 [Wed Jun 24 12:50:31 JST 2009]Status: 403 Forbidden [Wed Jun 24 12:50:31 JST 2009]X-Varnish: 120647426 [Wed Jun 24 12:50:31 JST 2009]Date: Wed, 24 Jun 2009 03:50:32 GMT [Wed Jun 24 12:50:31 JST 2009]Vary: Accept-Encoding [Wed Jun 24 12:50:31 JST 2009]Content-Encoding: gzip [Wed Jun 24 12:50:31 JST 2009]Via: 1.1 varnish [Wed Jun 24 12:50:31 JST 2009]X-Cache-Svr: searchweb014.twitter.com [Wed Jun 24 12:50:31 JST 2009]Content-Type: application/json; charset=utf-8 [Wed Jun 24 12:50:31 JST 2009]{error:Exceptions::NoResults} --- Cheers, -- Yusuke Yamamoto yus...@mac.com this email is: [x] bloggable/twittable [ ] ask first [ ] private follow me on : http://twitter.com/yusukeyamamoto subscribe me at : http://yusuke.homeip.net/blog/ On 6月24日, 午後12:44, Chad Etzel jazzyc...@gmail.com wrote: Yep, looking good. On Tue, Jun 23, 2009 at 11:30 PM, Brooks Bennettbsbenn...@gmail.com wrote: Looks fixed now. Thanks! On Jun 23, 9:24 pm, Matt Sanford m...@twitter.com wrote: This was not intentional and I'm trying to get to the bottom of it now. -- Matt On Jun 23, 2009, at 7:05 PM, Chad Etzel wrote: Yeah, all of my timestamps are now busted and I'm just finding out... It looks like this was just a change in the Search API format, and not the REST API format? Is that correct? Going bonkers, -Chad On Tue, Jun 23, 2009 at 9:02 PM, Christopher Finkecfi...@gmail.com wrote: Around 7:45pm Central time, I noticed that the format of the created_at timestamp changed from Fri, 15 May 2009 14:41:50 + to 2009-05-15 14:41:50 UTC. Was this change intentional? If so, was it communicated anywhere? We had to rush out a fix to our app in order to change the format string we were using to parse the date. (The true issue, of course, is that Python needs a strtotime() like PHP. :-) Chris
[twitter-dev] Re: created_at format change
I'm seeing that, too. Can you open a ticket? http://code.google.com/p/twitter-api/issues/list Thanks, Doug -- Do you follow me? http://twitter.com/dougw 2009/6/23 H12山本 裕介 yus...@mac.com Hi, After the change, the API started to return status code:403 when there is no matching tweets. It used to be returning status code 404. Will this be a permanent behavior? --- [Wed Jun 24 12:50:31 JST 2009]GET http://search.twitter.com/search.json?q=from%3Atwit4j+doesnothit [Wed Jun 24 12:50:31 JST 2009]X-Twitter-Client-URL: http://yusuke.homeip.net/twitter4j/en/twitter4j-undefined.xml [Wed Jun 24 12:50:31 JST 2009]Accept-Encoding: gzip [Wed Jun 24 12:50:31 JST 2009]User-Agent: twitter4j http://yusuke.homeip.net/twitter4j/ /undefined [Wed Jun 24 12:50:31 JST 2009]X-Twitter-Client-Version: undefined [Wed Jun 24 12:50:31 JST 2009]Response: [Wed Jun 24 12:50:31 JST 2009]HTTP/1.1 403 Forbidden [Wed Jun 24 12:50:31 JST 2009]Age: 0 [Wed Jun 24 12:50:31 JST 2009]X-Served-From: searchdb014 [Wed Jun 24 12:50:31 JST 2009]Content-Length: 53 [Wed Jun 24 12:50:31 JST 2009]Expires: Wed, 24 Jun 2009 03:55:32 GMT [Wed Jun 24 12:50:31 JST 2009]X-Served-By: searchweb014.twitter.com [Wed Jun 24 12:50:31 JST 2009]Connection: close [Wed Jun 24 12:50:31 JST 2009]Server: hi [Wed Jun 24 12:50:31 JST 2009]X-Cache: MISS [Wed Jun 24 12:50:31 JST 2009]Cache-Control: max-age=60, must- revalidate, max-age=300 [Wed Jun 24 12:50:31 JST 2009]Status: 403 Forbidden [Wed Jun 24 12:50:31 JST 2009]X-Varnish: 120647426 [Wed Jun 24 12:50:31 JST 2009]Date: Wed, 24 Jun 2009 03:50:32 GMT [Wed Jun 24 12:50:31 JST 2009]Vary: Accept-Encoding [Wed Jun 24 12:50:31 JST 2009]Content-Encoding: gzip [Wed Jun 24 12:50:31 JST 2009]Via: 1.1 varnish [Wed Jun 24 12:50:31 JST 2009]X-Cache-Svr: searchweb014.twitter.com [Wed Jun 24 12:50:31 JST 2009]Content-Type: application/json; charset=utf-8 [Wed Jun 24 12:50:31 JST 2009]{error:Exceptions::NoResults} --- Cheers, -- Yusuke Yamamoto yus...@mac.com this email is: [x] bloggable/twittable [ ] ask first [ ] private follow me on : http://twitter.com/yusukeyamamoto subscribe me at : http://yusuke.homeip.net/blog/ On 6月24日, 午後12:44, Chad Etzel jazzyc...@gmail.com wrote: Yep, looking good. On Tue, Jun 23, 2009 at 11:30 PM, Brooks Bennettbsbenn...@gmail.com wrote: Looks fixed now. Thanks! On Jun 23, 9:24 pm, Matt Sanford m...@twitter.com wrote: This was not intentional and I'm trying to get to the bottom of it now. -- Matt On Jun 23, 2009, at 7:05 PM, Chad Etzel wrote: Yeah, all of my timestamps are now busted and I'm just finding out... It looks like this was just a change in the Search API format, and not the REST API format? Is that correct? Going bonkers, -Chad On Tue, Jun 23, 2009 at 9:02 PM, Christopher Finkecfi...@gmail.com wrote: Around 7:45pm Central time, I noticed that the format of the created_at timestamp changed from Fri, 15 May 2009 14:41:50 + to 2009-05-15 14:41:50 UTC. Was this change intentional? If so, was it communicated anywhere? We had to rush out a fix to our app in order to change the format string we were using to parse the date. (The true issue, of course, is that Python needs a strtotime() like PHP. :-) Chris