openapi: 3.0.0 info: version: 1.1.0 title: Zenduty Account Custom Role Escalation Policies API termsOfService: https://zenduty.com contact: email: vishwa@zenduty.com license: name: Apache 2.0 x-logo: url: data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9Ii05OC4zIDE3My43IDIwNi4zIDUzLjIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgLTk4LjMgMTczLjcgMjA2LjMgNTMuMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzBGMTcyQTt9DQoJLnN0MXtmaWxsOiNGRDlBMDA7fQ0KPC9zdHlsZT4NCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0tMjksMjEwLjJoNi4zYzIuNywwLDQuOSwyLjIsNC45LDQuOWgtMTguMWMwLTUuMyw0LjEtOS40LDcuOS0xMy4xbDMuOC0zLjdoLTcuMWMtMi41LDAtNC42LTIuMS00LjYtNC42aDE4DQoJYzAsNS4zLTQuMSw5LjQtNy44LDEzLjJMLTI5LDIxMC4yeiIvPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTTMuNywyMDUuOGgtMTUuNWMwLjEsMS41LDAuNiwyLjcsMS42LDMuNmMwLjksMC45LDIuMSwxLjIsMy41LDEuMmMyLDAsMy40LTAuOSw0LjMtMi41aDUuOA0KCWMtMC42LDItMS44LDMuNi0zLjUsNC45Yy0xLjgsMS4yLTMuOSwyLTYuNCwyYy0yLDAtMy45LTAuNS01LjUtMS40Yy0xLjYtMC45LTIuOS0yLjEtMy44LTMuN2MtMC45LTEuNi0xLjQtMy40LTEuNC01LjcNCgljMC0yLjEsMC41LTQuMSwxLjQtNS43YzAuOS0xLjYsMi4xLTIuOCwzLjgtMy43YzEuNi0wLjksMy40LTEuNCw1LjUtMS40YzIsMCwzLjgsMC40LDUuNCwxLjJjMS42LDAuOSwyLjgsMi4xLDMuNywzLjYNCgljMC45LDEuNiwxLjMsMy4zLDEuMyw1LjRDMy44LDIwNC42LDMuOCwyMDUuMiwzLjcsMjA1Ljh6IE0tMS43LDIwMi4yYzAtMS40LTAuNS0yLjUtMS41LTMuMmMtMS0wLjktMi4xLTEuMi0zLjUtMS4yDQoJYy0xLjQsMC0yLjQsMC40LTMuNCwxLjJjLTAuOSwwLjctMS41LDEuOC0xLjYsMy4zaDEwLjFWMjAyLjJ6Ii8+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjcuOSwxOTguNGMwLjktMS42LDItMi45LDMuNS0zLjhjMS41LTAuOSwzLjEtMS40LDQuOS0xLjRjMS40LDAsMi42LDAuMywzLjksMC45YzEuMywwLjYsMi4zLDEuNCwzLDIuNHYtMTYuNw0KCWg1LjR2MzVoLTUuNHYtMy4xYy0wLjYsMS0xLjYsMS45LTIuOCwyLjVjLTEuMywwLjYtMi42LDEtNC4yLDFjLTEuOCwwLTMuNC0wLjUtNC45LTEuNGMtMS41LTAuOS0yLjYtMi4zLTMuNS0zLjkNCgljLTAuOS0xLjYtMS4zLTMuNS0xLjMtNS44QzI2LjYsMjAyLDI3LDIwMCwyNy45LDE5OC40eiBNNDIuNSwyMDAuOWMtMC41LTAuOS0xLjMtMS42LTItMi4xYy0wLjktMC41LTEuOC0wLjgtMi44LTAuOA0KCWMtMSwwLTEuOSwwLjMtMi44LDAuOGMtMC45LDAuNS0xLjUsMS4xLTIsMi4xYy0wLjUsMC45LTAuOCwyLTAuOCwzLjNjMCwxLjMsMC4zLDIuNCwwLjgsMy40YzAuNSwxLDEuMywxLjYsMiwyLjENCgljMC45LDAuNSwxLjgsMC44LDIuOCwwLjhjMSwwLDEuOS0wLjMsMi44LTAuOGMwLjktMC41LDEuNS0xLjMsMi0yLjFjMC41LTAuOSwwLjgtMiwwLjgtMy40UzQzLDIwMS44LDQyLjUsMjAwLjl6Ii8+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjUuNCwyMDQuM3YxMC42aC01di0xMC42YzAtMi0wLjUtMy41LTEuNS00LjVjLTEtMS4xLTIuMS0xLjYtMy41LTEuNnMtMi41LDAuNS0zLjUsMS42DQoJYy0wLjksMS0xLjQsMi42LTEuNCw0LjV2MTAuNkg1LjV2LTEwLjZjMC0yLjEsMC41LTQsMS4zLTUuN2MwLjktMS42LDItMi45LDMuNS0zLjhzMy4xLTEuNCw1LTEuNHMzLjUsMC41LDUsMS40DQoJYzEuNSwwLjksMi42LDIuMSwzLjUsMy44QzI0LjksMjAwLjMsMjUuNCwyMDIuMiwyNS40LDIwNC4zeiIvPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTTUxLjMsMjA0LjF2LTEwLjRoNXYxMC40YzAsMiwwLjUsMy41LDEuNSw0LjVjMSwxLjEsMi4xLDEuNiwzLjUsMS42YzEuNCwwLDIuNS0wLjUsMy41LTEuNg0KCWMwLjktMSwxLjQtMi42LDEuNC00LjV2LTEwLjRoNC45djEwLjRjMCwyLjEtMC41LDQtMS4zLDUuN2MtMC45LDEuNi0yLDIuOS0zLjUsMy44Yy0xLjUsMC45LTMuMSwxLjQtNSwxLjRzLTMuNS0wLjUtNS0xLjQNCgljLTEuNS0wLjktMi42LTIuMS0zLjUtMy44QzUxLjcsMjA4LjEsNTEuMywyMDYuMiw1MS4zLDIwNC4xeiIvPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTTgwLjcsMTk4djEwLjJjMCwwLjgsMC4xLDEuMywwLjUsMS41YzAuNCwwLjQsMC45LDAuNSwxLjgsMC41aDIuNXY0LjVoLTMuNGMtNC41LDAtNi44LTIuMS02LjgtNi41VjE5OGgtNS4xDQoJdi00LjRoNS4xdi04LjdoNS40djguN2g0LjhsMi42LDQuNEg4MC43eiIvPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTTEwNy40LDE5My42bC04LjcsMjAuNmwtNSwxMS44aC01LjdsNS4xLTExLjhsLTguNC0yMC42aDZsNS40LDE0LjdsNS41LTE0LjdIMTA3LjR6Ii8+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNLTY2LjksMTg5LjJjLTEuOSwwLTQuNy0yLjEtNC43LTQuOHYtMy42YzAtMi43LDAuOC00LjgsNC43LTQuOGMzLjksMCw0LjcsMi4xLDQuNyw0Ljh2My42DQoJQy02Mi4yLDE4Ny4xLTY1LDE4OS4yLTY2LjksMTg5LjJ6Ii8+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNLTM3LjcsMjIzaC0yMS41bDMuOC0xMS40bDAuNy0xLjhjNC4yLDEuNywxMy4xLDcuMiwxNy43LDExLjZDLTM2LjQsMjIyLjEtMzYuOCwyMjMtMzcuNywyMjN6Ii8+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNLTU3LjMsMTkyLjlsLTE1LjksMTAuNGMtNC4yLTIuNS05LjItNS45LTEyLjItOC44Yy0wLjYtMC42LTAuMi0xLjUsMC43LTEuNUgtNTcuM3oiLz4NCjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik0tNDguNiwxOTQuM2wtNiwxNS42bC0wLjcsMS44bC0zLjgsMTEuNEgtOTZjLTAuOCwwLTEuMy0wLjktMC44LTEuNWMwLjktMS4yLDEuOC0yLjMsMi43LTMuMw0KCWMyLjEtMi4yLDQuNC00LjEsNi45LTUuOGwwLjEtMC4xYzAuOC0wLjYsMS42LTEuMSwyLjQtMS42bDExLjQtNy40bDE1LjktMTAuNGg3LjdDLTQ4LjgsMTkyLjktNDguNCwxOTMuNi00OC42LDE5NC4zeiIvPg0KPC9zdmc+DQo= description: "# Introduction\n\nZenduty is a cutting edge platform for incident management. With high level automation, Zenduty enables faster and better incident resolution keeping developers first.\n\n\n Javascript Libraries: https://github.com/Zenduty/zenduty-js\n\n Ruby Libraries: https://github.com/Zenduty/zenduty-ruby\n\n Python Libraries: https://github.com/Zenduty/zenduty-python-sdk\n\n Postman Collection for Zenduty API: https://github.com/Zenduty/zenduty-api-postman.git\n\n Account-level roles and permissions: https://docs.zenduty.com/docs/users#account-level-roles-and-permissions\n\n Team-level roles and permissions: https://docs.zenduty.com/docs/users#team-level-roles-and-permissions\n" servers: - url: https://www.zenduty.com security: - bearerAuth: [] tags: - name: Escalation Policies description: This object represents the escalation policy of a team. You can checkout the escalation policy docs here https://docs.zenduty.com/docs/escalationpolicies paths: /api/account/teams/{}/escalation_policies/: parameters: - name: team_id in: path description: unique_id of the Team object schema: type: string required: true post: tags: - Escalation Policies summary: Create the Escalation Policy object description: Create the Escalation Policy object by setting the values of all the required parameters passed in the request body. requestBody: description: Request body parameters to create the Escalation Policy object required: true content: application/json: schema: $ref: '#/components/schemas/EPPayload' example: name: Production Escalation Policy rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 application/xml: schema: $ref: '#/components/schemas/EPPayload' example: name: Production Escalation Policy rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 responses: '201': description: OK content: application/json: schema: $ref: '#/components/schemas/EP' example: name: Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 32b594ec-72f6-4eeb-8024-ef25a8b9f97e unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false application/xml: schema: $ref: '#/components/schemas/EP' example: name: Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 32b594ec-72f6-4eeb-8024-ef25a8b9f97e unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false '400': description: Bad Request content: application/json: example: detail: This request can not be processed. application/xml: example: detail: This request can not be processed. '403': description: Forbidden content: application/json: example: detail: You do not have permission to perform this action. application/xml: example: detail: You do not have permission to perform this action. '404': description: Not Found content: application/json: example: detail: Not Found. application/xml: example: detail: Not Found. get: tags: - Escalation Policies summary: List all Escalation Policy objects description: Returns a list of Escalation Policy objects. responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/EP' example: - name: Default Escalation Policy summary: This is the default escalation policy for this team description: '' rules: - delay: 0 targets: - target_type: 2 target_id: 216bba3d-7268-4a8e-89e9-6 position: 1 unique_id: a857eb8b-28bf-4503-a1d5-a1d737c48fdc unique_id: 19fdd4c3-0d4a-4a6e-9885-8c8d33ef1488 team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false - name: Infra Escalation Policy summary: '' description: '' rules: - delay: 0 targets: - target_type: 1 target_id: 4a3025f3-836f-4d18-8923-7adfe5690d17 - target_type: 2 target_id: 507dfda0-a1fd-40e5-943a-e - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 23077ffc-8529-4848-89d0-1a37bdf63d4e - delay: 4 targets: - target_type: 2 target_id: 216bba3d-7268-4a8e-89e9-6 position: 2 unique_id: 5298ba34-f23d-49a6-a4a2-814a7beb4b54 unique_id: 9ea1f98d-b5a3-4d72-8057-2f5f3d743a44 team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 2 move_to_next: true global_ep: false - name: Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 32b594ec-72f6-4eeb-8024-ef25a8b9f97e unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false application/xml: schema: $ref: '#/components/schemas/EP' example: - name: Default Escalation Policy summary: This is the default escalation policy for this team description: '' rules: - delay: 0 targets: - target_type: 2 target_id: 216bba3d-7268-4a8e-89e9-6 position: 1 unique_id: a857eb8b-28bf-4503-a1d5-a1d737c48fdc unique_id: 19fdd4c3-0d4a-4a6e-9885-8c8d33ef1488 team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false - name: Infra Escalation Policy summary: '' description: '' rules: - delay: 0 targets: - target_type: 1 target_id: 4a3025f3-836f-4d18-8923-7adfe5690d17 - target_type: 2 target_id: 507dfda0-a1fd-40e5-943a-e - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 23077ffc-8529-4848-89d0-1a37bdf63d4e - delay: 4 targets: - target_type: 2 target_id: 216bba3d-7268-4a8e-89e9-6 position: 2 unique_id: 5298ba34-f23d-49a6-a4a2-814a7beb4b54 unique_id: 9ea1f98d-b5a3-4d72-8057-2f5f3d743a44 team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 2 move_to_next: true global_ep: false - name: Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 32b594ec-72f6-4eeb-8024-ef25a8b9f97e unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false '400': description: Bad Request content: application/json: example: detail: This request can not be processed. application/xml: example: detail: This request can not be processed. '403': description: Forbidden content: application/json: example: detail: You do not have permission to perform this action. application/xml: example: detail: You do not have permission to perform this action. '404': description: Not Found content: application/json: example: detail: Not Found. application/xml: example: detail: Not Found. /api/account/teams/{team_id}/escalation_policies/{escalation_policy_id}/: parameters: - name: team_id in: path description: unique_id of the Team object schema: type: string required: true - name: escalation_policy_id in: path description: unique_id of the Escalation Policy object schema: type: string required: true get: tags: - Escalation Policies summary: Retrieve the Escalation Policy object responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/EP' example: name: Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 32b594ec-72f6-4eeb-8024-ef25a8b9f97e unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false application/xml: schema: $ref: '#/components/schemas/EP' example: name: Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: 32b594ec-72f6-4eeb-8024-ef25a8b9f97e unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false '400': description: Bad Request content: application/json: example: detail: This request can not be processed. application/xml: example: detail: This request can not be processed. '403': description: Forbidden content: application/json: example: detail: You do not have permission to perform this action. application/xml: example: detail: You do not have permission to perform this action. '404': description: Not Found content: application/json: example: detail: Not Found. application/xml: example: detail: Not Found. put: tags: - Escalation Policies summary: Update the Escalation Policy object description: Updates the specified Escalation Policy object by setting the values of the parameters passed in the request body. Any parameters not provided will be left unchanged. requestBody: description: Request body parameters to update the Escalation Policy object required: true content: application/json: schema: $ref: '#/components/schemas/EPPayload' example: name: Modified Production Escalation Policy rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/EP' example: name: Modified Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: f15f0044-25a1-4c60-888a-c7f1a6b7d4ce unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false application/xml: schema: $ref: '#/components/schemas/EP' example: name: Modified Production Escalation Policy summary: '' description: '' rules: - delay: 2 targets: - target_type: 2 target_id: 85b563c8-18d0-4668-9462-9 position: 1 unique_id: f15f0044-25a1-4c60-888a-c7f1a6b7d4ce unique_id: 904cfcad-9fe1-4dc7-b578-ad0f5a2950fd team: 61010821-08aa-4098-94f8-f88f1990b54a repeat_policy: 0 move_to_next: true global_ep: false '400': description: Bad Request content: application/json: example: detail: This request can not be processed. application/xml: example: detail: This request can not be processed. '403': description: Forbidden content: application/json: example: detail: You do not have permission to perform this action. application/xml: example: detail: You do not have permission to perform this action. '404': description: Not Found content: application/json: example: detail: Not Found. application/xml: example: detail: Not Found. delete: tags: - Escalation Policies summary: Delete the Escalation Policy object description: Delete the specified Escalation Policy object permanently. responses: '204': description: Success '400': description: Bad Request content: application/json: example: detail: This request can not be processed. application/xml: example: detail: This request can not be processed. '403': description: Forbidden content: application/json: example: detail: You do not have permission to perform this action. application/xml: example: detail: You do not have permission to perform this action. '404': description: Not Found content: application/json: example: detail: Not Found. application/xml: example: detail: Not Found. components: schemas: EPPayload: type: object description: Payload schema for the Escalation Policy object required: - name - rules properties: name: type: string description: A string that represents the Escalation Policy object's name summary: type: string description: A string that represents the Escalation Policy object's summary description: type: string description: A string that represents the Escalation Policy object's description rules: $ref: '#/components/schemas/EP_RulePayload' EP_RulePayload: type: object description: Escalation Policy Rule Payload object schema required: - delay properties: delay: type: integer default: 0 description: An integer that represents the amount of time before the escalation of the Escalation Policy object after the incident object is created. For example, t=0 is When an incident is created, if delay=5, then this Escalation Policy Rule object will be escalated at t=5. target: type: object description: Escalation Policy Rule Target object schema properties: target_type: type: integer description: An integer that represents the Escalation Policy Rule Target object's target_type. 1 for Schedule and 2 for User target_id: type: string description: A system-generated string that represents Escalation Policy Rule Target object's target_id. If target_type is 1 then target_id is Schedule object's unique_id and if target_type is 2 then target_id is User object's username position: type: integer description: An integer that represents the Escalation Policy Rule object's position EP: type: object description: Escalation Policy object schema properties: name: type: string description: A string that represents the Escalation Policy object's name summary: type: string description: A string that represents the Escalation Policy object's summary description: type: string description: A string that represents the Escalation Policy object's description rules: $ref: '#/components/schemas/EP_Rule' unique_id: type: string description: A string that represents the Escalation Policy object's unique_id team: type: string description: A system-generated string that represents the Team object's unique_id repeat_policy: type: integer description: An integer that represents the Escalation Policy object's repeat_policy move_to_next: type: boolean description: A boolean flag that represents whether to move to the next Escalation Rule if no user is found on the current Escalation Rule global_ep: type: boolean description: A boolean flag that represents whether the Escalation Policy is global or not. EP_Rule: type: object description: Escalation Policy Rule object schema required: - delay properties: delay: type: integer default: 0 description: An integer that represents the amount of time before the escalation of the Escalation Policy object after the incident object is created. For example, t=0 is When an incident is created, if delay=5, then this Escalation Policy Rule object will be escalated at t=5. target: type: object description: Escalation Policy Rule Target object schema properties: target_type: type: integer description: An integer that represents the Escalation Policy Rule Target object's target_type. 1 for Schedule and 2 for User target_id: type: string description: A system-generated string that represents Escalation Policy Rule Target object's target_id. If target_type is 1 then target_id is Schedule object's unique_id and if target_type is 2 then target_id is User object's username position: type: integer description: An integer that represents the Escalation Policy Rule object's position unique_id: type: string description: A system-generated string that represents Escalation Policy Rule object's unique_id. securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: Token