nasa / api-docs

api.nasa.gov
http://nasa.github.io/api-docs/
450 stars 109 forks source link

OVER_RATE_LIMIT across APIs and Keys #210

Closed dgreenfield0 closed 11 months ago

dgreenfield0 commented 11 months ago

Hey NASA Team,

The API proxy is erroring with OVER_RATE_LIMIT on "all" requests to few APIs.

I maintain the NeoWs API, so please let me know if I can help debug or test further.

I have tested with the DEMO_KEY, my own key and keys shared with me from NeoWs users (via email).

Demo Key:

Date: Thu, 23 Nov 2023 19:47:19 GMT Retry-After: 2870 Strict-Transport-Security: max-age=31536000; includeSubDomains; preload X-Api-Umbrella-Request-Id: cbvmsfhfnun3pivit1og X-Cache: MISS X-Content-Type-Options: nosniff X-Frame-Options: DENY X-Ratelimit-Limit: 2000 X-Ratelimit-Remaining: 0 X-Vcap-Request-Id: de0d2009-7a93-48df-6e08-5ea4f6d328e2 X-Xss-Protection: 1; mode=block `

Example Response Headers (using a Demo Key): 'Access-Control-Allow-Origin: * Content-Type: text/html Date: Thu, 23 Nov 2023 19:50:13 GMT Retry-After: 2696 Strict-Transport-Security: max-age=31536000; includeSubDomains; preload X-Api-Umbrella-Request-Id: cbvmtpqppjar7rh532e0 X-Cache: MISS X-Content-Type-Options: nosniff X-Frame-Options: DENY X-Ratelimit-Limit: 40 X-Ratelimit-Remaining: 0 X-Vcap-Request-Id: c7c0d078-6494-4edb-5ef9-cd3b93c08b2e X-Xss-Protection: 1; mode=block `

dgreenfield0 commented 11 months ago

I had some unexpected behavior introduced with a framework version upgrade that caused an issue with the Open API reverse proxy and upgrading a request from nonSSL to HTTPs.

This has been fixed for NeoWs and the test API Keys are beginning to work the hourly limits roll over.

I will continue to monitor the errors and update the Github Issue once resolved or if I notice the behavior continue.

This issue may have skewed my initial testing as my test keys were hitting the limit against NeoWs and then unable to request against another API. As I though the limit may have been 1000 requests per hour, per API.

dgreenfield0 commented 11 months ago

Going to close this ticket as the issue has been resolved.

An update to a framework in NeoWs caused some unexpected behavior with the reverse proxy, causing the proxy to send multiple requests for every one request (in 302 redirects). Which caused the API Key limit to be reached.

To note, this did appear to affect the DEMO_KEYs usage as well.