{ "openapi": "3.0.1", "info": { "title": "API Reference", "description": "Sentry Public API", "termsOfService": "http://sentry.io/terms/", "contact": { "email": "partners@sentry.io" }, "license": { "name": "Apache 2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0.html" }, "version": "v0" }, "servers": [ { "url": "https://sentry.io/" } ], "tags": [ { "name": "Teams", "description": "Endpoints for teams", "x-display-description": false, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/teams/&template=api_error_template.md" } }, { "name": "Organizations", "description": "Endpoints for organizations", "x-display-description": false, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/organizations/&template=api_error_template.md" } }, { "name": "Projects", "description": "Endpoints for projects", "x-display-description": false, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/projects/&template=api_error_template.md" } }, { "name": "Events", "x-sidebar-name": "Events & Issues", "description": "Endpoints for events and issues", "x-display-description": false, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/events/&template=api_error_template.md" } }, { "name": "Releases", "description": "Endpoints for releases", "x-display-description": false, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/releases/&template=api_error_template.md" } }, { "name": "Integration", "x-sidebar-name": "Integration Platform", "description": "Endpoints for the integration platform", "x-display-description": false, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/integration-platform/&template=api_error_template.md" } }, { "name": "SCIM", "x-sidebar-name": "SCIM", "description": "System for Cross-Domain Identity Management ([SCIM](http://www.simplecloud.info/)) is a standard implemented by Identity Providers and applications in order to facilitate federated identity management. Through these APIs you can add and delete members as well as teams. Sentry SaaS customers must be on a Business Plan with SAML2 Enabled. SCIM uses a bearer token for authentication that is created when SCIM is enabled. For how to enable SCIM, see our docs [here](/product/accounts/sso/#scim-provisioning).\n Sentry's SCIM API does not currently support syncing passwords, or setting any User attributes other than `active`.", "x-display-description": true, "externalDocs": { "description": "Found an error? Let us know.", "url": "https://github.com/getsentry/sentry-docs/issues/new/?title=API%20Documentation%20Error:%20/api/integration-platform/&template=api_error_template.md" } } ], "paths": { "/api/0/organizations/{organization_slug}/teams/": { "$ref": "paths/teams/index.json" }, "/api/0/teams/{organization_slug}/{team_slug}/": { "$ref": "paths/teams/by-slug.json" }, "/api/0/teams/{organization_slug}/{team_slug}/projects/": { "$ref": "paths/teams/projects.json" }, "/api/0/teams/{organization_slug}/{team_slug}/stats/": { "$ref": "paths/teams/stats.json" }, "/api/0/organizations/": { "$ref": "paths/organizations/index.json" }, "/api/0/organizations/{organization_slug}/eventids/{event_id}/": { "$ref": "paths/organizations/event-id-lookup.json" }, "/api/0/organizations/{organization_slug}/": { "$ref": "paths/organizations/details.json" }, "/api/0/organizations/{organization_slug}/repos/": { "$ref": "paths/organizations/repos.json" }, "/api/0/organizations/{organization_slug}/repos/{repo_id}/commits/": { "$ref": "paths/organizations/repo-commits.json" }, "/api/0/organizations/{organization_slug}/stats/": { "$ref": "paths/organizations/stats.json" }, "/api/0/organizations/{organization_slug}/sessions/": { "$ref": "paths/releases/sessions.json" }, "/api/0/organizations/{organization_slug}/users/": { "$ref": "paths/organizations/users.json" }, "/api/0/organizations/{organization_slug}/shortids/{short_id}/": { "$ref": "paths/organizations/shortid.json" }, "/api/0/projects/": { "$ref": "paths/projects/index.json" }, "/api/0/projects/{organization_slug}/{project_slug}/": { "$ref": "paths/projects/details.json" }, "/api/0/projects/{organization_slug}/{project_slug}/files/dsyms/": { "$ref": "paths/projects/dsyms.json" }, "/api/0/projects/{organization_slug}/{project_slug}/users/": { "$ref": "paths/projects/users.json" }, "/api/0/projects/{organization_slug}/{project_slug}/tags/{key}/values/": { "$ref": "paths/projects/tag-values.json" }, "/api/0/projects/{organization_slug}/{project_slug}/stats/": { "$ref": "paths/projects/stats.json" }, "/api/0/projects/{organization_slug}/{project_slug}/user-feedback/": { "$ref": "paths/projects/user-feedback.json" }, "/api/0/projects/{organization_slug}/{project_slug}/keys/": { "$ref": "paths/projects/keys.json" }, "/api/0/projects/{organization_slug}/{project_slug}/keys/{key_id}/": { "$ref": "paths/projects/key-details.json" }, "/api/0/projects/{organization_slug}/{project_slug}/hooks/": { "$ref": "paths/projects/service-hooks.json" }, "/api/0/projects/{organization_slug}/{project_slug}/hooks/{hook_id}/": { "$ref": "paths/projects/service-hook-details.json" }, "/api/0/projects/{organization_slug}/{project_slug}/events/{event_id}/": { "$ref": "paths/events/project-event-details.json" }, "/api/0/projects/{organization_slug}/{project_slug}/events/": { "$ref": "paths/events/project-events.json" }, "/api/0/projects/{organization_slug}/{project_slug}/issues/": { "$ref": "paths/events/project-issues.json" }, "/api/0/issues/{issue_id}/tags/{key}/values/": { "$ref": "paths/events/tag-values.json" }, "/api/0/issues/{issue_id}/tags/{key}/": { "$ref": "paths/events/tag-details.json" }, "/api/0/issues/{issue_id}/hashes/": { "$ref": "paths/events/issue-hashes.json" }, "/api/0/issues/{issue_id}/events/oldest/": { "$ref": "paths/events/oldest-event.json" }, "/api/0/issues/{issue_id}/events/latest/": { "$ref": "paths/events/latest-event.json" }, "/api/0/issues/{issue_id}/events/": { "$ref": "paths/events/issue-events.json" }, "/api/0/issues/{issue_id}/": { "$ref": "paths/events/issue-details.json" }, "/api/0/organizations/{organization_slug}/releases/": { "$ref": "paths/releases/organization-releases.json" }, "/api/0/organizations/{organization_slug}/releases/{version}/": { "$ref": "paths/releases/organization-release.json" }, "/api/0/organizations/{organization_slug}/releases/{version}/files/": { "$ref": "paths/releases/release-files.json" }, "/api/0/projects/{organization_slug}/{project_slug}/releases/{version}/files/": { "$ref": "paths/releases/project-release-files.json" }, "/api/0/organizations/{organization_slug}/releases/{version}/files/{file_id}/": { "$ref": "paths/releases/release-file.json" }, "/api/0/projects/{organization_slug}/{project_slug}/releases/{version}/files/{file_id}/": { "$ref": "paths/releases/project-release-file.json" }, "/api/0/organizations/{organization_slug}/releases/{version}/commits/": { "$ref": "paths/releases/organization-release-commits.json" }, "/api/0/projects/{organization_slug}/{project_slug}/releases/{version}/commits/": { "$ref": "paths/releases/project-release-commits.json" }, "/api/0/organizations/{organization_slug}/releases/{version}/commitfiles/": { "$ref": "paths/releases/organization-release-commit-files.json" }, "/api/0/projects/{organization_slug}/{project_slug}/releases/{version}/resolved/": { "$ref": "paths/releases/project-issues-resolved-in-release.json" }, "/api/0/organizations/{organization_slug}/releases/{version}/deploys/": { "$ref": "paths/releases/deploys.json" }, "/api/0/organizations/{organization_slug}/sentry-app-installations/": { "$ref": "paths/integration-platform/sentry-app-installations.json" }, "/api/0/sentry-app-installations/{uuid}/external-issues/": { "$ref": "paths/integration-platform/sentry-app-external-issues.json" }, "/api/0/sentry-app-installations/{uuid}/external-issues/{external_issue_id}/": { "$ref": "paths/integration-platform/sentry-app-external-issue-details.json" }, "/api/0/organizations/{organization_slug}/scim/v2/Groups": { "$ref": "paths/scim/team_index.json" }, "/api/0/organizations/{organization_slug}/monitors/{monitor_id}/checkins/": { "get": { "operationId": "Retrieve check-ins for a monitor", "description": "Retrieve a list of check-ins for a monitor", "parameters": [ { "in": "path", "name": "organization_slug", "schema": { "type": "string" }, "description": "The slug of the organization the resource belongs to.", "required": true }, { "in": "path", "name": "monitor_id", "schema": { "type": "string", "format": "uuid" }, "description": "The id of the monitor", "required": true }, { "in": "path", "name": "checkin_id", "schema": { "type": "string", "format": "uuid" }, "description": "The id of the check-in", "required": true } ], "tags": ["Crons"], "security": [ { "auth_token": ["project:admin", "project:read", "project:write"] } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "duration": { "type": "integer" }, "dateCreated": { "type": "string", "format": "date-time" }, "attachmentId": { "type": "string" } }, "required": [ "attachmentId", "dateCreated", "duration", "id", "status" ] } } } }, "description": "" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } } }, "post": { "operationId": "Create a new check-in", "description": "Creates a new check-in for a monitor.\n\nIf `status` is not present, it will be assumed that the check-in is starting, and be marked as `in_progress`.\n\nTo achieve a ping-like behavior, you can simply define `status` and optionally `duration` and\nthis check-in will be automatically marked as finished.\n\nNote: If a DSN is utilized for authentication, the response will be limited in details.", "parameters": [ { "in": "path", "name": "organization_slug", "schema": { "type": "string" }, "description": "The slug of the organization the resource belongs to.", "required": true }, { "in": "path", "name": "monitor_id", "schema": { "type": "string", "format": "uuid" }, "description": "The id of the monitor", "required": true } ], "tags": ["Crons"], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "enum": ["ok", "error", "in_progress"], "type": "string" }, "duration": { "type": "integer", "nullable": true }, "environment": { "type": "string", "nullable": true } }, "required": ["status"] } } }, "required": true }, "security": [ { "auth_token": ["project:admin", "project:read", "project:write"] } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "duration": { "type": "integer" }, "dateCreated": { "type": "string", "format": "date-time" }, "attachmentId": { "type": "string" } }, "required": ["attachmentId", "dateCreated", "duration", "id", "status"] } } }, "description": "" }, "201": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "duration": { "type": "integer" }, "dateCreated": { "type": "string", "format": "date-time" }, "attachmentId": { "type": "string" } }, "required": ["attachmentId", "dateCreated", "duration", "id", "status"] } } }, "description": "" }, "400": { "description": "Bad Request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } } } }, "/api/0/organizations/{organization_slug}/monitors/{monitor_id}/checkins/{checkin_id}/": { "put": { "operationId": "Update a check-in", "description": "Updates a check-in.\n\nOnce a check-in is finished (indicated via an `ok` or `error` status) it can no longer be changed.\n\nIf you simply wish to update that the task is still running, you can simply send an empty payload.\n\nYou may use `latest` for the `checkin_id` parameter in order to retrieve\nthe most recent (by creation date) check-in which is still mutable (not marked as finished).", "parameters": [ { "in": "path", "name": "organization_slug", "schema": { "type": "string" }, "description": "The slug of the organization the resource belongs to.", "required": true }, { "in": "path", "name": "monitor_id", "schema": { "type": "string", "format": "uuid" }, "description": "The id of the monitor", "required": true }, { "in": "path", "name": "checkin_id", "schema": { "type": "string", "format": "uuid" }, "description": "The id of the check-in", "required": true } ], "tags": ["Crons"], "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "enum": ["ok", "error", "in_progress"], "type": "string" }, "duration": { "type": "integer", "nullable": true }, "environment": { "type": "string", "nullable": true } }, "required": ["status"] } } }, "required": true }, "security": [ { "auth_token": ["project:admin", "project:read", "project:write"] } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "duration": { "type": "integer" }, "dateCreated": { "type": "string", "format": "date-time" }, "attachmentId": { "type": "string" } }, "required": ["attachmentId", "dateCreated", "duration", "id", "status"] } } }, "description": "" }, "208": { "description": "Already Reported" }, "400": { "description": "Bad Request" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } } } } }, "components": { "securitySchemes": { "auth_token": { "type": "http", "scheme": "bearer" }, "dsn": { "type": "http", "scheme": "DSN" } }, "schemas": { "CheckInList__deleted": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "duration": { "type": "integer" }, "dateCreated": { "type": "string", "format": "date-time" }, "attachmentId": { "type": "string" } }, "required": ["attachmentId", "dateCreated", "duration", "id", "status"] } }, "MonitorCheckIn__deleted": { "type": "object", "properties": { "id": { "type": "string" }, "status": { "type": "string" }, "duration": { "type": "integer" }, "dateCreated": { "type": "string", "format": "date-time" }, "attachmentId": { "type": "string" } }, "required": ["attachmentId", "dateCreated", "duration", "id", "status"] }, "MonitorCheckInValidator__deleted": { "type": "object", "properties": { "status": { "enum": ["ok", "error", "in_progress"], "type": "string" }, "duration": { "type": "integer", "nullable": true }, "environment": { "type": "string", "nullable": true } }, "required": ["status"] } } } }