{"openapi":"3.1.0","info":{"title":"Sentry (BYOK) API","version":"0.1.0","description":"Sentry (BYOK) lets an AI assistant read your own Sentry data through the Sentry API with a key you supply (auth token). Read-only: 8 tools (list_organizations, list_projects, get_project, list_organization_issues, get_issue, list_issue_events, get_issue_event, list_organization_releases). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached;...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-sentry.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-sentry/docs"},"termsOfService":"https://connectorbay.com/byok-sentry/terms"},"servers":[{"url":"https://byok-sentry.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-sentry/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_organizations":{"post":{"operationId":"list_organizations","summary":"List the Sentry organizations the token can access, with slug, name, status and creation date. Use for \"Which Sentry org","description":"List the Sentry organizations the token can access, with slug, name, status and creation date. Use for \"Which Sentry organizations can I access\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"owner":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"True to list only organizations where you are an owner.","title":"Owner"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Filter using Sentry's query syntax, for example 'slug:acme'.","title":"Query"},"sort_by":{"anyOf":[{"enum":["members","projects","events"],"type":"string"},{"type":"null"}],"default":null,"description":"Sort descending by members, projects or events; by default newest first.","title":"Sort By"}},"title":"list_organizationsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_projects":{"post":{"operationId":"list_projects","summary":"List the projects the token can access across organizations, with slug, platform, creation date and organization. Use fo","description":"List the projects the token can access across organizations, with slug, platform, creation date and organization. Use for \"Which Sentry projects do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_projectsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_project":{"post":{"operationId":"get_project","summary":"Get one Sentry project by organization and project slug: platform, status, creation date, first event and latest release","description":"Get one Sentry project by organization and project slug: platform, status, creation date, first event and latest release. Use for \"What platform is the 'web-app' Sentry project in acme\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Organization slug (the short name in your Sentry URL) or numeric ID, for example 'acme'.","maxLength":200,"title":"Organization","type":"string"},"project":{"description":"Project slug or numeric ID, for example 'web-app'.","maxLength":200,"title":"Project","type":"string"}},"required":["organization","project"],"title":"get_projectArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_organization_issues":{"post":{"operationId":"list_organization_issues","summary":"List an organization's Sentry issues using Sentry search syntax (default is:unresolved), with counts, level, status and ","description":"List an organization's Sentry issues using Sentry search syntax (default is:unresolved), with counts, level, status and last seen. Up to 100 per call. Use for \"What are the most frequent unresolved Sentry issues in acme\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Organization slug (the short name in your Sentry URL) or numeric ID, for example 'acme'.","maxLength":200,"title":"Organization","type":"string"},"query":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Sentry issue search, for example 'is:unresolved level:error' or 'assigned:me'. Omit it to get unresolved issues.","title":"Query"},"project":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"A single project ID or slug to limit to; -1 or omitted means all accessible projects.","title":"Project"},"environment":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"A single environment name to filter by, for example 'production'.","title":"Environment"},"stats_period":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Relative period such as 24h, 7d or 14d.","title":"Stats Period"},"sort":{"anyOf":[{"enum":["date","new","trends","freq","user","inbox","recommended"],"type":"string"},{"type":"null"}],"default":null,"description":"Order by date (last seen), new (first seen), trends, freq (events), user (users), inbox or recommended.","title":"Sort"},"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many issues to return (1 to 100).","title":"Limit"}},"required":["organization"],"title":"list_organization_issuesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_issue":{"post":{"operationId":"get_issue","summary":"Get one Sentry issue with its counts, first and last seen, level, status, assignee, first and last release and comment c","description":"Get one Sentry issue with its counts, first and last seen, level, status, assignee, first and last release and comment count. Use for \"Give me the details of Sentry issue 1234567890 in acme\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Organization slug (the short name in your Sentry URL) or numeric ID, for example 'acme'.","maxLength":200,"title":"Organization","type":"string"},"issue_id":{"description":"Numeric issue ID, as returned by list_organization_issues (the id field, not the short ID).","maxLength":200,"title":"Issue Id","type":"string"}},"required":["organization","issue_id"],"title":"get_issueArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_issue_events":{"post":{"operationId":"list_issue_events","summary":"List the error events of one Sentry issue, newest first, with message, platform, tags and time. Up to 100 per call. Use ","description":"List the error events of one Sentry issue, newest first, with message, platform, tags and time. Up to 100 per call. Use for \"Show recent events for Sentry issue 1234567890 in acme\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Organization slug (the short name in your Sentry URL) or numeric ID, for example 'acme'.","maxLength":200,"title":"Organization","type":"string"},"issue_id":{"description":"Numeric issue ID, as returned by list_organization_issues (the id field, not the short ID).","maxLength":200,"title":"Issue Id","type":"string"},"query":{"anyOf":[{"maxLength":300,"type":"string"},{"type":"null"}],"default":null,"description":"Sentry search filter, for example 'release:1.2.3 environment:production'.","title":"Query"},"stats_period":{"anyOf":[{"maxLength":10,"type":"string"},{"type":"null"}],"default":null,"description":"Relative period such as 24h or 7d (overrides start and end).","title":"Stats Period"},"environment":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"A single environment name to filter by.","title":"Environment"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many events to return (1 to 100).","title":"Per Page"}},"required":["organization","issue_id"],"title":"list_issue_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_issue_event":{"post":{"operationId":"get_issue_event","summary":"Get one event of a Sentry issue (use 'latest', 'oldest' or 'recommended' as the event ID) with its tags, release, user, ","description":"Get one event of a Sentry issue (use 'latest', 'oldest' or 'recommended' as the event ID) with its tags, release, user, SDK and stack trace entries. Use for \"Show the latest event, with stack trace, of Sentry issue 1234567890 in acme\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Organization slug (the short name in your Sentry URL) or numeric ID, for example 'acme'.","maxLength":200,"title":"Organization","type":"string"},"issue_id":{"description":"Numeric issue ID, as returned by list_organization_issues (the id field, not the short ID).","maxLength":200,"title":"Issue Id","type":"string"},"event_id":{"description":"Event ID, or one of 'latest', 'oldest' or 'recommended'.","maxLength":200,"title":"Event Id","type":"string"}},"required":["organization","issue_id","event_id"],"title":"get_issue_eventArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_organization_releases":{"post":{"operationId":"list_organization_releases","summary":"List an organization's Sentry releases, newest first, with version, creation and release dates, new issue counts and dep","description":"List an organization's Sentry releases, newest first, with version, creation and release dates, new issue counts and deploy counts. Use for \"What were the latest releases in acme\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization":{"description":"Organization slug (the short name in your Sentry URL) or numeric ID, for example 'acme'.","maxLength":200,"title":"Organization","type":"string"},"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Case-insensitive text matched against the release version.","title":"Query"},"project":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"A single project ID or slug to limit to; -1 or omitted means all accessible projects.","title":"Project"},"environment":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"A single environment name to filter by.","title":"Environment"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many releases to return (1 to 100).","title":"Per Page"}},"required":["organization"],"title":"list_organization_releasesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}