openapi: 3.0.2 info: description: 'This document describes the PagerDuty REST APIs. For guides and examples please visit our [Documentation.](https://developer.pagerduty.com/docs/get-started/getting-started/) Our REST APIs are defined in OpenAPI v3.x. You can view the schema at [github.com/PagerDuty/api-schema](https://github.com/PagerDuty/api-schema). Note that properties in some schemas have fields not shown by default such as `readOnly`, `format`, and `default`. Hover your cursor over the right column that looks like `optional+1` to see the full list of fields. ' contact: name: PagerDuty Support url: http://www.pagerduty.com/support email: support@pagerduty.com title: PagerDuty Abilities Users API version: 2.0.0 servers: - url: https://api.pagerduty.com description: PagerDuty V2 API. security: - api_key: [] tags: - name: Users description: 'Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. ' paths: /users: description: List and create users. get: x-pd-requires-scope: users.read tags: - Users operationId: listUsers description: 'List users of your PagerDuty account, optionally filtered by a search query. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.read` ' summary: PagerDuty List users parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/query' - $ref: '#/components/parameters/team_ids' - $ref: '#/components/parameters/offset_limit' - $ref: '#/components/parameters/offset_offset' - $ref: '#/components/parameters/offset_total' - $ref: '#/components/parameters/include_user' responses: '200': description: A paginated array of users. content: application/json: schema: allOf: - $ref: '#/components/schemas/Pagination' - type: object properties: users: type: array items: $ref: '#/components/schemas/User' required: - users examples: response: summary: Response Example value: users: - id: PXPGF42 type: user summary: Earline Greenholt self: https://api.pagerduty.com/users/PXPGF42 html_url: https://subdomain.pagerduty.com/users/PXPGF42 name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin avatar_url: https://secure.gravatar.com/avatar/a8b714a39626f2444ee05990b078995f.png?d=mm&r=PG description: I'm the boss invitation_sent: false contact_methods: - id: PTDVERC type: email_contact_method_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PTDVERC notification_rules: - id: P8GRWKK type: assignment_notification_rule_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/notification_rules/P8GRWKK html_url: null job_title: Director of Engineering teams: - id: PQ9K7I8 type: team_reference summary: Engineering self: https://api.pagerduty.com/teams/PQ9K7I8 html_url: https://subdomain.pagerduty.com/teams/PQ9K7I8 - id: PAM4FGS type: user summary: Kyler Kuhn self: https://api.pagerduty.com/users/PAM4FGS html_url: https://subdomain.pagerduty.com/users/PAM4FGS name: Kyler Kuhn email: 126_dvm_kyler_kuhn@beahan.name time_zone: Asia/Hong_Kong color: red role: admin avatar_url: https://secure.gravatar.com/avatar/47857d059adacf9a41dc4030c2e14b0a.png?d=mm&r=PG description: Actually, I am the boss invitation_sent: false contact_methods: - id: PVMGSML type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PAM4FGS/contact_methods/PVMGSMLL notification_rules: - id: P8GRWKK type: assignment_notification_rule_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/notification_rules/P8GRWKK html_url: null job_title: Senior Engineer teams: - id: PQ9K7I8 type: team_reference summary: Engineering self: https://api.pagerduty.com/teams/PQ9K7I8 html_url: https://subdomain.pagerduty.com/teams/PQ9K7I8 limit: 25 offset: 0 more: false total: null '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' post: x-pd-requires-scope: users.write tags: - Users operationId: createUser description: 'Create a new user. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Create a user parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/from_header' requestBody: content: application/json: schema: type: object properties: user: allOf: - $ref: '#/components/schemas/User' - properties: license: allOf: - description: The License assigned to the User - $ref: '#/components/schemas/LicenseReference' required: - user examples: request: summary: Request Example value: user: type: user name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin job_title: Director of Engineering avatar_url: https://secure.gravatar.com/avatar/1d1a39d4635208d5664082a6c654a73f.png?d=mm&r=PG description: I'm the boss license: id: PTDVERC type: license_reference description: The user to be created. responses: '201': description: The user that was created. content: application/json: schema: type: object properties: user: $ref: '#/components/schemas/User' required: - user examples: response: summary: Response Example value: user: id: PXPGF42 type: user summary: Earline Greenholt self: https://api.pagerduty.com/users/PXPGF42 html_url: https://subdomain.pagerduty.com/users/PXPGF42 name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin avatar_url: https://secure.gravatar.com/avatar/a8b714a39626f2444ee05990b078995f.png?d=mm&r=PG description: I'm the boss invitation_sent: false contact_methods: - id: PTDVERC type: email_contact_method_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PTDVERC notification_rules: - id: P8GRWKK type: assignment_notification_rule_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/notification_rules/P8GRWKK html_url: null job_title: Director of Engineering teams: - id: PQ9K7I8 type: team_reference summary: Engineering self: https://api.pagerduty.com/teams/PQ9K7I8 html_url: https://subdomain.pagerduty.com/teams/PQ9K7I8 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}: description: Manage a user. get: x-pd-requires-scope: users.read tags: - Users operationId: getUser description: 'Get details about an existing user. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.read` ' summary: PagerDuty Get a user parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/include_user' responses: '200': description: The user requested. content: application/json: schema: type: object properties: user: $ref: '#/components/schemas/User' required: - user examples: response: summary: Response Example value: user: id: PXPGF42 type: user summary: Earline Greenholt self: https://api.pagerduty.com/users/PXPGF42 html_url: https://subdomain.pagerduty.com/users/PXPGF42 name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin avatar_url: https://secure.gravatar.com/avatar/a8b714a39626f2444ee05990b078995f.png?d=mm&r=PG description: I'm the boss invitation_sent: false contact_methods: - id: PTDVERC type: email_contact_method_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PTDVERC notification_rules: - id: P8GRWKK type: assignment_notification_rule_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/notification_rules/P8GRWKK html_url: null job_title: Director of Engineering teams: - id: PQ9K7I8 type: team_reference summary: Engineering self: https://api.pagerduty.com/teams/PQ9K7I8 html_url: https://subdomain.pagerduty.com/teams/PQ9K7I8 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: x-pd-requires-scope: users.write tags: - Users operationId: deleteUser description: 'Remove an existing user. Returns 400 if the user has assigned incidents unless your [pricing plan](https://www.pagerduty.com/pricing) has the `offboarding` feature and the account is [configured](https://support.pagerduty.com/docs/offboarding#section-additional-configurations) appropriately. Note that the incidents reassignment process is asynchronous and has no guarantee to complete before the api call return. [*Learn more about `offboarding` feature*](https://support.pagerduty.com/docs/offboarding). Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Delete a user parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' responses: '204': description: The user was deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' put: x-pd-requires-scope: users.write tags: - Users operationId: updateUser description: 'Update an existing user. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Update a user parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: type: object properties: user: allOf: - $ref: '#/components/schemas/User' - properties: license: allOf: - description: The License assigned to the User - $ref: '#/components/schemas/LicenseReference' required: - user examples: request: summary: Request Example value: user: type: user name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin job_title: Director of Engineering avatar_url: https://secure.gravatar.com/avatar/1d1a39d4635208d5664082a6c654a73f.png?d=mm&r=PG description: I'm the boss license: id: PTDVERC type: license_reference description: The user to be updated. responses: '200': description: The user that was updated. content: application/json: schema: type: object properties: user: $ref: '#/components/schemas/User' required: - user examples: response: summary: Response Example value: user: id: PXPGF42 type: user summary: Earline Greenholt self: https://api.pagerduty.com/users/PXPGF42 html_url: https://subdomain.pagerduty.com/users/PXPGF42 name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin avatar_url: https://secure.gravatar.com/avatar/a8b714a39626f2444ee05990b078995f.png?d=mm&r=PG description: I'm the boss invitation_sent: false contact_methods: - id: PTDVERC type: email_contact_method_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PTDVERC notification_rules: - id: P8GRWKK type: assignment_notification_rule_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/notification_rules/P8GRWKK html_url: null job_title: Director of Engineering teams: - id: PQ9K7I8 type: team_reference summary: Engineering self: https://api.pagerduty.com/teams/PQ9K7I8 html_url: https://subdomain.pagerduty.com/teams/PQ9K7I8 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/audit/records: description: List audit records of changes made to the user. get: x-pd-requires-scope: audit_records.read tags: - Users operationId: listUsersAuditRecords summary: PagerDuty List audit records for a user description: 'The response will include audit records with changes that are made to the identified user not changes made by the identified user. The returned records are sorted by the `execution_time` from newest to oldest. See [`Cursor-based pagination`](https://developer.pagerduty.com/docs/rest-api-v2/pagination/) for instructions on how to paginate through the result set. For more information see the [Audit API Document](https://developer.pagerduty.com/docs/rest-api-v2/audit-records-api/). Scoped OAuth requires: `audit_records.read` ' parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/cursor_limit' - $ref: '#/components/parameters/cursor_cursor' - $ref: '#/components/parameters/audit_since' - $ref: '#/components/parameters/audit_until' responses: '200': description: Records matching the query criteria. content: application/json: schema: $ref: '#/components/schemas/AuditRecordResponseSchema' examples: response: $ref: '#/components/examples/AuditRecordUserResponse' '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' /users/{id}/contact_methods: description: List a user's contact methods. get: x-pd-requires-scope: users:contact_methods.read tags: - Users operationId: getUserContactMethods description: 'List contact methods of your PagerDuty user. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.read` ' summary: PagerDuty List a user's contact methods parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' responses: '200': description: A list of contact methods. content: application/json: schema: type: object properties: contact_methods: type: array items: oneOf: - $ref: '#/components/schemas/PhoneContactMethod' - $ref: '#/components/schemas/PushContactMethod' - $ref: '#/components/schemas/EmailContactMethod' examples: response: summary: Response Example value: contact_methods: - id: PXPGF42 type: email_contact_method summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_method/PXPGF42 label: Work address: grady.haylie.126@hickle.net send_short_email: false '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' post: x-pd-requires-scope: users:contact_methods.write tags: - Users operationId: createUserContactMethod description: 'Create a new contact method for the User. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.write` ' summary: PagerDuty Create a user contact method parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: type: object properties: contact_method: oneOf: - $ref: '#/components/schemas/PhoneContactMethod' - $ref: '#/components/schemas/PushContactMethod' - $ref: '#/components/schemas/EmailContactMethod' required: - contact_method examples: request: summary: Request Example value: contact_method: id: PXPGF42 type: email_contact_method summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_method/PXPGF42 label: Work address: grady.haylie.126@hickle.net send_short_email: false description: The contact method to be created. responses: '201': description: The contact method that was created. content: application/json: schema: type: object properties: contact_method: oneOf: - $ref: '#/components/schemas/PhoneContactMethod' - $ref: '#/components/schemas/PushContactMethod' - $ref: '#/components/schemas/EmailContactMethod' examples: response: summary: Response Example value: contact_method: id: PXPGF42 type: email_contact_method summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_method/PXPGF42 label: Work address: grady.haylie.126@hickle.net send_short_email: false '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/contact_methods/{contact_method_id}: description: Manage a user's contact method. get: x-pd-requires-scope: users:contact_methods.read tags: - Users operationId: getUserContactMethod description: 'Get details about a User''s contact method. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.read` ' summary: PagerDuty Get a user's contact method parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_contact_method_id' responses: '200': description: The user's contact method requested. content: application/json: schema: type: object properties: contact_method: oneOf: - $ref: '#/components/schemas/PhoneContactMethod' - $ref: '#/components/schemas/PushContactMethod' - $ref: '#/components/schemas/EmailContactMethod' examples: response: summary: Response Example value: contact_method: id: PXPGF42 type: email_contact_method summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_method/PXPGF42 label: Work address: grady.haylie.126@hickle.net send_short_email: false '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: x-pd-requires-scope: users:contact_methods.write tags: - Users operationId: deleteUserContactMethod description: 'Remove a user''s contact method. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.write` ' summary: PagerDuty Delete a user's contact method parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_contact_method_id' responses: '204': description: The contact method was deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' put: x-pd-requires-scope: users:contact_methods.write tags: - Users operationId: updateUserContactMethod description: 'Update a User''s contact method. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.write` ' summary: PagerDuty Update a user's contact method parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_contact_method_id' requestBody: content: application/json: schema: type: object properties: contact_method: oneOf: - $ref: '#/components/schemas/PhoneContactMethod' - $ref: '#/components/schemas/PushContactMethod' - $ref: '#/components/schemas/EmailContactMethod' required: - contact_method examples: request: summary: Request Example value: contact_method: id: PXPGF42 type: email_contact_method summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_method/PXPGF42 label: Work address: grady.haylie.126@hickle.net send_short_email: false description: The user's contact method to be updated. responses: '200': description: The user's contact method that was updated. content: application/json: schema: type: object properties: contact_method: oneOf: - $ref: '#/components/schemas/PhoneContactMethod' - $ref: '#/components/schemas/PushContactMethod' - $ref: '#/components/schemas/EmailContactMethod' examples: response: summary: Response Example value: contact_method: id: PXPGF42 type: email_contact_method summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_method/PXPGF42 label: Work address: grady.haylie.126@hickle.net send_short_email: false '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/license: description: The License allocated to a User get: x-pd-requires-scope: licenses.read tags: - Users operationId: getUserLicense description: 'Get the License allocated to a User Scoped OAuth requires: `licenses.read` ' summary: PagerDuty Get the License allocated to a User parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' responses: '200': description: The License allocated to the User content: application/json: schema: type: object properties: license: $ref: '#/components/schemas/LicenseWithCounts/allOf/0' required: - license examples: response: summary: Response Example value: license: id: PIP248G name: Business (Full User) description: Event Intelligence valid_roles: - owner - admin - user - limited_user - observer - restricted_access role_group: FullUser summary: Business (Full User) type: license self: null html_url: null '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' /users/{id}/notification_rules: description: List a user's notification rules. get: x-pd-requires-scope: users:contact_methods.read tags: - Users operationId: getUserNotificationRules description: 'List notification rules of your PagerDuty user. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.read` ' summary: PagerDuty List a user's notification rules parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/include_notification_rules' - $ref: '#/components/parameters/urgency' responses: '200': description: A list of notification rules. content: application/json: schema: type: object properties: notification_rules: type: array items: $ref: '#/components/schemas/NotificationRule' required: - notification_rules examples: response: summary: Response Example value: notification_rules: - id: PXPGF42 type: assignment_notification_rule summary: Work self: https://api.pagerduty.com/users/PXPGF42/notification_rules/PPSCXAN start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 html_url: null created_at: '2016-02-01T16:06:27-05:00' urgency: high '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' post: x-pd-requires-scope: users:contact_methods.write tags: - Users operationId: createUserNotificationRule description: 'Create a new notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.write` ' summary: PagerDuty Create a user notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/NotificationRule' required: - notification_rule examples: request: summary: Request Example value: notification_rule: type: assignment_notification_rule start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference urgency: high description: The notification rule to be created. responses: '201': description: The notification rule that was created. content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/NotificationRule' required: - notification_rule examples: response: summary: Response Example value: notification_rule: id: PXPGF42 type: assignment_notification_rule summary: Work self: https://api.pagerduty.com/users/PXPGF42/notification_rules/PPSCXAN start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 html_url: null created_at: '2016-02-01T16:06:27-05:00' urgency: high '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/notification_rules/{notification_rule_id}: description: Manage a user's notification rule. get: x-pd-requires-scope: users:contact_methods.read tags: - Users operationId: getUserNotificationRule description: 'Get details about a user''s notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.read` ' summary: PagerDuty Get a user's notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_notification_rule_id' - $ref: '#/components/parameters/include_notification_rules' responses: '200': description: The user's notification rule requested. content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/NotificationRule' required: - notification_rule examples: response: summary: Response Example value: notification_rule: id: PXPGF42 type: assignment_notification_rule summary: Work self: https://api.pagerduty.com/users/PXPGF42/notification_rules/PPSCXAN start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 created_at: '2016-02-01T16:06:27-05:00' urgency: high '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: x-pd-requires-scope: users:contact_methods.write tags: - Users operationId: deleteUserNotificationRule description: 'Remove a user''s notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.write` ' summary: PagerDuty Delete a user's notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_notification_rule_id' responses: '204': description: The notification rule was deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' put: x-pd-requires-scope: users:contact_methods.write tags: - Users operationId: updateUserNotificationRule description: 'Update a user''s notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:contact_methods.write` ' summary: PagerDuty Update a user's notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_notification_rule_id' requestBody: content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/NotificationRule' required: - notification_rule examples: request: summary: Request Example value: notification_rule: type: assignment_notification_rule start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference urgency: high description: The user's notification rule to be updated. responses: '200': description: The user's notification rule that was updated. content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/NotificationRule' examples: response: summary: Response Example value: notification_rule: id: PXPGF42 type: assignment_notification_rule summary: Work self: https://api.pagerduty.com/users/PXPGF42/notification_rules/PPSCXAN start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 created_at: '2016-02-01T16:06:27-05:00' urgency: high '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/notification_subscriptions: get: x-pd-requires-scope: subscribers.read tags: - Users operationId: getUserNotificationSubscriptions description: 'Retrieve a list of Notification Subscriptions the given User has. > Users must be added through `POST /users/{id}/notification_subscriptions` to be returned from this endpoint. Scoped OAuth requires: `subscribers.read` ' summary: PagerDuty List Notification Subscriptions parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/id' responses: '200': description: OK content: application/json: schema: allOf: - $ref: '#/components/schemas/Pagination' - type: object properties: subscriptions: type: array items: type: object properties: subscription: $ref: '#/components/schemas/NotificationSubscription' subscribable_name: type: string nullable: true description: The name of the subscribable required: - subscriptions examples: response: summary: Response Example value: subscriptions: - subscription: subscriber_id: PD1234 subscriber_type: user subscribable_id: PD1234 subscribable_type: incident subscribable_name: null account_id: PD1234 - subscription: subscriber_id: PD1234 subscriber_type: user subscribable_id: PD1234 subscribable_type: business_service subscribable_name: business service name account_id: PD1234 limit: 2 offset: 0 total: 1000 more: true '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' post: x-pd-requires-scope: subscribers.write summary: PagerDuty Create Notification Subcriptions operationId: createUserNotificationSubscriptions tags: - Users responses: '200': description: OK content: application/json: schema: type: object properties: subscriptions: type: array items: $ref: '#/components/schemas/NotificationSubscriptionWithContext' examples: response: summary: Response Example value: subscriptions: - account_id: PD1234 subscribable_id: PD1234 subscribable_type: incident subscriber_id: PD1234 subscriber_type: user result: success - account_id: PD1234 subscribable_id: PD1234 subscribable_type: business_service subscriber_id: PD1234 subscriber_type: user result: duplicate - account_id: PD1234 subscribable_id: PD1235 subscribable_type: business_service subscriber_id: PD1234 subscriber_type: user result: unauthorized '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '422': $ref: '#/components/responses/UnprocessableEntity' description: 'Create new Notification Subscriptions for the given User. Scoped OAuth requires: `subscribers.write` ' parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: type: object properties: subscribables: type: array uniqueItems: true minItems: 1 items: $ref: '#/components/schemas/NotificationSubscribable' required: - subscribables examples: request: summary: Request Example value: subscribables: - subscribable_type: incident subscribable_id: PD1234 - subscribable_type: business_service subscribable_id: PD1234 - subscribable_type: business_service subscribable_id: PD1235 description: The entities to subscribe to. /users/{id}/notification_subscriptions/unsubscribe: post: x-pd-requires-scope: subscribers.write summary: PagerDuty Remove Notification Subscriptions tags: - Users responses: '200': description: OK content: application/json: schema: type: object properties: deleted_count: type: number unauthorized_count: type: number non_existent_count: type: number required: - deleted_count - unauthorized_count - non_existent_count examples: response: summary: Response Example value: deleted_count: 1 unauthorized_count: 1 non_existent_count: 0 '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '422': $ref: '#/components/responses/UnprocessableEntity' operationId: unsubscribeUserNotificationSubscriptions description: 'Unsubscribe the given User from Notifications on the matching Subscribable entities. Scoped OAuth requires: `subscribers.write` ' parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: type: object properties: subscribables: type: array uniqueItems: true minItems: 1 items: $ref: '#/components/schemas/NotificationSubscribable' required: - subscribables examples: request: summary: Response Example value: subscribables: - subscribable_type: incident subscribable_id: PD1234 - subscribable_type: business_service subscribable_id: PD1234 description: The entities to unsubscribe from. /users/{id}/oncall_handoff_notification_rules: description: List a User's Oncall Handoff Notification Rules. get: tags: - Users x-pd-requires-scope: users.read operationId: getUserHandoffNotificationRules description: 'List Handoff Notification Rules of your PagerDuty User. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.read` ' summary: PagerDuty List a User's Handoff Notification Rules parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' responses: '200': description: A list of Handoff Notification Rules. content: application/json: schema: type: object properties: oncall_handoff_notification_rules: type: array items: $ref: '#/components/schemas/HandoffNotificationRule' required: - oncall_handoff_notification_rules examples: response: summary: Response Example value: oncall_handoff_notification_rules: - id: PXPGF42 handoff_type: both notify_advance_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' post: tags: - Users x-pd-requires-scope: users.write operationId: createUserHandoffNotificationRule description: 'Create a new Handoff Notification Rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Create a User Handoff Notification Rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: type: object properties: oncall_handoff_notification_rule: $ref: '#/components/schemas/HandoffNotificationRule' required: - oncall_handoff_notification_rule examples: request: summary: Request Example value: oncall_handoff_notification_rule: id: PXPGF43 handoff_type: both notify_advance_in_minutes: 180 contact_method: id: PXPGF42 type: email_contact_method_reference description: The Handoff Notification Rule to be created. responses: '201': description: The Handoff Notification Rule that was created. content: application/json: schema: type: object properties: oncall_handoff_notification_rule: $ref: '#/components/schemas/HandoffNotificationRule' required: - oncall_handoff_notification_rule examples: response: summary: Response Example value: oncall_handoff_notification_rule: id: PXPGF42 handoff_type: both notify_advance_in_minutes: 180 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/oncall_handoff_notification_rules/{oncall_handoff_notification_rule_id}: description: Manage a User's Handoff Notification Rule. get: tags: - Users x-pd-requires-scope: users.read operationId: getUserHandoffNotifiactionRule description: 'Get details about a User''s Handoff Notification Rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.read` ' summary: PagerDuty Get a user's handoff notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/oncall_handoff_notification_rule_id' responses: '200': description: The user's handoff notification rule requested. content: application/json: schema: type: object properties: oncall_handoff_notification_rule: $ref: '#/components/schemas/HandoffNotificationRule' required: - oncall_handoff_notification_rule examples: response: summary: Response Example value: oncall_handoff_notification_rule: id: PXPGF42 handoff_type: both notify_advance_in_minutes: 60 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: tags: - Users x-pd-requires-scope: users.write operationId: deleteUserHandoffNotificationRule description: 'Remove a User''s Handoff Notification Rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Delete a User's Handoff Notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/oncall_handoff_notification_rule_id' responses: '204': description: The handoff notification rule was deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' put: tags: - Users x-pd-requires-scope: users.write operationId: updateUserHandoffNotification description: 'Update a User''s Handoff Notification Rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Update a User's Handoff Notification Rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/oncall_handoff_notification_rule_id' requestBody: content: application/json: schema: type: object properties: oncall_handoff_notification_rule: $ref: '#/components/schemas/HandoffNotificationRule' required: - oncall_handoff_notification_rule examples: request: summary: Request Example value: oncall_handoff_notification_rule: id: PXPGF42 handoff_type: both notify_advance_in_minutes: 60 contact_method: id: PXPGF42 type: email_contact_method_reference description: The User's Handoff Notification Rule to be updated. responses: '200': description: The User's Handoff Notification Rule that was updated. content: application/json: schema: type: object properties: oncall_handoff_notification_rule: $ref: '#/components/schemas/HandoffNotificationRule' examples: response: summary: Response Example value: oncall_handoff_notification_rule: id: PXPGF42 handoff_type: oncall notify_advance_in_minutes: 30 contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/sessions: description: List a user's active sessions. get: x-pd-requires-scope: users:sessions.read tags: - Users operationId: getUserSessions description: 'List active sessions of a PagerDuty user. Beginning November 2021, active sessions no longer includes newly issued OAuth tokens. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:sessions.read` ' summary: PagerDuty List a user's active sessions parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' responses: '200': description: A list of the user's active sessions. content: application/json: schema: type: object properties: user_sessions: type: array items: $ref: '#/components/schemas/UserSession' required: - user_sessions examples: response: summary: Response Example value: user_sessions: - id: PXPGF42 user_id: PXPGF42 created_at: '2018-10-06T21:30:42Z' summary: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36 type: browser '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: x-pd-requires-scope: users:sessions.write tags: - Users operationId: deleteUserSessions description: 'Delete all user sessions. Beginning November 2021, user sessions no longer includes newly issued OAuth tokens. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:sessions.write` ' summary: PagerDuty Delete all user sessions parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' responses: '204': description: The user sessions were all deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/sessions/{type}/{session_id}: description: Manage a user's active session. get: x-pd-requires-scope: users:sessions.read tags: - Users operationId: getUserSession description: 'Get details about a user''s session. Beginning November 2021, user sessions no longer includes newly issued OAuth tokens. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:sessions.read` ' summary: PagerDuty Get a user's session parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/type' - $ref: '#/components/parameters/session_id' responses: '200': description: The user's session requested. content: application/json: schema: type: object properties: user_session: $ref: '#/components/schemas/UserSession' required: - user_session examples: response: summary: Response Example value: user_session: id: PXPGF42 user_id: PXPGF42 created_at: '2018-10-06T21:30:42Z' summary: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36 type: browser '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: x-pd-requires-scope: users:sessions.write tags: - Users operationId: deleteUserSession description: 'Delete a user''s session. Beginning November 2021, user sessions no longer includes newly issued OAuth tokens. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users:sessions.write` ' summary: PagerDuty Delete a user's session parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/type' - $ref: '#/components/parameters/session_id' responses: '204': description: The user session was deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/status_update_notification_rules: description: List a user's status update notification rules. get: x-pd-requires-scope: users.read tags: - Users operationId: getUserStatusUpdateNotificationRules description: 'List status update notification rules of your PagerDuty user. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.read` ' summary: PagerDuty List a user's status update notification rules parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/early_access_status-update-notification-rules' - $ref: '#/components/parameters/include_notification_rules' responses: '200': description: A list of status update notification rules. content: application/json: schema: type: object properties: status_update_notification_rules: type: array items: $ref: '#/components/schemas/StatusUpdateNotificationRule' required: - status_update_notification_rules examples: response: summary: Response Example value: status_update_notification_rules: - id: PXPGF42 type: status_update_notification_rule summary: contact method PXPGF42 used as status_update_notification_rule self: https://api.pagerduty.com/users/PXPGF42/status_update_notification_rules/PPSCXAN contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 html_url: null created_at: '2016-02-01T16:06:27-05:00' '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' post: x-pd-requires-scope: users.write tags: - Users operationId: createUserStatusUpdateNotificationRule description: 'Create a new status update notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Create a user status update notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/early_access_status-update-notification-rules' - $ref: '#/components/parameters/id' requestBody: content: application/json: schema: properties: status_update_notification_rule: $ref: '#/components/schemas/StatusUpdateNotificationRule' required: - status_update_notification_rule examples: request: summary: Request Example value: status_update_notification_rule: contact_method: id: PXPGF42 type: email_contact_method_reference description: The status update notification rule to be created. responses: '201': description: The status update notification rule that was created. content: application/json: schema: type: object properties: status_update_notification_rule: $ref: '#/components/schemas/StatusUpdateNotificationRule' required: - status_update_notification_rule examples: response: summary: Response Example value: status_update_notification_rule: id: PXPGF42 type: status_update_notification_rule summary: contact method PXPGF42 used as status_update_notification_rule self: https://api.pagerduty.com/users/PXPGF42/status_update_notification_rules/PPSCXAN contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 html_url: null created_at: '2016-02-01T16:06:27-05:00' '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '429': $ref: '#/components/responses/TooManyRequests' /users/{id}/status_update_notification_rules/{status_update_notification_rule_id}: description: Manage a user's status update notification rule. get: x-pd-requires-scope: users.read tags: - Users operationId: getUserStatusUpdateNotificationRule description: 'Get details about a user''s status update notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.read` ' summary: PagerDuty Get a user's status update notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/early_access_status-update-notification-rules' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_status_update_notification_rule_id' - $ref: '#/components/parameters/include_notification_rules' responses: '200': description: The user's status update notification rule requested. content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/StatusUpdateNotificationRule' required: - notification_rule examples: response: summary: Response Example value: notification_rule: id: PXPGF42 type: status_update_notification_rule summary: contact method PXPGF42 used as status_update_notification_rule self: https://api.pagerduty.com/users/PXPGF42/status_update_notification_rules/PPSCXAN contact_method: id: PTDVERC type: email_contact_method_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PTDVERC html_url: null created_at: '2016-02-01T16:06:27-05:00' '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' delete: x-pd-requires-scope: users.write tags: - Users operationId: deleteUserStatusUpdateNotificationRule description: 'Remove a user''s status update notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Delete a user's status update notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/early_access_status-update-notification-rules' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_status_update_notification_rule_id' responses: '204': description: The status update notification rule was deleted successfully. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' put: x-pd-requires-scope: users.write tags: - Users operationId: updateUserStatusUpdateNotificationRule description: 'Update a user''s status update notification rule. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) Scoped OAuth requires: `users.write` ' summary: PagerDuty Update a user's status update notification rule parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/early_access_status-update-notification-rules' - $ref: '#/components/parameters/id' - $ref: '#/components/parameters/user_status_update_notification_rule_id' requestBody: content: application/json: schema: type: object properties: status_update_notification_rule: $ref: '#/components/schemas/StatusUpdateNotificationRule' required: - status_update_notification_rule examples: request: summary: Request Example value: status_update_notification_rule: contact_method: id: PXPGF42 type: email_contact_method_reference description: The user's status update notification rule to be updated. responses: '200': description: The user's status update notification rule that was updated. content: application/json: schema: type: object properties: notification_rule: $ref: '#/components/schemas/StatusUpdateNotificationRule' examples: response: summary: Response Example value: status_update_notification_rule: id: PXPGF42 type: status_update_notification_rule summary: contact method PXPGF42 used as status_update_notification_rule self: https://api.pagerduty.com/users/PXPGF42/status_update_notification_rules/PPSCXAN contact_method: id: PXPGF42 type: email_contact_method_reference summary: Work self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PXPGF42 html_url: null created_at: '2016-02-01T16:06:27-05:00' '400': $ref: '#/components/responses/ArgumentError' '401': $ref: '#/components/responses/Unauthorized' '402': $ref: '#/components/responses/PaymentRequired' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '429': $ref: '#/components/responses/TooManyRequests' /users/me: description: Get the current user. get: tags: - Users operationId: getCurrentUser description: 'Get details about the current user. This endpoint can only be used with a [user-level API key](https://support.pagerduty.com/docs/using-the-api#section-generating-a-personal-rest-api-key) or a key generated through an OAuth flow. This will not work if the request is made with an account-level access token. Users are members of a PagerDuty account that have the ability to interact with Incidents and other data on the account. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#users) ' summary: PagerDuty Get the current user parameters: - $ref: '#/components/parameters/header_Accept' - $ref: '#/components/parameters/header_Content-Type' - $ref: '#/components/parameters/include_user' responses: '200': description: The requesting user. content: application/json: schema: type: object properties: user: $ref: '#/components/schemas/User' required: - user examples: response: summary: Response Example value: user: id: PXPGF42 type: user summary: Earline Greenholt self: https://api.pagerduty.com/users/PXPGF42 html_url: https://subdomain.pagerduty.com/users/PXPGF42 name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin avatar_url: https://secure.gravatar.com/avatar/a8b714a39626f2444ee05990b078995f.png?d=mm&r=PG description: null invitation_sent: false job_title: Director of Engineering contact_methods: - id: PTDVERC type: email_contact_method_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/contact_methods/PTDVERC html_url: null notification_rules: - id: P8GRWKK type: assignment_notification_rule_reference summary: Default self: https://api.pagerduty.com/users/PXPGF42/notification_rules/PTDVERC html_url: null teams: - id: PQ9K7I8 type: team_reference summary: Engineering self: https://api.pagerduty.com/teams/PQ9K7I8 html_url: https://subdomain.pagerduty.com/teams/PQ9K7I8 '400': $ref: '#/components/responses/ArgumentError' '429': $ref: '#/components/responses/TooManyRequests' components: schemas: UserSession: type: object properties: id: type: string readOnly: true user_id: type: string readOnly: true created_at: type: string format: date-time readOnly: true description: The date/time the user session was first created. type: type: string readOnly: true description: The type of the session enum: - browser - oauth summary: type: string readOnly: true description: The summary of the session required: - id - user_id - created_at - type - summary example: id: PXPGF42 user_id: PXPGF42 created_at: '2018-10-06T21:30:42Z' summary: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36 type: browser NotificationRule: allOf: - $ref: '#/components/schemas/Tag/allOf/0' - type: object description: A rule for contacting the user. properties: type: type: string description: The type of object being created. default: assignment_notification_rule enum: - assignment_notification_rule start_delay_in_minutes: type: integer description: The delay before firing the rule, in minutes. minimum: 0 contact_method: $ref: '#/components/schemas/ContactMethodReference' urgency: type: string enum: - high - low description: Which incident urgency this rule is used for. Account must have the `urgencies` ability to have a low urgency notification rule. required: - start_delay_in_minutes - urgency - contact_method - type example: type: assignment_notification_rule start_delay_in_minutes: 0 contact_method: id: PXPGF42 type: email_contact_method_reference urgency: high LicenseWithCounts: allOf: - type: object required: - id - description - name - valid_roles properties: id: type: string description: Uniquely identifies the resource description: type: string description: 'Description of the License. May include the names of add-ons associated with the License, if there are any. ' name: type: string description: 'Name of the License. ' valid_roles: type: array description: The roles a User with this License can have items: type: string role_group: type: string enum: - FullUser - Stakeholder description: Indicates whether this License is assignable to full or stakeholder Users example: FullUser type: type: string description: Type of object self: type: string description: API URL to access the License html_url: type: string description: HTML URL to access the License summary: type: string description: Summary of the License - type: object properties: current_value: type: integer description: How many of these Licenses are currently allocated to Users allocations_available: type: integer nullable: true description: 'How many of these licenses are available to be allocated to a user. If this value is "null" then there is no limit on the number of allocations allowed. ' NotificationSubscription: title: NotificationSubscription description: An object describing the relationship of a NotificationSubscriber and a NotificationSubscribable. type: object properties: subscriber_id: type: string description: The ID of the entity being subscribed subscriber_type: type: string description: The type of the entity being subscribed enum: - user - team subscribable_id: type: string description: The ID of the entity being subscribed to subscribable_type: type: string description: The type of the entity being subscribed to enum: - incident - business_service account_id: type: string description: The ID of the account belonging to the subscriber entity x-examples: example-1: subscriber_id: string subscriber_type: user subscribable_id: string subscribable_type: incident account_id: string PhoneContactMethod: description: The Phone Contact Method of the User, used for Voice or SMS. allOf: - $ref: '#/components/schemas/ContactMethod' - type: object properties: type: type: string enum: - phone_contact_method - sms_contact_method country_code: type: integer description: The 1-to-3 digit country calling code. minimum: 1 maximum: 1999 enabled: type: boolean description: If true, this phone is capable of receiving SMS messages. readOnly: true blacklisted: type: boolean description: If true, this phone has been blacklisted by PagerDuty and no messages will be sent to it. readOnly: true required: - country_code example: type: phone_contact_method label: work country_code: 123 address: '1234567' AuditMetadata: type: object properties: messages: type: array nullable: true items: type: string example: Message about the result TeamReference: allOf: - $ref: '#/components/schemas/Reference' - type: object properties: type: type: string enum: - team_reference StatusUpdateNotificationRule: type: object description: A rule for contacting the user for Incident Status Updates. properties: contact_method: $ref: '#/components/schemas/ContactMethodReference' required: - contact_method example: contact_method: id: PXPGF42 type: email_contact_method_reference PushContactMethod: description: The Push Contact Method of the User. allOf: - $ref: '#/components/schemas/ContactMethod' - type: object properties: type: type: string enum: - push_notification_contact_method device_type: type: string description: The type of device. enum: - android - ios readOnly: true sounds: type: array items: $ref: '#/components/schemas/PushContactMethodSound' created_at: type: string format: date-time description: Time at which the contact method was created. blacklisted: type: boolean description: If true, this phone has been blacklisted by PagerDuty and no messages will be sent to it. readOnly: true required: - device_type example: type: push_notification_contact_method label: work device_type: android address: '12341234' HandoffNotificationRule: type: object description: A rule for contacting the user for Handoff Notifications. properties: id: type: string readOnly: true notify_advance_in_minutes: type: integer description: The delay before firing the rule, in minutes. minimum: 0 handoff_type: type: string description: The type of handoff being created. default: both enum: - both - oncall - offcall contact_method: $ref: '#/components/schemas/ContactMethodReference' required: - id - handoff_type - contact_method example: id: PXPGF42 notify_advance_in_minutes: 180 handoff_type: both contact_method: id: PXPGF42 type: email_contact_method_reference NotificationSubscriptionWithContext: title: NotificationSubscriptionWithContext type: object description: An object describing the relationship of a NotificationSubscriber and a NotificationSubscribable with additional context on status of subscription attempt. x-examples: example-1: subscriber_id: string subscriber_type: user subscribable_id: string subscribable_type: incident account_id: string result: success properties: subscriber_id: type: string description: The ID of the entity being subscribed subscriber_type: type: string enum: - user - team description: The type of the entity being subscribed subscribable_id: type: string description: The ID of the entity being subscribed to subscribable_type: type: string enum: - incident - business_service description: The type of the entity being subscribed to account_id: type: string description: The type of the entity being subscribed to result: type: string enum: - success - duplicate - unauthorized description: The resulting status of the subscription ContactMethod: allOf: - $ref: '#/components/schemas/Tag/allOf/0' - type: object description: The method to contact a user. properties: type: type: string description: The type of contact method being created. enum: - email_contact_method - phone_contact_method - push_notification_contact_method - sms_contact_method label: type: string description: The label (e.g., "Work", "Mobile", etc.). address: type: string description: 'The "address" to deliver to: email, phone number, etc., depending on the type.' discriminator: propertyName: type required: - type - label - address LicenseReference: allOf: - $ref: '#/components/schemas/Reference' - type: object properties: type: type: string enum: - license_reference CursorPagination: type: object properties: limit: type: integer description: The minimum of the `limit` parameter used in the request or the maximum request size of the API. readOnly: true next_cursor: type: string description: 'An opaque string than will deliver the next set of results when provided as the `cursor` parameter in a subsequent request. A `null` value for this field indicates that there are no additional results. ' example: dXNlcjaVMzc5V0ZYTlo= nullable: true readOnly: true required: - limit - next_cursor ContactMethodReference: allOf: - $ref: '#/components/schemas/Reference' - type: object properties: type: type: string enum: - email_contact_method_reference - phone_contact_method_reference - push_notification_contact_method_reference - sms_contact_method_reference NotificationRuleReference: allOf: - $ref: '#/components/schemas/Reference' - type: object properties: type: type: string enum: - assignment_notification_rule_reference User: allOf: - $ref: '#/components/schemas/Tag/allOf/0' - type: object properties: name: type: string description: The name of the user. maxLength: 100 type: type: string description: The type of object being created. default: user enum: - user email: type: string format: email description: The user's email address. minLength: 6 maxLength: 100 time_zone: type: string format: tzinfo description: The preferred time zone name. If null, the account's time zone will be used. color: type: string description: The schedule color. role: description: The user role. Account must have the `read_only_users` ability to set a user as a `read_only_user` or a `read_only_limited_user`, and must have advanced permissions abilities to set a user as `observer` or `restricted_access`. type: string enum: - admin - limited_user - observer - owner - read_only_user - restricted_access - read_only_limited_user - user avatar_url: type: string format: url description: The URL of the user's avatar. readOnly: true description: type: string description: The user's bio. nullable: true invitation_sent: type: boolean readOnly: true description: If true, the user has an outstanding invitation. job_title: type: string description: The user's title. maxLength: 100 teams: type: array readOnly: true description: The list of teams to which the user belongs. Account must have the `teams` ability to set this. items: $ref: '#/components/schemas/TeamReference' contact_methods: type: array readOnly: true description: The list of contact methods for the user. items: $ref: '#/components/schemas/ContactMethodReference' notification_rules: readOnly: true type: array description: The list of notification rules for the user. items: $ref: '#/components/schemas/NotificationRuleReference' required: - name - email - type example: type: user name: Earline Greenholt email: 125.greenholt.earline@graham.name time_zone: America/Lima color: green role: admin job_title: Director of Engineering avatar_url: https://secure.gravatar.com/avatar/1d1a39d4635208d5664082a6c654a73f.png?d=mm&r=PG description: I'm the boss AuditRecord: type: object readOnly: true description: An Audit Trail record properties: id: type: string self: type: string nullable: true description: Record URL. execution_time: type: string format: date-time description: The date/time the action executed, in ISO8601 format and millisecond precision. execution_context: type: object description: Action execution context properties: request_id: type: string nullable: true description: Request Id remote_address: type: string nullable: true description: remote address nullable: true actors: type: array nullable: true items: $ref: '#/components/schemas/Reference' method: type: object description: The method information properties: description: type: string nullable: true truncated_token: description: Truncated token containing the last 4 chars of the token's actual value. type: string nullable: true example: 3xyz type: $ref: '#/components/parameters/audit_method_type/schema' required: - type root_resource: $ref: '#/components/schemas/Reference' action: type: string example: create details: type: object nullable: true description: 'Additional details to provide further information about the action or the resource that has been audited. ' properties: resource: $ref: '#/components/schemas/Reference' fields: description: 'A set of fields that have been affected. The fields that have not been affected MAY be returned. ' type: array nullable: true items: type: object description: "Information about the affected field.\nWhen available, field's before and after values are returned:\n \n#### Resource creation\n- `value` MAY be returned\n\n#### Resource update\n- `value` MAY be returned\n- `before_value` MAY be returned\n\n#### Resource deletion\n- `before_value` MAY be returned\n" properties: name: type: string description: Name of the resource field example: name description: type: string nullable: true description: Human readable description of the resource field example: First and Last name value: type: string nullable: true description: new or updated value of the field example: Jonathan before_value: type: string nullable: true description: previous or deleted value of the field example: John required: - name references: description: A set of references that have been affected. type: array nullable: true items: type: object properties: name: type: string description: Name of the reference field example: team_members description: type: string nullable: true description: Human readable description of the references field example: First and Last name added: type: array nullable: true items: $ref: '#/components/schemas/Reference' removed: type: array nullable: true items: $ref: '#/components/schemas/Reference' required: - name required: - resource required: - id - execution_time - method - root_resource - action Reference: allOf: - $ref: '#/components/schemas/Tag/allOf/0' - type: object required: - type - id AuditRecordResponseSchema: allOf: - type: object properties: records: type: array items: $ref: '#/components/schemas/AuditRecord' response_metadata: nullable: true anyOf: - $ref: '#/components/schemas/AuditMetadata' required: - records - $ref: '#/components/schemas/CursorPagination' PushContactMethodSound: type: object properties: type: type: string description: The type of sound. enum: - alert_high_urgency - alert_low_urgency file: type: string description: The sound file name. EmailContactMethod: description: The Email Contact Method of the User. allOf: - $ref: '#/components/schemas/ContactMethod' - type: object properties: type: type: string enum: - email_contact_method send_short_email: type: boolean description: Send an abbreviated email message instead of the standard email output. Useful for email-to-SMS gateways and email based pagers. default: false example: type: email_contact_method label: work address: grady.haylie.126@hickle.net send_short_email: false NotificationSubscribable: title: NotificationSubscribable description: A reference of a subscribable entity. type: object properties: subscribable_id: type: string description: The ID of the entity to subscribe to subscribable_type: type: string description: The type of the entity being subscribed to enum: - incident - business_service example: subscribable_id: PD1234 subscribable_type: incident Pagination: type: object properties: offset: type: integer description: Echoes offset pagination property. readOnly: true limit: type: integer description: Echoes limit pagination property. readOnly: true more: type: boolean description: Indicates if there are additional records to return readOnly: true total: type: integer description: The total number of records matching the given query. nullable: true readOnly: true Tag: allOf: - type: object properties: id: type: string readOnly: true summary: type: string nullable: true readOnly: true description: A short-form, server-generated string that provides succinct, important information about an object suitable for primary labeling of an entity in a client. In many cases, this will be identical to `name`, though it is not intended to be an identifier. type: type: string readOnly: true description: A string that determines the schema of the object. This must be the standard name for the entity, suffixed by `_reference` if the object is a reference. self: type: string nullable: true readOnly: true format: url description: the API show URL at which the object is accessible html_url: type: string nullable: true readOnly: true format: url description: a URL at which the entity is uniquely displayed in the Web app - type: object properties: type: type: string description: The type of object being created. default: tag enum: - tag label: type: string description: The label of the tag. maxLength: 191 required: - label - type example: type: tag label: Batman parameters: team_ids: name: team_ids[] in: query description: An array of team IDs. Only results related to these teams will be returned. Account must have the `teams` ability to use this parameter. explode: true schema: type: array items: type: string uniqueItems: true type: name: type in: path description: The session type for the user session ID. required: true schema: type: string include_user: name: include[] in: query description: Array of additional Models to include in response. explode: true schema: type: string enum: - contact_methods - notification_rules - teams - subdomains uniqueItems: true from_header: name: From in: header description: The email address of a valid user associated with the account making the request. required: true schema: type: string format: email audit_since: name: since in: query description: The start of the date range over which you want to search. If not specified, defaults to `now() - 24 hours` (past 24 hours) schema: type: string format: date-time query: name: query in: query description: Filters the result, showing only the records whose name matches the query. required: false schema: type: string offset_offset: name: offset in: query required: false description: Offset to start pagination search results. schema: type: integer header_Accept: name: Accept description: The `Accept` header is used as a versioning header. in: header required: true schema: type: string default: application/vnd.pagerduty+json;version=2 header_Content-Type: name: Content-Type in: header required: true schema: type: string default: application/json enum: - application/json audit_until: name: until in: query description: The end of the date range over which you want to search. If not specified, defaults to `now()`. May not be more than 31 days after `since`. schema: type: string format: date-time audit_method_type: name: method_type in: query description: Method type filter. schema: type: string description: 'Describes the method used to perform the action: `browser` -- authenticated user session. Session value is not returned in the `truncated_token` field. `oauth` -- access token obtained via the OAuth flow. Truncated token value is returned in the `truncated_token` field. `api_token` -- Pagerduty API token. Truncated token value is returned in the `truncated_token` field. `identity_provider` -- action performed by an Identity provider on behalf of a user. No value is returned in the `truncated_token` field. `other` -- Method that does not fall in the predefined categories. Truncated token value MAY be returned in the `truncated_token` field. ' enum: - browser - oauth - api_token - identity_provider - other user_contact_method_id: name: contact_method_id in: path description: The contact method ID on the user. required: true schema: type: string early_access_status-update-notification-rules: name: X-EARLY-ACCESS in: header description: 'This header indicates that this API endpoint is __UNDER CONSTRUCTION__ and may change at any time. You __MUST__ pass in this header and the above value. Do not use this endpoint in production, as it may change! ' required: true schema: type: string default: status-update-notification-rules enum: - status-update-notification-rules user_notification_rule_id: name: notification_rule_id in: path description: The notification rule ID on the user. required: true schema: type: string user_status_update_notification_rule_id: name: status_update_notification_rule_id in: path description: The status update notification rule ID on the user. required: true schema: type: string id: name: id description: The ID of the resource. in: path required: true schema: type: string include_notification_rules: name: include[] in: query description: Array of additional details to include. explode: true schema: type: string enum: - contact_methods uniqueItems: true offset_total: name: total in: query required: false description: 'By default the `total` field in pagination responses is set to `null` to provide the fastest possible response times. Set `total` to `true` for this field to be populated. See our [Pagination Docs](https://developer.pagerduty.com/docs/rest-api-v2/pagination/) for more information. ' schema: default: false type: boolean urgency: name: urgency in: query description: The incident urgency for which the notification rules are applied. If not specified, defaults to `high`. explode: true schema: type: string enum: - high - low - all uniqueItems: true cursor_cursor: name: cursor in: query required: false description: 'Optional parameter used to request the "next" set of results from an API. The value provided here is most commonly obtained from the `next_cursor` field of the previous request. When no value is provided, the request starts at the beginning of the result set. ' schema: type: string session_id: name: session_id in: path description: The session ID for the user. required: true schema: type: string oncall_handoff_notification_rule_id: name: oncall_handoff_notification_rule_id in: path description: The oncall handoff notification rule ID on the user. required: true schema: type: string offset_limit: name: limit in: query required: false description: The number of results per page. schema: type: integer cursor_limit: name: limit in: query required: false description: The minimum of the `limit` parameter used in the request or the maximum request size of the API. schema: type: integer responses: NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' PaymentRequired: description: 'Account does not have the abilities to perform the action. Please review the response for the required abilities. You can also use the [Abilities API](#resource_Abilities) to determine what features are available to your account. ' content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' Unauthorized: description: 'Caller did not supply credentials or did not provide the correct credentials. If you are using an API key, it may be invalid or your Authorization header may be malformed. ' content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' ArgumentError: description: Caller provided invalid arguments. Please review the response for error details. Retrying with the same arguments will *not* work. content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' Conflict: description: The request conflicts with the current state of the server. content: application/json: schema: type: object properties: error: type: object properties: code: type: integer readOnly: true message: type: string readOnly: true description: Error message string errors: type: array readOnly: true items: type: string readOnly: true description: Human-readable error details example: message: Not Found code: 2100 TooManyRequests: description: Too many requests have been made, the rate limit has been reached. content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' Forbidden: description: 'Caller is not authorized to view the requested resource. While your authentication is valid, the authenticated user or token does not have permission to perform this action. ' content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' UnprocessableEntity: description: Unprocessable Entity. Some arguments failed validation checks. content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' InternalServerError: description: Internal Server Error the PagerDuty server experienced an error. content: application/json: schema: $ref: '#/components/responses/Conflict/content/application~1json/schema' examples: AuditRecordUserResponse: summary: Response Example value: records: - id: PD_ADD_HIGH_URGENCY_NOTIFICATION action: update actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: references: - added: - id: PD_NOTIFICATION_RULE_HIGH summary: 'High Urgency (Email: Default)' type: assignment_notification_rule_reference name: notification_rules resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:32.343Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 - id: PD_ADD_HIGH_URGENCY_EMAIL_CONTACT action: update actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: fields: - name: start_delay_in_minutes value: '0' - name: urgency value: high references: - added: - id: PD_CONTACT_METHOD summary: Default type: email_contact_method_reference name: contact_method resource: id: PD_NOTIFICATION_RULE_HIGH summary: 'High Urgency (Email: Default)' type: assignment_notification_rule_reference execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:32.343Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 - id: PD_ADD_LOW_URGENCY_EMAIL_RULE action: update actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: fields: - name: start_delay_in_minutes value: '0' - name: urgency value: low references: - added: - id: PD_CONTACT_METHOD summary: Default type: email_contact_method_reference name: contact_method resource: id: PD_NOTIFICATION_RULE_LOW summary: 'Low Urgency (Email: Default)' type: assignment_notification_rule_reference execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:32.335Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 - id: PD_ADD_LOW_URGENCY_EMAIL_CONTACT action: update actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: references: - added: - id: PD_NOTIFICATION_RULE_LOW summary: 'Low Urgency (Email: Default)' type: assignment_notification_rule_reference name: notification_rules resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:32.335Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 - id: PD_EMAIL_CONTACT_FOR_USER action: update actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: fields: - name: label value: Default - name: type value: email_contact_method - name: address value: testuser@testabc123.com resource: id: PD_CONTACT_METHOD summary: Default type: email_contact_method_reference execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:32.327Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 - id: PD_ADD_EMAIL_CONTACT_TO_USER action: update actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: references: - added: - id: PD_CONTACT_METHOD summary: Default type: email_contact_method_reference name: contact_methods resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:32.327Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 - id: PD_CREATE_USER action: create actors: - id: PDUSER summary: John Snow type: user_reference self: https://api.pagerduty.com/users/PD_USER123 html_url: https://mydomain.pagerduty.com/users/PD_USER123 details: fields: - name: name value: Test User - name: role value: user - name: email value: testuser@testabc123.com - name: time_zone value: America/New_York - name: description value: null - name: job_title value: null - name: color value: brown resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 execution_context: request_id: a68929b2-d0f4-4def-b1d2-6bb744c44e3d execution_time: '2021-01-05T15:17:31.708Z' method: type: browser root_resource: id: PD_USER_999 summary: Test User type: user_reference self: https://api.pagerduty.com/users/PD_USER_999 html_url: https://mydomain.pagerduty.com/users/PD_USER_999 limit: 10 next_cursor: null securitySchemes: api_key: type: apiKey name: Authorization in: header description: The API Key with format `Token token=`