In google shopping API there is a limitation as 2500 hits per day. So in order to cope up with this forum suggest to pass the ip address and it will act as 2500 per ip address per day. Hence how to pass that and will it be practical for a mobile device?
Regards,
Dilshan
You need to pass the userIp parameter along with your request. See the docs here - https://code.google.com/apis/console-help/#PreventMonopolizing
However, I don't believe this allows 2500 requests per user ip address. Rather it allows you to cap requests per second for a specific ip address, whilst the overall daily limit for the api key remains at 2500.
Related
Imagine an API with an endpoint called /valuableData. The server clearly states that the limits for the API are 500 requests/s in total and 20 requests/s per person. This server does not check your IP so I could make 500 request/s with 500 good working proxies without the API going offline. Now imagine that person A sends 1000 requests/s and person B sends 20 requests/s which causes the 500 limit to be hit and the API goes offline. As soon as the API comes back online, how many valid answers does person A get back per second and how many person B? How does the server/API handle this? Does person A get back 480 valid answers per second and person B 20? Or does person A get all the max of 500 answers/s?
This depends on the protocol.
HTTP which normally is used for REST is in itself stateless and client-initiated and therefore falls short of the requirements.
Your scenario would require a protocol which:
Knows who the clients are/were
Can push responses after coming online again without client involvement
Can prioritize responses to client requests
I imagine such a protocol exists or could be implemented using WebSocket and storing state in a database.
I use Coinbase API to generate Bitcoin addresses.
What are the limits of this API?
How many Bitcoin addresses can I generate?
The API says that:
The Coinbase API is rate limited to prevent abuse that would degrade our ability to maintain consistent API performance for all users. By default, each API key or app is rate limited at 10,000 requests per hour. If your requests are being rate limited, HTTP response code 429 will be returned with an rate_limit_exceeded error.
So I would reason to assume you can generate 10,000 BTC addresses per hour. Of course there might be somewhere else it has been mentioned.
API docs say it is unlimited for each account.
Address resource represents a bitcoin, bitcoin cash, litecoin or ethereum address for an account. Account can have unlimited amount of addresses and they should be used only once.
This text is taken from the official api docs (link down below) on date 04-02-2020
https://developers.coinbase.com/api/v2#addresses
I want to retrieve real time stock market data from a server with an IP address and port.
What information is out there for acquiring this data?
It depends upon what kind of service is provided on the server which gives you the tick by tick data. It can have an API which you can consume like the one Yahoo has.
You do not need client server programming. From what I know is you can create a web application and use Yahoo! Finance API for getting stock ticker.
Check this for more information
http://help.yahoo.com/kb/index?page=content&y=PROD_FIN&locale=en_US&id=SLN2340&impressions=true
My Bad : do you have a server where you can get the ticks????
Well, pretty much what it says on the tin.
I'm really curious about how pages like Statigram do their search functionality without users authentication and not exceeding the limits?
If I'm correct, Instagram API allows 5000 calls per hour, so I believe it's very likely that they indeed have more traffic than 5000 requests per hour.
Maybe It's a dumb question and Statigram has a special deal with Instagram to use their API or maybe they don't use the API and they use some other method?
The only special request you have to send to Instagram is the request to post comments.
The API limit is 5000 requests per hour per access_token or client_id. Every user has their own access_token, so as long as the requests from the third party application uses each individual access token, they will be hard pressed to exceed 5000 per user per hour.
That works out to 83 requests per minute and any user interacting with your application is highly unlikely to hit that.
From the docs:
You are limited to 5000 requests per hour per access_token or client_id overall. Practically, this means you should (when possible) authenticate users so that limits are well outside the reach of a given user.
If you are not using user authentication, you will likely hit the limit with just your client_id.
Most likely they're using one of the following methods:
An arrangement with Instagram
Credential rotation
IP rotation
Heavy caching (especially across credentials or IPs)
Screenscraping
In cases like this, if you don't have a special arrangement, you're almost certainly violating the terms of service. If you think your service is useful enough that Instagram would be willing to whitelist you to make more requests, get in touch with them.
They must have some sort of arrangement with Instagram as #RunscopeAPITools mentions. You are able to post comments to Instagram from Statigram, which requires special permission.
I have heard that Twitter limits the number of API calls a third party app can make per hour. I believe the limit is around 100. My question is, does that limit apply per user, or is it 100 calls per app? 100 for the entire application seems very low, but I wanted to make sure and I couldn't find my answer in the documentation I was reading. Thanks.
https://dev.twitter.com/docs/rate-limiting
The default rate limit for calls to
the REST API is 150 requests per hour.
The REST API does account- and
IP-based rate limiting. Authenticated
API calls are charged to the
authenticating user's limit while
unauthenticated API calls are deducted
from the calling IP address'
allotment.
The limit as of Oct. 8, 2009 is 150 requests per hour per ip/account. Sending tweets doesn't go against that limit.
However, you can get your ip(s) and account whitelisted, which gets you up to 20,000 requests per hour per ip/account. To do that, go to: http://twitter.com/help/request_whitelisting
Note: You MUST be in production to be whitelisted.
For those of us in beta (myself included) all is not lost as Twitter has an API to check how many requests/hour you have left for that ip/account (the api is called rate_limit_status).
(Sorry, I'd post more link but Stackoverflow won't let me...)
http://apiwiki.twitter.com/Rate-limiting contains lots of information, including this;
"The default rate limit for calls to the REST API is 150 requests per hour. The REST API does account- and IP-based rate limiting. Authenticated API calls are charged to the authenticating user's limit while unauthenticated API calls are deducted from the calling IP address' allotment."
The rates are significantly lower than what they used to be. There is no more white listing, and most API calls are now 15 per 15 minutes. In addition there is a cap of calls per hour at 100, and an additional ceiling for things like direct messages; they are also limited to 1000 per 24 hours.
It is 100 calls per IP or per user. and the Limit was recently increased to either 125 or 150.
If you have a Twitter Application that comes from a single IP, like a web application, you can get your IP/Account Whitelisted, allow for 10,000 calls per hour.
It's 100 calls per user, not per application.
link text
It's most likely 100 calls per IP per hour. I doubt there's a reliable way for them to track which application is making the request.