Fair usage in an application


I am in the process of building an application with flutter that displays charging stations on a map and would allow you to create routes etc… My question is about the fair usage, I saw that if we’re supposed to make a lot of requests to the open charge map api we’re better off creating our own api with the data so I’m wondering if that’s what I should do basically, the api would be called everytime the user goes on the map at least and for better efficiency I even thought about only requesting the data in a certain bounding box but that means that if my bounding box changes (e.g. on a zoom or a move) I would have to request again. Is this an abuse of the fair usage ?

In general you should assess whether your app will be responsible for more than 10,000 requests per day. You should avoid sequential duplicate requests or requests for a very large number of POIs in one go (for instance, some users try to download the whole country multiple times per second). Requests for overlapping results sets (e.g. a map move) are fine as they are difficult to avoid.

If your app becomes a high consumer and we notice issues we will contact you via the email address registered against the API key you are using. Your current idea sounds fine and is similar to the behaviour of our own map.openchargemap.io

1 Like

One important note from me (yes, yes, I’m still around) :wink:

Dear OCM users,

NEVER hold back from building something awesome just because you are afraid of exceeding fair use limits. I mean, respect them, but if you have an awesome project and need much more, let us know. I guess (@Christopher, please correct me if I’m wrong) a viable scenario is:

  1. Build an awesome OCM-powered project.
  2. Use the public API within fair use limits.
  3. Set up your own read-only node (it’s really simple) and/or ask the community for help. I guess a few of us have such read-only mirrors running and could share some resources.

If it’s still not enough, ping me. We have a cool API implementation almost ready (for a long time but just focused on different projects). So if requests per second are going to be a blocking factor for something great and awesome, we would be more motivated to complete our implementation and boost the progress.

1 Like

Yes absolutely, if you make something great and it gets super popular you shouldn’t let our API hold you back. It costs $5 per month to run a basic server on AWS lightsail and about the same to use Cloudflare workers, but you only need to look at that stuff once you have reached a sizeable audience.

You are sharing our free API with over 4000 other apps/service that are registered to use the API, some of which are heavy users, most of which are not. We do have an option for companies to simply pay (a striped subscription) for high usage but so far we only had one org do that for a few months then their payment method expired :sweat_smile: - I haven’t chased them for it. We still have a month of two of azure credits we’re working through then we will need to downside our server a bit.