The Sentry Integration Platform lets you build custom apps that extend Sentry’s functionality. A Sentry App is an OAuth application that can subscribe to webhooks, render UI components inside Sentry, and make API calls on behalf of an organization.
Use these endpoints to manage installed Sentry Apps, link Sentry issues to external trackers, and provision users via SCIM.
Sentry App installations
When an organization installs your Sentry App, Sentry creates an installation record. Each installation has a UUID that you use to identify which organization and app the requests refer to.
List installed apps
GET /api/0/organizations/{organization_id_or_slug}/sentry-app-installations/
Returns all Sentry App installations for the organization.
Required scope: org:read
Path parameters
The numeric ID or slug of the organization.
Example request
curl https://sentry.io/api/0/organizations/my-org/sentry-app-installations/ \
-H "Authorization: Bearer sntrys_TOKEN"
Example response
[
{
"app": {
"uuid": "a8e5d37a-696c-4c54-adb5-b3f28d64c7de",
"slug": "my-sentry-app",
"name": "My Sentry App"
},
"organization": {
"slug": "my-org"
},
"uuid": "a8e5d37a-abcd-1234-5678-b3f28d64c7de",
"status": "installed"
}
]
External issues
External issues link a Sentry issue to a ticket or work item in an external system (such as GitHub Issues, Jira, or a custom tracker). This lets Sentry display the linked ticket alongside the issue.
List external issues
GET /api/0/sentry-app-installations/{uuid}/external-issues/
Returns the external issue links created by this Sentry App installation.
Required scope: event:read
Path parameters
The UUID of the Sentry App installation.
Create an external issue
POST /api/0/sentry-app-installations/{uuid}/external-issues/
Links a Sentry issue to an item in an external issue tracker.
Required scope: event:write
Request body
The numeric ID of the Sentry issue to link.
The URL to the external issue in the third-party system.
The slug of the project the Sentry issue belongs to.
The identifier of the issue in the external system (e.g. "42" for issue #42).
Example request
curl -X POST https://sentry.io/api/0/sentry-app-installations/UUID/external-issues/ \
-H "Authorization: Bearer sntrys_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"issueId": 12345,
"webUrl": "https://github.com/org/repo/issues/42",
"project": "my-project",
"identifier": "42"
}'
Example response
{
"id": "1",
"issueId": "12345",
"webUrl": "https://github.com/org/repo/issues/42",
"project": "my-project",
"identifier": "42"
}
Delete an external issue
DELETE /api/0/sentry-app-installations/{uuid}/external-issues/{id}/
Removes the link between a Sentry issue and an external issue.
Required scope: event:admin
Path parameters
The ID of the external issue link to delete.
Returns 204 No Content on success.
SCIM API
The SCIM (System for Cross-domain Identity Management) API lets you provision and manage Sentry organization members and teams from your identity provider (IdP). This enables automated user lifecycle management — onboarding, offboarding, and role changes flow directly from your IdP into Sentry.
SCIM is available on Business and Enterprise plans. You must configure a SAML identity provider for your organization before using SCIM.
Users
List users
GET /api/0/organizations/{organization_id_or_slug}/scim/v2/Users
Provision a user
POST /api/0/organizations/{organization_id_or_slug}/scim/v2/Users
Update a user
PATCH /api/0/organizations/{organization_id_or_slug}/scim/v2/Users/{id}
Remove a user
DELETE /api/0/organizations/{organization_id_or_slug}/scim/v2/Users/{id}
SCIM user schema
SCIM endpoints use the SCIM 2.0 protocol format. The request and response bodies follow the urn:ietf:params:scim:schemas:core:2.0:User schema.
Example: provision a user
curl -X POST https://sentry.io/api/0/organizations/my-org/scim/v2/Users \
-H "Authorization: Bearer sntrys_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
"userName": "jane@example.com",
"name": {
"givenName": "Jane",
"familyName": "Smith"
},
"emails": [
{
"primary": true,
"value": "jane@example.com",
"type": "work"
}
],
"active": true
}'
Example: deprovision a user
curl -X DELETE https://sentry.io/api/0/organizations/my-org/scim/v2/Users/123 \
-H "Authorization: Bearer sntrys_TOKEN"
This removes the user from the organization. The user’s Sentry account is not deleted.