{"openapi":"3.1.0","info":{"title":"BugSnag (BYOK) API","version":"0.1.0","description":"BugSnag (BYOK) lets an AI assistant read your own BugSnag data through the BugSnag API with a key you supply (personal auth token). Read-only: 9 tools (list_organizations, list_projects, get_project, list_errors, get_error, list_error_events, list_project_events, list_releases, get_stability_trend). The BYOK key travels with each request, is used for that one call only and is never stored, logged...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-bugsnag.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-bugsnag/docs"},"termsOfService":"https://connectorbay.com/byok-bugsnag/terms"},"servers":[{"url":"https://byok-bugsnag.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-bugsnag/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 BugSnag organizations the token's user belongs to, with id, name and slug. Start here to find project lists. Us","description":"List the BugSnag organizations the token's user belongs to, with id, name and slug. Start here to find project lists. Use for \"Which BugSnag organizations am I in\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"admin":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to list only organizations where you are an admin.","title":"Admin"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":30,"description":"How many results to return (1 to 100).","title":"Per Page"}},"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 of an organization with language, release stages and open error counts. Use for \"Which projects do we ","description":"List the projects of an organization with language, release stages and open error counts. Use for \"Which projects do we have in BugSnag and how many open errors does each have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization_id":{"description":"BugSnag organization id from list_organizations.","maxLength":64,"title":"Organization Id","type":"string"},"q":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only projects whose name matches this text.","title":"Q"},"sort":{"anyOf":[{"enum":["created_at","name","favorite"],"type":"string"},{"type":"null"}],"default":"created_at","description":"Order by created_at, name or favorite.","title":"Sort"},"direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"desc","description":"Sort direction: asc or desc.","title":"Direction"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":30,"description":"How many results to return (1 to 100).","title":"Per Page"}},"required":["organization_id"],"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 project: name, language, release stages, open and for-review error counts and links. Use for \"Show details of Bu","description":"Get one project: name, language, release stages, open and for-review error counts and links. Use for \"Show details of BugSnag project 5f3d1c0a9b2e4a001c1a2b3c\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"}},"required":["project_id"],"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_errors":{"post":{"operationId":"list_errors","summary":"List a project's errors (grouped crashes) with class, message, status, severity, event and user counts and first and las","description":"List a project's errors (grouped crashes) with class, message, status, severity, event and user counts and first and last seen. Use for \"What are the most recently seen errors in my BugSnag project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"},"sort":{"anyOf":[{"enum":["last_seen","first_seen","users","events","unsorted"],"type":"string"},{"type":"null"}],"default":"last_seen","description":"Order by last_seen, first_seen, users, events or unsorted.","title":"Sort"},"direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"desc","description":"Sort direction: asc or desc.","title":"Direction"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":30,"description":"How many results to return (1 to 100).","title":"Per Page"}},"required":["project_id"],"title":"list_errorsArguments","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_error":{"post":{"operationId":"get_error","summary":"Get one error of a project: class, message, status, severity, assignment, event and user counts, first and last seen. Us","description":"Get one error of a project: class, message, status, severity, assignment, event and user counts, first and last seen. Use for \"How many users hit BugSnag error 5f3d1c0a9b2e4a001c1a2b3d\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"},"error_id":{"description":"BugSnag error id, from list_errors, for example '5f3d1c0a9b2e4a001c1a2b3d'.","maxLength":64,"title":"Error Id","type":"string"}},"required":["project_id","error_id"],"title":"get_errorArguments","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_error_events":{"post":{"operationId":"list_error_events","summary":"List individual occurrences (events) of one error, newest first, with time, message, severity, release stage and whether","description":"List individual occurrences (events) of one error, newest first, with time, message, severity, release stage and whether it was unhandled. Use for \"Show the latest occurrences of BugSnag error 5f3d1c0a9b2e4a001c1a2b3d\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"},"error_id":{"description":"BugSnag error id, from list_errors, for example '5f3d1c0a9b2e4a001c1a2b3d'.","maxLength":64,"title":"Error Id","type":"string"},"direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"desc","description":"Sort direction: asc or desc.","title":"Direction"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":30,"description":"How many results to return (1 to 100).","title":"Per Page"}},"required":["project_id","error_id"],"title":"list_error_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/list_project_events":{"post":{"operationId":"list_project_events","summary":"List the latest events across a whole project, newest first, with error class, message, severity and release stage. Use ","description":"List the latest events across a whole project, newest first, with error class, message, severity and release stage. Use for \"What crashes did my BugSnag project receive most recently\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"},"direction":{"anyOf":[{"enum":["asc","desc"],"type":"string"},{"type":"null"}],"default":"desc","description":"Sort direction: asc or desc.","title":"Direction"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":30,"description":"How many results to return (1 to 100).","title":"Per Page"}},"required":["project_id"],"title":"list_project_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/list_releases":{"post":{"operationId":"list_releases","summary":"List a project's releases with version, release stage, time, error counts and session counts. Default 5 per call. Use fo","description":"List a project's releases with version, release stage, time, error counts and session counts. Default 5 per call. Use for \"What are the latest releases of my BugSnag project and how stable are they\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"},"release_stage":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only releases in this release stage, for example 'production'.","title":"Release Stage"},"sort":{"anyOf":[{"enum":["timestamp","percent_of_sessions"],"type":"string"},{"type":"null"}],"default":"timestamp","description":"Order by timestamp or percent_of_sessions.","title":"Sort"},"offset":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many releases to skip, for paging.","title":"Offset"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":5,"description":"How many releases to return (1 to 100).","title":"Per Page"}},"required":["project_id"],"title":"list_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}},"/v1/tools/get_stability_trend":{"post":{"operationId":"get_stability_trend","summary":"Show the project's stability over time: sessions and unhandled sessions per time bucket. Use for \"How stable has my BugS","description":"Show the project's stability over time: sessions and unhandled sessions per time bucket. Use for \"How stable has my BugSnag project been recently\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"BugSnag project id, from list_projects (the id field), for example '5f3d1c0a9b2e4a001c1a2b3c'.","maxLength":64,"title":"Project Id","type":"string"}},"required":["project_id"],"title":"get_stability_trendArguments","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}}}}