When we started Gnip last year Twitter was among the first group of companies that understood the data integration problems we were trying to solve for developers and companies. Because Gnip and Twitter were able to work together it has been possible to access and integrate data from Twitter by using the Gnip platform since last July using Gnip Notifications, and since last September using Gnip Data Activities.
All of this data access was the result of Gnip working with the Twitter XMPP “firehose” API to provide Twitter data access for users of both the Gnip Community and Standard edition product offerings. Recently Twitter announced a new Streaming API and began an alpha program to start making the new API available. Gnip has been testing the new Streaming API and now we are planning to move from the current XMPP API to the new Streaming API in the middle of June. This transition to the new Streaming API will mean some changes in the default behavior and ability to access Twitter data as described below
New Streaming API Transition Highlights
- Gnip will now be able to provide both Gnip Notifications and Gnip Data Activities to all users of the Gnip platform. We had stopped providing access to Data Activities to new customers last November when Twitter began working on the new API, but now all users of the Gnip platform can use either Notifications or Data Activities based on what is appropriate for their application use case.
- There are no changes to the Gnip API or service endpoints of Gnip Publishers and Filters due to this transition. This is changing the default Twitter API that we integrate to for data from Twitter (added about 2 hours after original post)
- The Twitter Streaming API is meant to accommodate a class of applications that require near-real-time access to Twitter public statuses and is provided with several tiers of streaming API methods. See the Twitter documentation for more information.
- The default Streaming API tiers that Gnip will be making available are the new “spritzer” and “follow” stream methods. These are the only tiers which are made available publicly without requiring an end user agreement directly with Twitter at this time.
- The “spritzer” stream method is not a “firehose” as the XMPP stream that Gnip previously used as our default. The average messages per second is still being worked out by Twitter, but at this time “spritzer” runs in the ballpark of 10-20 messages per second and can vary depending on lots of variables being managed by Twitter.
- The “follow” stream method returns public statuses from a specified set of users, by ID.
- For more on “spritzer”, “follow”, and other methods see the Twitter Streaming API Documentation.
What About Companies and Developers With Use Cases Are Not Met With the Twitter “Spritzer” and “Follow” Streaming API methods
Gnip and Twitter realize that many use cases exist for how companies want to use Twitter data and that new applications are being built everyday. Therefore we are exploring how companies that are authorized by Twitter for other Streaming API methods would be able to use the Gnip platform as their integration platform of choice.
Twitter has several additional Streaming API methods available to approved parties that require a signed agreement to access. To better understand which developers and companies using the Gnip platform could benefit from these other Streaming API options we would encourage Gnip platform users to take this short 12 question survey: Gnip: Twitter Data Publisher Survey (URL: http://www.surveymonkey.com/s.aspx?sm=dQEkfMN15NyzWpu9sUgzhw_3d_3d)
What About the Gnip Twitter-search Data Publisher?
The Gnip Twitter-search Data Publisher is not impacted by the transition to the new Twitter Streaming API since it is implemented using the new Gnip Polling Service and provides keyword-based data integration to the search.twitter APIs.
We will provide more information when we lock down the actual day for the transition shortly. Please take the survey and as always please contact us directly at firstname.lastname@example.org or send me a direct email at email@example.com