HTTP API Reference
Use the following guidelines for the Grafana OnCall API.
Authentication
To authorize, use the Authorization header:
# With shell, you can just pass the correct header with each request
curl "api_endpoint_here" --header "Authorization: <api_key_here>"
Grafana OnCall uses API keys to allow access to the API. You can request a new OnCall API key in OnCall -> Settings page.
An API key is specific to a user and a Grafana stack. If you want to switch to a different stack configuration, request a different API key.
The endpoint refers to the OnCall Application endpoint and can be found on the OnCall -> Settings page as well.
Authentication using Service Account tokens
It is also possible to use a service account token
to authenticate instead of an OnCall access token. In this case you will also need to provide a
header (X-Grafana-URL
) pointing to your Grafana stack:
# With shell, you can just pass the correct header with each request
curl "api_endpoint_here" --header "Authorization: <service account token>" --header "X-Grafana-URL: <your stack URL>"
Service accounts allow you to set explicit permissions for tokens as well as expire and/or disable them if needed.
Pagination
List endpoints such as List Integrations or List Alert Groups return multiple objects.
The OnCall API returns them in pages. Note that the page size may vary.
Rate Limits
Grafana OnCall provides rate limits to ensure alert group notifications will be delivered to your Slack workspace even when some integrations produce a large number of alerts.
Monitoring integrations Rate Limits
Rate limited response HTTP status: 429
API rate limits
You can reduce or increase rate limits depending on platform status.