iosfacebookauthenticationapi-key

Use of Developer's key for an API


I am new to the shared API technologies. I have noticed, that almost every API has a developer key. For Example, Facebook, Google Plus, Google Maps, Apple iOS, etc...

Well I am not able to understand what is the use of this developers key? If I am hosting an API how would developers key would benefit me?

From what I perceived is: The API hosting company is aware of the total transactions from the developers product from which they can charge them.

Is there something more about the developers key.? Does it also maintains the security of the API, if yes, then how?


Solution

  • A developer key is simply an authentication of who is using the API. If I have an API that I provide to you, and suddenly you start hitting my API with 1000 requests per second, I want an easy way to be able to measure that it is you causing all this load, so I can give you a call and ask you to fix the bug or even revoke your access.

    The opposite would be an open API that anyone can hit without credentials. This would limit my options if suddenly bad actors started abusing my API. The only recourse I would have would be to look at what IP address all the requests are coming from, which is a dubious way to identify a consumer of my API. And how would I get ahold of you to ask you to stop?