APIs
Use the DeepSource GraphQL API to retrieve your data programmatically and easily automate your workflows.
Endpoint
For DeepSource Cloud:
https://api.deepsource.io/graphql/
For on-premise deployments:
https://[hostname]/api/graphql/
where hostname
refers to the hostname of the DeepSource dashboard.
Authentication
Authenticate via a Personal Access Token (PAT). You need to pass it as a Bearer
token in the Authorization
header:
curl 'https://api.deepsource.io/graphql/' \
-X POST \
-H 'Authorization: Bearer <PERSONAL_ACCESS_TOKEN>' \
-H 'accept: application/json' \
-H 'content-type: application/json' \
--data '{ "query": "query { viewer { email } }" }'
Because GraphQL depends entirely on multiline JSON, we recommend that you use a GraphQL client like Altair or Insomnia. Note that the client wouldn't be able to perform requests or fetch the schema/documentation (which facilitates auto-complete) unless you add the Authorization
header as above.
Rate Limits
Rate limits define the maximum number of requests a single user account can make within a given period of time. If the rate limit is exceeded, the API responds with an HTTP 429 Too Many Requests response code.
Rate limits are applied at the user level and calculated across both read and write operations.
Currently, we enforce a flat rate limit of 5,000
requests per hour.
Updated 11 months ago