Hi Ryan,

I think part of the problem is that user id 1255997062 does not exist,
so it should really be returning a 404 instead of a 401. Do you get
the same 401 result with a known valid user id?

-Chad

On Tue, Oct 20, 2009 at 3:13 PM, Ryan Rosario <uclamath...@gmail.com> wrote:
>
> Correct. I thought that was weird, but didn't know what to make of it.
> Same IP.
> The unauthenticated call was from an IP that is not whitelisted, so
> 150/hr.
> The second call was from the same IP, but authenticated as a
> whitelisted account, so should be 20000/hr.
>
> I usually only work from the whitelisted IPs, but wanted to check an
> IP that had never been used before for data mining.
>
>
> On Oct 20, 11:36 am, Dewald Pretorius <dpr...@gmail.com> wrote:
>> Apart from the 401 issue, the following is also very weird:
>>
>> < X-experimental-RLS-remaining: 0
>> < X-experimental-RLS-maxvalue: 150
>> < X-RateLimit-Limit: 20000
>>
>> This is on the second authenticated call. On the unauthenticated call
>> X-RateLimit-Limit was 150. I assume both calls were made from the same
>> IP address?
>>
>> Dewald
>>
>> On Oct 20, 3:10 pm, Ryan Rosario <uclamath...@gmail.com> wrote:
>>
>>
>>
>> > Below are the responses. I tried various combinations of -
>> > uusername:pass -u=username:pass -u username:pass and each time got an
>> > authentication error.
>>
>> > Without authentication
>> > [madhatter:~/Desktop] ryan% curl 
>> > -vvvhttp://twitter.com/statuses/user_timeline.json\?user_id=1255997062\&count=100
>> > * About to connect() to twitter.com port 80 (#0)
>> > *   Trying 168.143.162.100... connected
>> > * Connected to twitter.com (168.143.162.100) port 80 (#0)> GET 
>> > /statuses/user_timeline.json?user_id=1255997062&count=100 HTTP/1.1
>> > > User-Agent: curl/7.19.4 (universal-apple-darwin10.0) libcurl/7.19.4 
>> > > OpenSSL/0.9.8k zlib/1.2.3
>> > > Host: twitter.com
>> > > Accept: */*
>>
>> > < HTTP/1.1 401 Unauthorized
>> > < X-experimental-RLS-remaining: 132
>> > < X-experimental-RLS-maxvalue: 150
>> > < X-experimental-RLS-reset: 1256065275
>> > < X-experimental-RLS-th: notreq
>> > < X-RLS-id: sjc1c032
>> > < Via: Cachet/0.91
>> > < Date: Tue, 20 Oct 2009 18:03:41 GMT
>> > < Server: hi
>> > < X-RateLimit-Limit: 150
>> > < X-Transaction: 1256061824-5820-4214
>> > < WWW-Authenticate: Basic realm="Twitter API"
>> > < Status: 401 Unauthorized
>> > < Last-Modified: Tue, 20 Oct 2009 18:03:44 GMT
>> > < X-RateLimit-Remaining: 133
>> > < X-Runtime: 0.05350
>> > < Content-Type: application/json; charset=utf-8
>> > < Pragma: no-cache
>> > < Cache-Control: no-cache, no-store, must-revalidate, pre-check=0,
>> > post-check=0
>> > < Expires: Tue, 31 Mar 1981 05:00:00 GMT
>> > < X-Revision: 726d1f10cbe49a923e837d8c3fca3a3993a0f964
>> > < X-RateLimit-Reset: 1256065275
>> > < Set-Cookie: lang=en; path=/
>> > < Set-Cookie:
>> > _twitter_sess=BAh7CDoRdHJhbnNfcHJvbXB0MDoHaWQiJWM5OTU5MWNkNmE5MjMwNzU0Nzhh
>> > %250AMzdkMTA3NzE2Zjk5IgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVyOjpGbGFz
>> > %250AaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA--73f950f824e3e048d3691a3eeec8a8fbbab2
>> >  1743;
>> > domain=.twitter.com; path=/
>> > < Vary: Accept-Encoding
>> > < Content-Length: 118
>> > < Connection: close
>> > <
>> > * Closing connection #0
>> > {"request":"/statuses/user_timeline.json?
>> > user_id=1255997062&count=100","error":"This method requires
>> > authentication."}
>>
>> > With authentication:
>> > [madhatter:~/Desktop] ryan% curl -vvv 
>> > -uusername:passhttp://twitter.com/statuses/user_timeline.json\?user_id=1255997062\&count=100
>> > * About to connect() to twitter.com port 80 (#0)
>> > *   Trying 168.143.162.68... connected
>> > * Connected to twitter.com (168.143.162.68) port 80 (#0)
>> > * Server auth using Basic with user ' '> GET 
>> > /statuses/user_timeline.json?user_id=1255997062&count=100 HTTP/1.1
>> > > Authorization: Basic *redacted*
>> > > User-Agent: curl/7.19.4 (universal-apple-darwin10.0) libcurl/7.19.4 
>> > > OpenSSL/0.9.8k zlib/1.2.3
>> > > Host: twitter.com
>> > > Accept: */*
>>
>> > < HTTP/1.1 401 Unauthorized
>> > < X-experimental-RLS-remaining: 0
>> > < X-experimental-RLS-maxvalue: 150
>> > < X-experimental-RLS-reset: 1256064142
>> > < X-experimental-RLS-th: succ
>> > < X-RLS-id: sjc1c032
>> > < Via: Cachet/0.91
>> > < Date: Tue, 20 Oct 2009 18:04:33 GMT
>> > < Server: hi
>> > < X-RateLimit-Limit: 20000
>> > < X-Transaction: 1256061882-45021-11545
>> > * Authentication problem. Ignoring this.
>> > < WWW-Authenticate: Basic realm="Twitter API"
>> > < Status: 401 Unauthorized
>> > < Last-Modified: Tue, 20 Oct 2009 18:04:42 GMT
>> > < X-RateLimit-Remaining: 19823
>> > < X-Runtime: 0.11979
>> > < Content-Type: application/json; charset=utf-8
>> > < Pragma: no-cache
>> > < Cache-Control: no-cache, no-store, must-revalidate, pre-check=0,
>> > post-check=0
>> > < Expires: Tue, 31 Mar 1981 05:00:00 GMT
>> > < X-Revision: 726d1f10cbe49a923e837d8c3fca3a3993a0f964
>> > < X-RateLimit-Reset: 1256064139
>> > < Set-Cookie: lang=en; path=/
>> > < Set-Cookie: lang=en; path=/
>> > < Set-Cookie:
>> > _twitter_sess=BAh7CjoTcGFzc3dvcmRfdG9rZW4iLTg1ZTQ4OTU0ZjdmM2MyOGQzMjFhOGIy
>> > %250ANjEyYjBhZDAzZjYzZjY3M2Y6EXRyYW5zX3Byb21wdDA6CXVzZXJpA57usDoH
>> > %250AaWQiJTgxZTNhMGNlYmE0YjRlNWI2NWRlZjdhZjU3ZDk3MmM2IgpmbGFzaElD
>> > %250AOidBY3Rpb25Db250cm9sbGVyOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNl
>> > %250AZHsA--26052e0c4f20f2f852537f173106f426be9df437;
>> > domain=.twitter.com; path=/
>> > < Vary: Accept-Encoding
>> > < Content-Length: 118
>> > < Connection: close
>> > <
>> > * Closing connection #0
>>
>> > On Oct 20, 10:25 am, Chad Etzel <c...@twitter.com> wrote:
>>
>> > > Hi Ryan,
>>
>> > > This sounds like a bug. Can you provide full HTTP request/response
>> > > headers+body traces for some of these requests? (be sure to obscure
>> > > the authentication header). Using curl -vvv would be good.
>>
>> > > -Chad
>>
>> > > On Tue, Oct 20, 2009 at 1:10 PM, Ryan Rosario <uclamath...@gmail.com> 
>> > > wrote:
>>
>> > > > I have been running into a recurring problem that I have been facing
>> > > > for the past couple of days, on numerous machines.
>>
>> > > > I am extracting 200 tweets for a large number of users, using the
>> > > > numeric user ID (user_id). After a small number of requests (between
>> > > > 10 and 50) I receive nothing but "This method requires
>> > > > authentication". Authenticating with my username and password does not
>> > > > make the message go away. I have verified that the users I am trying
>> > > > to pull are not protected users. I have also verified that I am not
>> > > > hitting the rate limit.
>>
>> > > > On my latest attempt, I used an IP I have not used in the past. I was
>> > > > able to extract the first 200 tweets for *12* users, then I started
>> > > > receiving 401s ("This method requires authentication") on every single
>> > > > request of this type.
>>
>> > > > After about 10 minutes, I tried again and it worked for about another
>> > > > 15 users, then I started getting the same message as well as other
>> > > > messages including 502.
>>
>> > > > Is this behavior expected? Does this 401 message possibly mean
>> > > > something else?
>

Reply via email to