Docs / Get started

Limits & quotas

The API is free. Limits protect the masjids' data from being copied in bulk, and they are generous for an app that shows masjids to people.

The quota of a new project

LimitDefaultWindow
Requests3,600 per hourthe UTC hour, reset on the hour
Distinct masjids300 per daythe UTC day, reset at midnight UTC
Burst, per key600 per minuteone minute

All the keys of a project share its quota. The burst limit applies to each key on its own.

When a limit is reached

The call answers 429 with a Retry-After header, in seconds:

  • RATE_LIMIT_EXCEEDED: one key sent too many requests in the last minute.
  • PROJECT_QUOTA_EXCEEDED: the project used its hourly or daily quota. The body's quotaIncreaseUrl opens the request form for that project.

Wait for Retry-After before you call again: retrying earlier is refused too.

Stay under them

  • Cache on your side. Prayer times change once a day: fetch a month with GET /v1/masjids/{id}/prayer-times/monthly and keep it, rather than calling on every screen view.
  • Call from your server when you can, and share the answer between your users.
  • Do not walk search or nearby to rebuild the directory: it is what the masjid limit is there to stop, and it breaks the developer terms.

Need more?

There is no paid plan. A higher quota is a matter of trust: ask from your console with your use, your audience and a link to the app. A person reads every request.