{"openapi":"3.1.0","info":{"title":"PagerDuty Business Services (BYOK) API","version":"0.1.0","description":"PagerDuty Business Services (BYOK) lets an AI assistant read your own PagerDuty Business Services data through the PagerDuty Business Services API with a key you supply (REST API key). Read-only: 9 tools (list_business_services, get_business_service, list_business_service_impacts, list_business_service_impactors, list_supporting_service_impacts, get_priority_threshold,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-pagerduty-business-services.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-pagerduty-business-services/docs"},"termsOfService":"https://connectorbay.com/byok-pagerduty-business-services/terms"},"servers":[{"url":"https://byok-pagerduty-business-services.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-pagerduty-business-services/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_business_services":{"post":{"operationId":"list_business_services","summary":"List business services (capabilities that span several technical services) with name, description, point of contact and ","description":"List business services (capabilities that span several technical services) with name, description, point of contact and owning team. Business services need a PagerDuty plan that includes them. Use for \"Which business services are defined in PagerDuty\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":25,"description":"How many results to return (1 to 100).","title":"Limit"},"offset":{"anyOf":[{"maximum":10000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"How many results to skip, for paging.","title":"Offset"}},"title":"list_business_servicesArguments","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_business_service":{"post":{"operationId":"get_business_service","summary":"Get one business service by id: name, description, point of contact and owning team. Use for \"Show PagerDuty business se","description":"Get one business service by id: name, description, point of contact and owning team. Use for \"Show PagerDuty business service PABC123\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"business_service_id":{"description":"Business service ID from list_business_services (for example 'PABC123').","maxLength":40,"title":"Business Service Id","type":"string"}},"required":["business_service_id"],"title":"get_business_serviceArguments","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_business_service_impacts":{"post":{"operationId":"list_business_service_impacts","summary":"List top-level business services sorted by impact status (highest impact first, up to 200), optionally with the highest ","description":"List top-level business services sorted by impact status (highest impact first, up to 200), optionally with the highest impacting priority and total impacted count. Use for \"Which PagerDuty business services are impacted right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"ids":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only this business service id (the API accepts several ids; this tool sends one).","title":"Ids"},"additional_fields":{"anyOf":[{"enum":["services.highest_impacting_priority","total_impacted_count"],"type":"string"},{"type":"null"}],"default":null,"description":"Extra fields to include.","title":"Additional Fields"}},"title":"list_business_service_impactsArguments","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_business_service_impactors":{"post":{"operationId":"list_business_service_impactors","summary":"List the incidents currently impacting top-level business services (highest priority first, up to 200). Use for \"Which i","description":"List the incidents currently impacting top-level business services (highest priority first, up to 200). Use for \"Which incidents are impacting my PagerDuty business services\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"ids":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only this business service id (the API accepts several ids; this tool sends one).","title":"Ids"}},"title":"list_business_service_impactorsArguments","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_supporting_service_impacts":{"post":{"operationId":"list_supporting_service_impacts","summary":"List the business services that support a given business service, sorted by impact status (up to 200). Use for \"Which se","description":"List the business services that support a given business service, sorted by impact status (up to 200). Use for \"Which services supporting PABC123 are impacted in PagerDuty\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"business_service_id":{"description":"Business service ID from list_business_services (for example 'PABC123').","maxLength":40,"title":"Business Service Id","type":"string"},"ids":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only this business service id (the API accepts several ids; this tool sends one).","title":"Ids"},"additional_fields":{"anyOf":[{"enum":["services.highest_impacting_priority","total_impacted_count"],"type":"string"},{"type":"null"}],"default":null,"description":"Extra fields to include.","title":"Additional Fields"}},"required":["business_service_id"],"title":"list_supporting_service_impactsArguments","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_priority_threshold":{"post":{"operationId":"get_priority_threshold","summary":"Show the account-wide incident priority a service's incident must reach to mark dependent business services as impacted.","description":"Show the account-wide incident priority a service's incident must reach to mark dependent business services as impacted. Use for \"What priority makes a PagerDuty incident impact a business service\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_priority_thresholdArguments","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_business_service_dependencies":{"post":{"operationId":"get_business_service_dependencies","summary":"List the immediate dependencies of a business service: supporting and dependent services with ids and types. Use for \"Wh","description":"List the immediate dependencies of a business service: supporting and dependent services with ids and types. Use for \"What does PagerDuty business service PABC123 depend on\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"business_service_id":{"description":"Business service ID from list_business_services (for example 'PABC123').","maxLength":40,"title":"Business Service Id","type":"string"}},"required":["business_service_id"],"title":"get_business_service_dependenciesArguments","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_service_dependencies":{"post":{"operationId":"get_service_dependencies","summary":"List the immediate dependencies of a technical service: supporting and dependent services with ids and types. Use for \"W","description":"List the immediate dependencies of a technical service: supporting and dependent services with ids and types. Use for \"Which services depend on PagerDuty service PXYZ789\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"service_id":{"description":"Service ID (for example 'PXYZ789').","maxLength":40,"title":"Service Id","type":"string"}},"required":["service_id"],"title":"get_service_dependenciesArguments","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_priorities":{"post":{"operationId":"list_priorities","summary":"List the incident priority levels defined in the account with name, description and order. Use for \"Which incident prior","description":"List the incident priority levels defined in the account with name, description and order. Use for \"Which incident priorities does PagerDuty use in my account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_prioritiesArguments","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}}}}