Streaming API not returning results


#1

Hello I am responsible for a Twitter product at my company we maintain several scripts using 7 different oauths pulling a reasonable amount of tweets into a database. On 24/3/14 we had a complete cessation of data flow our team has run the suggested diagnostics on the disscussion forums the results are posted below. Any community or Twitter assistance is greatly appreciated.

curl --get ‘https://api.twitter.com/1.1/’ --header ‘Authorization: OAuth oauth _consumer_key="xxxxxxxxxxxxx, oauth_nonce=“xxxxxxxxxxxxxx”, oauth_signature=“xxxxxxxxxxxxxxxxxxx”, oauth_signature_m ethod=“HMAC-SHA1”, oauth_timestamp=“1396018285”, oauth_token=“xxxxxxxxxxxxxxxxxxxxxx”, oauth_version=“1.0”’ --verbose

Results in
STATE: INIT => CONNECT handle 0x60002dd10; line 1011 (connection #-5000)

  • Hostname was NOT found in DNS cache
  • Trying 199.16.156.72…
  • Adding handle: conn: 0x600069d20
  • Adding handle: send: 0
  • Adding handle: recv: 0
  • Curl_addHandleToPipeline: length: 1
  • 0x60002dd10 is at send pipe head!
    • Conn 0 (0x600069d20) send_pipe: 1, recv_pipe: 0
  • STATE: CONNECT => WAITCONNECT handle 0x60002dd10; line 1058 (connection #0)
  • Connected to api.twitter.com (199.16.156.72) port 443 (#0)
  • successfully set certificate verify locations:
  • CAfile: /usr/ssl/certs/ca-bundle.crt
    CApath: none
  • SSLv3, TLS handshake, Client hello (1):
  • STATE: WAITCONNECT => PROTOCONNECT handle 0x60002dd10; line 1171 (connection #0)
  • SSLv3, TLS handshake, Server hello (2):
  • SSLv3, TLS handshake, CERT (11):
  • SSLv3, TLS handshake, Server key exchange (12):
  • SSLv3, TLS handshake, Server finished (14):
  • SSLv3, TLS handshake, Client key exchange (16):
  • SSLv3, TLS change cipher, Client hello (1):
  • SSLv3, TLS handshake, Finished (20):
  • SSLv3, TLS change cipher, Client hello (1):
  • SSLv3, TLS handshake, Finished (20):
  • SSL connection using ECDHE-RSA-AES128-GCM-SHA256
  • Server certificate:
  •    subject: C=US; ST=California; L=San Francisco; O=Twitter, Inc.; OU=Twitter Security; CN=api.twitter.com
    
  •    start date: 2013-10-10 00:00:00 GMT
    
  •    expire date: 2014-10-10 23:59:59 GMT
    
  •    subjectAltName: api.twitter.com matched
    
  •    issuer: C=US; O=VeriSign, Inc.; OU=VeriSign Trust Network; OU=Terms of use at https://www.verisign.com/rpa (c)10; CN=VeriSign Class 3 Secure Server CA - G3
    
  •    SSL certificate verify ok.
    
  • STATE: PROTOCONNECT => DO handle 0x60002dd10; line 1190 (connection #0)

GET /1.1/ HTTP/1.1
User-Agent: curl/7.34.0
Host: api.twitter.com
Accept: /
Authorization: OAuth oauth_consumer_key=“xxxxxxxxx”, oauth_nonce=“ff3f899db86710f335c88bef242bc05b”, oauth_signature=“xxxxxxxxxxxx”, oauth_signature_method=“HMAC-SHA1”, oauth_timestamp=“1396018285”, oauth_token=“xxxxxxxx”, oauth_version=“1.0”

  • STATE: DO => DO_DONE handle 0x60002dd10; line 1263 (connection #0)
  • STATE: DO_DONE => WAITPERFORM handle 0x60002dd10; line 1384 (connection #0)
  • STATE: WAITPERFORM => PERFORM handle 0x60002dd10; line 1395 (connection #0)
  • HTTP 1.1 or later with persistent connection, pipelining supported
    < HTTP/1.1 404 Not Found
    < cache-control: no-cache, no-store, must-revalidate, pre-check=0, post-check=0
    < content-length: 5720
    < content-type: text/html; charset=UTF-8
    < date: Fri, 28 Mar 2014 14:52:35 GMT
    < expires: Tue, 31 Mar 1981 05:00:00 GMT
    < last-modified: Fri, 28 Mar 2014 14:52:35 GMT
    < pragma: no-cache
  • Server tfe is not blacklisted
    < server: tfe
    < set-cookie: dnt=; domain=.twitter.com; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
    < set-cookie: lang=en; path=/
    < set-cookie: lang=en; path=/
    < set-cookie: _twitter_sess=BAh7CDoPY3JlYXRlZF9hdGwrCMubLQlFAToHaWQiJTk3YzUzYzhkNzEwZmYz%250AOWYzZjQxZTcwN2MzN2RkOGRjIgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVy%250AOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA–dadc414bb5ea88d7912e3fbbd4249550935d2d2d; domain=.twitter.com; path=/; secure; HttpOnly
    < set-cookie: guest_id=v1%3A139601835503957513; Domain=.twitter.com; Path=/; Expires=Sun, 27-Mar-2016 14:52:35 UTC
    < status: 404 Not Found
    < strict-transport-security: max-age=631138519
    < vary: Accept-Encoding
    < x-frame-options: SAMEORIGIN
    < x-mid: 43aaeb0d89b5fda222665d6a3bad1d0f5d171b91
    < x-rate-limit-limit: 15
    < x-rate-limit-remaining: 14
    < x-rate-limit-reset: 1396019255
    < x-transaction: 02ab2d560b18d582
    < x-ua-compatible: IE=edge,chrome=1
    < x-xss-protection: 1; mode=block
    <
Twitter / ?
      <h1>Sorry, that page doesn’t exist!</h1>
      <p>Thanks for noticing&mdash;we're going to fix it up and have things back to normal soon.</p>
      <form class="search-404" action="https://twitter.com/search" method="get">
        <input id="search_q" name="q" type="text" aria-label="Search query" placeholder="Search for a topic, full name, or @username">
        <input class="btn" id="search_submit" type="submit" value="Search">
      </form>

    <div class="footer">
      <ul class="languages">

          <li><a data-language="af" href="#">Afrikaans</a></li>

          <li><a data-language="ar" href="#">العربية</a></li>

          <li><a data-language="be" href="#">беларуская</a></li>

          <li><a data-language="bg" href="#">Български език</a></li>

          <li><a data-language="ca" href="#">català</a></li>

          <li><a data-language="cs" href="#">Čeština</a></li>

          <li><a data-language="cy" href="#">Cymraeg</a></li>

          <li><a data-language="da" href="#">Dansk</a></li>

          <li><a data-language="de" href="#">Deutsch</a></li>

          <li><a data-language="el" href="#">Ελληνικά</a></li>

          <li><a data-language="en" href="#">English</a></li>

          <li><a data-language="en-gb" href="#">English (UK)</a></li>

          <li><a data-language="es" href="#">Español</a></li>

          <li><a data-language="eu" href="#">Euskara</a></li>

          <li><a data-language="fa" href="#">فارسی</a></li>

          <li><a data-language="fi" href="#">Suomi</a></li>

          <li><a data-language="fil" href="#">Filipino</a></li>

          <li><a data-language="fr" href="#">Français</a></li>

          <li><a data-language="ga" href="#">Gaeilge</a></li>

          <li><a data-language="gl" href="#">Galego</a></li>

          <li><a data-language="he" href="#">עברית</a></li>

          <li><a data-language="hi" href="#">हिन्दी</a></li>

          <li><a data-language="hr" href="#">hrvatski</a></li>

          <li><a data-language="hu" href="#">Magyar</a></li>

          <li><a data-language="id" href="#">Indonesian</a></li>

          <li><a data-language="it" href="#">Italiano</a></li>

          <li><a data-language="ja" href="#">日本語</a></li>

          <li><a data-language="ko" href="#">한국어</a></li>

          <li><a data-language="ku" href="#">Kurdî (Kurmanji)</a></li>

          <li><a data-language="msa" href="#">Malay</a></li>

          <li><a data-language="nl" href="#">Nederlands</a></li>

          <li><a data-language="no" href="#">Norsk</a></li>

          <li><a data-language="pl" href="#">Polski</a></li>

          <li><a data-language="pt" href="#">português (Brasil)</a></li>

          <li><a data-language="ro" href="#">română</a></li>

          <li><a data-language="ru" href="#">Русский</a></li>

          <li><a data-language="sk" href="#">slovenčina</a></li>

          <li><a data-language="sq" href="#">shqip</a></li>

          <li><a data-language="sr" href="#">srpski</a></li>

          <li><a data-language="sv" href="#">Svenska</a></li>

          <li><a data-language="th" href="#">ภาษาไทย</a></li>

          <li><a data-language="tr" href="#">Türkçe</a></li>

          <li><a data-language="uk" href="#">Українська мова</a></li>

          <li><a data-language="ur" href="#">اردو</a></li>

          <li><a data-language="vi" href="#">Tiếng Việt</a></li>

          <li><a data-language="xx-lc" href="#">LOLCATZ</a></li>

          <li><a data-language="zh-cn" href="#">简体中文</a></li>

          <li><a data-language="zh-tw" href="#">繁體中文</a></li>

      </ul>
      <ul class="links">
        <li class="first">&copy; 2014 Twitter</li>
        <li><a href="https://twitter.com/about">About</a></li>
        <li><a href="https://support.twitter.com">Help</a></li>
        <li><a href="http://status.twitter.com/">Status</a></li>
      </ul>
    </div>
  </div>
</div>
<script src="https://abs.twimg.com/errors/404-edf30e3e35a76d0e7755c4a48e17199d.js"></script>
* STATE: PERFORM => DONE handle 0x60002dd10; line 1565 (connection #0) * Connection #0 to host api.twitter.com left intact * Expire cleared --------------------------------------------------------------------------

I also ran

$ curl --verbose “https://api.twitter.com/1.1/help/test.json

Resulting in

$ curl --verbose “https://api.twitter.com/1.1/help/test.json

  • STATE: INIT => CONNECT handle 0x60002dd10; line 1011 (connection #-5000)
  • Hostname was NOT found in DNS cache
  • Trying 199.16.156.40…
  • Adding handle: conn: 0x600069c00
  • Adding handle: send: 0
  • Adding handle: recv: 0
  • Curl_addHandleToPipeline: length: 1
  • 0x60002dd10 is at send pipe head!
    • Conn 0 (0x600069c00) send_pipe: 1, recv_pipe: 0
  • STATE: CONNECT => WAITCONNECT handle 0x60002dd10; line 1058 (connection #0)
  • Connected to api.twitter.com (199.16.156.40) port 443 (#0)
  • successfully set certificate verify locations:
  • CAfile: /usr/ssl/certs/ca-bundle.crt
    CApath: none
  • SSLv3, TLS handshake, Client hello (1):
  • STATE: WAITCONNECT => PROTOCONNECT handle 0x60002dd10; line 1171 (connection #0)
  • SSLv3, TLS handshake, Server hello (2):
  • SSLv3, TLS handshake, CERT (11):
  • SSLv3, TLS handshake, Server key exchange (12):
  • SSLv3, TLS handshake, Server finished (14):
  • SSLv3, TLS handshake, Client key exchange (16):
  • SSLv3, TLS change cipher, Client hello (1):
  • SSLv3, TLS handshake, Finished (20):
  • SSLv3, TLS change cipher, Client hello (1):
  • SSLv3, TLS handshake, Finished (20):
  • SSL connection using ECDHE-RSA-AES128-GCM-SHA256
  • Server certificate:
  •    subject: C=US; ST=California; L=San Francisco; O=Twitter, Inc.; OU=Twitter Security; CN=api.twitter.com
    
  •    start date: 2013-10-10 00:00:00 GMT
    
  •    expire date: 2014-10-10 23:59:59 GMT
    
  •    subjectAltName: api.twitter.com matched
    
  •    issuer: C=US; O=VeriSign, Inc.; OU=VeriSign Trust Network; OU=Terms of use at https://www.verisign.com/rpa (c)10; CN=VeriSign Class 3 Secure Server CA - G3
    
  •    SSL certificate verify ok.
    
  • STATE: PROTOCONNECT => DO handle 0x60002dd10; line 1190 (connection #0)

GET /1.1/help/test.json HTTP/1.1
User-Agent: curl/7.34.0
Host: api.twitter.com
Accept: /

  • STATE: DO => DO_DONE handle 0x60002dd10; line 1263 (connection #0)
  • STATE: DO_DONE => WAITPERFORM handle 0x60002dd10; line 1384 (connection #0)
  • STATE: WAITPERFORM => PERFORM handle 0x60002dd10; line 1395 (connection #0)
  • HTTP 1.1 or later with persistent connection, pipelining supported
    < HTTP/1.1 400 Bad Request
    < content-length: 61
    < content-type: application/json; charset=utf-8
    < date: Fri, 28 Mar 2014 15:19:35 UTC
  • Server tfe is not blacklisted
    < server: tfe
    < set-cookie: guest_id=v1%3A139601997599523554; Domain=.twitter.com; Path=/; Expires=Sun, 27-Mar-2016 15:19:35 UTC
    < strict-transport-security: max-age=631138519
    <
  • STATE: PERFORM => DONE handle 0x60002dd10; line 1565 (connection #0)
  • Connection #0 to host api.twitter.com left intact
  • Expire cleared
    {“errors”:[{“message”:“Bad Authentication data”,“code”:215}]}

#2

Can anyone provide any insight into this problem? I’ve contacted Twitter Support and they have not been able to help.


#3

Calling https://api.twitter.com/1.1/ will not get you anything.

See https://dev.twitter.com/docs/auth/using-oauth and https://dev.twitter.com/docs/auth/oauth/single-user-with-examples to get started.


#4

Hi @froginthevalley I am tracking a keyword VOLTAS via streaming API. A user @JainInvestment tweeted this “Intra Buy VOLTAS at CMP 209 SL 206 Target 213/216” But I did not get it via Streaming API. So does Streaming API miss data? Is it a known issue? How can we fix it?