openapi: 3.2.0 info: title: Avaya User API version: '1.0' description: 'Operations tagged User across 2 of this provider''s published API definitions: avaya-axp-admin-user-openapi-original.json, avaya-infinity-user-management-openapi-original.json. Each path carries the servers of the definition it was published in.' servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 - url: https://core.{customerId}.ec.avayacloud.com/api/config/v1 description: Production variables: customerId: description: Your organization identifier default: your-org-id tags: - name: User description: Represents a user in the system. A user can be an Agent, Supervisor or an Administrator. paths: /accounts/{accountId}/users: get: tags: - User summary: List Users description: '**This API requires the Account Administrator role.** Lists all of the users for an account.' operationId: listUsers parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/pageNumber' - name: pageSize in: query description: 'The max number of records to retrieve per page. Default value is 10. ' required: false schema: type: integer format: int32 example: 5 default: 10 minimum: 5 maximum: 50 - name: filter in: query required: false description: "Specifies details of a row filter.\n\n The possible fields that can be filtered on are:\n * loginId\n * lastName\n * firstName\n * emailId\n * organizationNodeId\n * profileId\n\nThe allowed format:\n - Begins with the column name to be filtered, followed by a colon, then:\n - Either an exact string to match, or\n - A string expression including the * wildcard character\n - :{PREFIX}* will be used to find out word start with.\n - :*{POSTFIX} will be used to find out word end with\n - : will be used to match exact word\n - Begin with column name to be filtered, followed by a = operator. (this will be used to match exact string)\n" schema: type: string maxLength: 255 examples: exact: description: Example of filtering based on an exact string. value: lastName=Stevens prefix: description: Example of filtering based on a prefix string. value: lastName:Stevens* postfix: description: Example of filtering based on a postfix string. value: lastName:*Stevens - name: orderBy in: query required: false description: 'Field name on which ordering needs to be performed. The default order is ascending. The possible fields that can be ordered on are: * loginId * lastName * firstName * emailId * organizationNodeId Field Names are case-sensitive (should be written as it is in description). To specify descending order, a suffix " desc" should be added. For example, "firstName" for ascending or "firstName desc" for descending". ' schema: type: string maxLength: 255 examples: ascending: value: firstName descending: value: fistName desc responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UserPage' examples: User-Page: $ref: '#/components/examples/UserPage' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] post: tags: - User summary: Create User description: '**This API requires the Account Administrator role.** Creates a user. The following fields must be unique otherwise a `HTTP 409 Conflcit` will be returned: * `loginId` * `emailId` When creating a user with a `profileId`, the field values in the user request will override any that are also defined in the profile. For example, if the profile contains configuration for `features` and the user request also contains `features`, the `features` defined in the user request will override those from the profile. Changes to the fields: * `roles` * `features` Will trigger asynchronous updates, the status of which should be monitored via `/users:listStatuses`.' operationId: createUser parameters: - $ref: '#/components/parameters/accountId' requestBody: description: Create user with provided details including profileId and features required: true content: application/json: schema: $ref: '#/components/schemas/User' examples: Basic-User: $ref: '#/components/examples/BasicUserInput' Basic-User-with-roles-and-groups: $ref: '#/components/examples/BasicUserWithRolesAndGroupsInput' User-with-profile-features: $ref: '#/components/examples/UserWithFeaturesfromProfile' User-with-profile-and-features: $ref: '#/components/examples/UserWithProfileFeatures' User-with-all-fields: $ref: '#/components/examples/UserWithAllFields' User-with-profile-and-features-without-provider: $ref: '#/components/examples/UserWithProfileFeatureswithoutchannelProvider' responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/User' examples: User: $ref: '#/components/examples/UserResponse' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/UserConflict' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users/{userId}: put: tags: - User summary: Update User description: '**This API requires the Account Administrator role.** Updates a user. The following fields must be unique otherwise a `HTTP 409 Conflcit` will be returned: * `userId` * `emailId` This operation will clear the value stored for any fields not present in the request. For example, to remove a feature such as `voice` from a user you should omit the `voice` field in the request. The same behavior applies to every field in the request. When updating a user with a `profileId`, the field values in the user request will override any that are also defined in the profile. For example, if the profile contains configuration for `features` and the user request also contains `features`, the `features` defined in the user request will override those from the profile. Changes to the fields: * `roles` * `features` Will trigger asynchronous updates, the status of which should be monitored via `/users:listStatuses`.' operationId: updateUser parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' requestBody: description: User required: true content: application/json: schema: $ref: '#/components/schemas/User' examples: User-with-all-fields: $ref: '#/components/examples/UserUpdateWithAllFields' User-update-address-and-add-new-address: $ref: '#/components/examples/UserUpdateNewAddress' responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/User' examples: User: $ref: '#/components/examples/UserResponse' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/UserConflict' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] get: tags: - User summary: Get User description: '**This API requires the Account Administrator role.** Gets a user.' operationId: getUser parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/User' examples: User: $ref: '#/components/examples/UserResponse' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] delete: tags: - User summary: Delete User description: '**This API requires the Account Administrator role.** Deletes a user.' operationId: deleteUser parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' responses: '204': description: No Content '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users:search: post: tags: - User summary: Search Users description: '**This API requires the Account Administrator role.** Searches the user list based on criteria provided. This data includes basic details of each user and available features including current status for features operation progress.' operationId: searchUsers parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/pageNumber' - name: pageSize in: query description: 'The max number of records to retrieve per page. Default value is 10. ' required: false schema: type: integer format: int32 example: 5 default: 10 minimum: 5 maximum: 500 requestBody: description: The possible fields you can filter and order are userId,loginId,lastName,firstName,emailId,organizationNodeId,profileId content: application/json: schema: $ref: '#/components/schemas/SearchFilterCriteria' examples: FirstName-start-with-search: $ref: '#/components/examples/FirstNameStartWithInput' FirstName-start-with-AND-lastName-ends-with-search: $ref: '#/components/examples/FirstNameStartWithANDLastNameEndsWithInput' FirstName-contains-search: $ref: '#/components/examples/FirstNameContainsInput' EmailId-equals-search: $ref: '#/components/examples/EmailIdEqualsInput' LastName-not-equal-search: $ref: '#/components/examples/LastNameNotEqualsInput' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UserPage' examples: User-Page: $ref: '#/components/examples/UserSearchPage' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users:listStatuses: post: tags: - User summary: List User Statuses description: '**This API requires the Account Administrator role.** Lists the current statuses for the given users.' operationId: listUserStatuses parameters: - $ref: '#/components/parameters/accountId' requestBody: content: application/json: schema: $ref: '#/components/schemas/UserIdList' examples: Request-User-Statuses: $ref: '#/components/examples/UserStatusesRequest' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/UserStatusResponse' examples: User-Statuses: $ref: '#/components/examples/UserStatuses' Failed-User-Statuses: $ref: '#/components/examples/FailedUserStatuses' InProgress-User-Statuses: $ref: '#/components/examples/InProgressUserStatuses' PendingUpdate-User-Statuses: $ref: '#/components/examples/PendingUpdateUserStatuses' PendingDelete-User-Statuses: $ref: '#/components/examples/PendingDeleteUserStatuses' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users/{userId}/resource-partitions: get: tags: - User summary: List Resource Partitions description: '**This API requires the Account Administrator role.** Lists all of the resource partitions for a user.' operationId: listResourcePartitionsByUserId parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' - $ref: '#/components/parameters/pageNumber' - name: pageSize in: query description: 'The max number of records to retrieve per page. Default value is 10. Any value like 10, 20, 30 .. is allowed. Values that exceed the maximum will result in a 400 Bad Request being returned. ' required: false schema: type: integer format: int32 example: 10 default: 10 minimum: 5 maximum: 50 - name: filter in: query required: false description: "Specifies details of a row filter.\n\nThe possible fields that can be filtered on are:\n * name\n\nThe allowed format:\n - Begins with the column name to be filtered, followed by a colon, (This will be used as a Contains operator.) then:\n - Either an exact string to match, or\n - A string expression including the * wildcard character.\n - :{PREFIX}* will be used to find out word start with.\n - :*{POSTFIX} will be used to find out word end with\n - : will be used to match exact word\n - Begin with column name to be filtered, followed by a = operator. (this will be used to match exact string)\n" schema: type: string maxLength: 255 examples: exact: description: Example of filtering based on an exact string. value: name=Sales Resource Partition prefix: description: Example of filtering based on a prefix string. value: name:Sales* postfix: description: Example of filtering based on a postfix string. value: name:*Sales - name: orderBy in: query required: false description: "Field name on which ordering needs to be performed. The default order is ascending.\n\nThe possible fields that can be ordered on are:\n * name\n\nField Names are case-sensitive (should be written as it is in description).\n\nTo specify descending order, a suffix \" desc\" should be added. For example, \"name\" for ascending or \"name desc\" for descending\".\n" schema: type: string maxLength: 255 examples: ascending: value: name descending: value: name desc responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UserResourcePartitionsPage' examples: ResourcePartitionsPage: $ref: '#/components/examples/UserResourcePartitionsPage' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users/{userId}/resource-partitions/updateDefaultResource: post: tags: - User summary: Set Default Resource of Resource Partition for User description: '**This API requires the Account Administrator role.** Sets the default resource Id of resource partition for a user. Specify resourcePartitionId and defaultResoureId in the request body.' operationId: setDefaultResourceForUser parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourcePartitionDefaultResource' examples: User-Resource-Partition-Default-Resource: $ref: '#/components/examples/ResourcePartitionDefaultResource' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourcePartitionDefaultResource' examples: User-Resource-Partition-Default-Resource: $ref: '#/components/examples/ResourcePartitionDefaultResource' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users/{userId}/addresses: post: tags: - User summary: Create Address description: '**This API requires the Account Administrator role.** Creates an address for a user.' operationId: createUserAddress parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' requestBody: description: User address payload content: application/json: schema: $ref: '#/components/schemas/Address' examples: Address: $ref: '#/components/examples/AddressWrite' responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/Address' examples: Address: $ref: '#/components/examples/AddressRead' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users/{userId}/addresses/{addressId}: put: tags: - User summary: Update Address description: '**This API requires the Account Administrator role.** Updates an address of a user. This operation will clear the value stored for any fields not present in the request.' operationId: updateUserAddress parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' - $ref: '#/components/parameters/addressId' requestBody: description: User address payload content: application/json: schema: $ref: '#/components/schemas/Address' examples: Address: $ref: '#/components/examples/AddressWrite' responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/Address' examples: Address: $ref: '#/components/examples/AddressRead' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /accounts/{accountId}/users/{userId}/addresses/{addressId}:updateDefault: post: tags: - User summary: Update Default Address description: '**This API requires the Account Administrator role.** Updates a user''s default address to the address ID provided. Address IDs for both `addresses` and `accountAddresses` are accepted. Note, only 1 type of address can be the default at any one time.' operationId: updateUserDefaultAddress parameters: - $ref: '#/components/parameters/accountId' - $ref: '#/components/parameters/userId' - $ref: '#/components/parameters/addressId' responses: '202': description: Accepted content: application/json: schema: $ref: '#/components/schemas/Address' examples: Address: $ref: '#/components/examples/AddressDefault' '400': $ref: '#/components/responses/ErrorConstraintViolation' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/InternalServer' security: - {} - BearerAuth: [] AppKey: [] servers: - url: '{protocol}://{server}:{port}{basePath}' description: Open API variables: protocol: enum: - https default: https server: default: HOST-REGION.api.avayacloud.com port: enum: - '443' default: '443' basePath: default: /api/admin/user/v1 /users: get: tags: - User summary: Get List of Users description: '**Required Role:** Admin Portal or Admin API Consumer Retrieves a list of users with optional filtering and related data. Query parameters control which related data is included in the response (groups, location, CRM config) and whether folder information should be returned. **Status Filtering:** - Use the `status` query parameter to filter by user status: `ENABLED` (default), `DISABLED`, or `ALL` **Deleted Users:** - Use the `deleted` query parameter to control visibility of soft-deleted users: `EXCLUDE` (default), `INCLUDE`, or `ONLY` - When `deleted=ONLY`, the `status` filter is ignored because deleted users are always disabled' operationId: getUsers parameters: - name: status in: query description: 'Filter users by status. - `ENABLED` (default): Only enabled users - `DISABLED`: Only disabled users - `ALL`: All users regardless of status ' required: false schema: type: string enum: - ENABLED - DISABLED - ALL default: ENABLED - name: deleted in: query description: "Control visibility of soft-deleted users.\n- `EXCLUDE` (default): Hide deleted users\n- `INCLUDE`: Include deleted users alongside non-deleted users\n- `ONLY`: Return only deleted users (the `status` filter is ignored because\n deleted users are always disabled)\n" required: false schema: type: string enum: - EXCLUDE - INCLUDE - ONLY default: EXCLUDE - name: folders in: query description: Include folder hierarchy and breadcrumbs in the response required: false schema: type: boolean default: false - name: folderId in: query description: 'Filter users by folderId (includes subfolders recursively). - Omit parameter: Returns users from all folders - Empty string (""): Returns users in root folder only (not in any subfolder) - 26-character folder ID: Returns users in the specified folder AND all subfolders ' required: false schema: oneOf: - $ref: '#/components/schemas/FolderId' - type: string enum: - '' description: Empty string for root folder - name: inFolder in: query description: Filter users that are in or not in a folder. required: false schema: type: boolean - $ref: '#/components/parameters/sort' - $ref: '#/components/parameters/sortBy' - name: profileId in: query description: Filter by profile ID required: false schema: $ref: '#/components/schemas/ProfileId' - name: hasProfile in: query description: Filter users that have or do not have a profile. required: false schema: type: boolean - name: licType in: query description: Filter by license type required: false schema: $ref: '#/components/schemas/LicenseType' - name: locationId in: query description: Filter by location ID required: false schema: $ref: '#/components/schemas/LocationId' - name: hasLocation in: query description: Filter users that have or do not have a location. required: false schema: type: boolean - name: groups in: query description: Include group memberships with full group details (groupId, name, type) required: false schema: type: boolean default: true - name: location in: query description: Include E911 location details for each user required: false schema: type: boolean default: true - name: crmConfigId in: query description: Include CRM configuration details for each user required: false schema: type: boolean default: true - name: updatedSince in: query description: 'Filter users updated on or after this UTC timestamp. Must be in ISO 8601 format (e.g., 2026-01-22T00:00:00Z). When used with updatedUntil, updatedUntil must be greater than updatedSince. Note: newly created users have lastUpdated set to their creation time. ' required: false schema: type: string format: date-time - name: updatedUntil in: query description: 'Filter users updated on or before this UTC timestamp. Must be in ISO 8601 format (e.g., 2026-01-22T23:59:59Z). When used with updatedSince, must be greater than updatedSince. ' required: false schema: type: string format: date-time - $ref: '#/components/parameters/pageSize' - $ref: '#/components/parameters/pageNumber_2' responses: '200': $ref: '#/components/responses/GetUsersResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized_2' '403': $ref: '#/components/responses/Forbidden_2' '500': $ref: '#/components/responses/InternalServerError' default: $ref: '#/components/responses/InternalServerError' security: - BearerAuth: [] post: tags: - User summary: Create a user description: '**Required Role:** Admin Portal or Admin API Consumer Creates a user. The type of user is controlled by the license type, which is typically an agent of some kind, but other types can be supported via the ''nonAgent'' type. At a minimum, creating a user requires: - the user''s email address - the user''s first and last names - the user''s license type or a profile to apply to the user (the license type will be taken from the profile if specified) **License Types and Their Defaults:** - `nonAgent`: Limited permissions, minimal spaces (1 task, 1 email, 1 messaging) - `voiceOnlyAgent`: Voice-focused permissions, phone space (2 task, 1 phone) - `digitalOnlyAgent`: Digital channels, no phone (3 task, 2 email, 2 messaging) - `omniChannelAgent`: All channels except video (3 task, 2 email, 1 phone, 2 messaging) - `omniChannelAgentEnhanced`: All channels with enhanced features and session statistics - `hybridVoiceAgent`: Balanced voice and digital capabilities **Validation Rules:** - User''s email address must be unique within the account - License type must be valid for the account - Profile must exist (if profile ID is provided) - Folder must exist (if folder ID is provided) - Location must exist (if location ID is provided) - location IDs are system-generated' operationId: postUsers requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateUserRequest' responses: '201': $ref: '#/components/responses/CreateUserResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized_2' '403': $ref: '#/components/responses/Forbidden_2' '409': $ref: '#/components/responses/UserConflict_2' '422': $ref: '#/components/responses/UnprocessableEntity' '500': $ref: '#/components/responses/InternalServerError' default: $ref: '#/components/responses/InternalServerError' security: - BearerAuth: [] x-operation-id-source: normalized x-operation-id-original: createUser servers: - url: https://core.{customerId}.ec.avayacloud.com/api/config/v1 description: Production variables: customerId: description: Your organization identifier default: your-org-id /users/{userIdOrEmail}: get: tags: - User summary: Get Single User Details description: '**Required Role:** Admin Portal or Admin API Consumer Retrieves detailed information about a specific user including their configuration, permissions, queue assignments, and related data. The path parameter can be either a userId (26-character internal ID starting with ''002'') or an email address. Query parameters control which related data is included in the response.' operationId: getUsersByUserIdOrEmail parameters: - $ref: '#/components/parameters/userIdOrEmail' - name: queues in: query description: Include queue assignments with names required: false schema: type: boolean default: false - name: queueLogins in: query description: Include current queue login sessions required: false schema: type: boolean default: false - name: groups in: query description: Include group memberships required: false schema: type: boolean default: false - name: location in: query description: Include E911 location details required: false schema: type: boolean default: false - name: crmConfigId in: query description: Include CRM configuration required: false schema: type: boolean default: false - name: reportsTo in: query description: Include reports-to user details (supervisor/manager relationship) required: false schema: type: boolean default: false - name: externalUCProviderConnections in: query description: Include external UC provider connection details required: false schema: type: boolean default: false responses: '200': description: User details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/UserDetail' examples: success: $ref: '#/components/examples/GetUserDetailSuccess' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized_2' '403': $ref: '#/components/responses/Forbidden_2' '404': $ref: '#/components/responses/NotFound_2' '500': $ref: '#/components/responses/InternalServerError' default: $ref: '#/components/responses/InternalServerError' security: - BearerAuth: [] x-operation-id-source: normalized x-operation-id-original: getUser patch: tags: - User summary: Update a user description: '**Required Role:** Admin Portal or Admin API Consumer Update one or more properties of a user. The user can be identified by their user ID or email address. **Agent Self-Edit Restrictions** When an agent edits their own profile (self-edit), the server enforces the following: *Read-only identity fields:* The following fields are always read-only for agents and cannot be modified via self-edit. Any attempt returns **403 Forbidden**: `firstName`, `lastName`, `namePrefix`, `nameSuffix`, `title`, `email`, `mobile`. These fields can only be changed by an administrator. *Auto Answer / WebHID Edit Restrictions:* * If `allowAgentEditAutoAnswer` is `false` on the user record and the request includes a change to `attributes.webRTC.autoAnswer.interaction`, the server returns **403 Forbidden**. * If `allowAgentEditWebHIDHeadsetControl` is `false` on the user record and the request includes a change to `attributes.webHID.status`, the server returns **403 Forbidden**. * Administrators editing other users are never restricted by these flags. * Agents can still modify unrestricted fields (language, timezone, app theme, queues, etc.) even when identity and Auto Answer / WebHID edits are restricted. **Agent Self-Edit Restrictions** When an agent edits their own profile (self-edit), the server enforces the following: *Read-only identity fields:* The following fields are always read-only for agents and cannot be modified via self-edit. Any attempt returns **403 Forbidden**: `firstName`, `lastName`, `namePrefix`, `nameSuffix`, `title`, `email`, `mobile`. These fields can only be changed by an administrator. *Auto Answer / WebHID Edit Restrictions:* * If `allowAgentEditAutoAnswer` is `false` on the user record and the request includes a change to `attributes.webRTC.autoAnswer.interaction`, the server returns **403 Forbidden**. * If `allowAgentEditWebHIDHeadsetControl` is `false` on the user record and the request includes a change to `attributes.webHID.status`, the server returns **403 Forbidden**. * Administrators editing other users are never restricted by these flags. * Agents can still modify unrestricted fields (language, timezone, app theme, queues, etc.) even when identity and Auto Answer / WebHID edits are restricted. ** Disabling a User ** A user can be disabled by performing an update to set the `status` property to `disabled`. This can normally only be done if: * the user is not logged in * the user has no active interactions * the user has no pending interactions in their personal queue and a request to do so in any of those conditions will fail with a 422 error. This can be overridden by setting the `forceDisable` query parameter.' operationId: patchUsersByUserIdOrEmail parameters: - $ref: '#/components/parameters/userIdOrEmail' - $ref: '#/components/parameters/forceDisable' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateUserRequest' responses: '200': description: The updated user. content: application/json: schema: $ref: '#/components/schemas/UserDetail' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized_2' '403': $ref: '#/components/responses/Forbidden_2' '404': $ref: '#/components/responses/NotFound_2' '422': $ref: '#/components/responses/UserCanNotBeDisabled' '500': $ref: '#/components/responses/InternalServerError' default: $ref: '#/components/responses/InternalServerError' security: - BearerAuth: [] x-operation-id-source: normalized x-operation-id-original: updateUser servers: - url: https://core.{customerId}.ec.avayacloud.com/api/config/v1 description: Production variables: customerId: description: Your organization identifier default: your-org-id /users/{userId}: delete: tags: - User summary: Delete a user description: '**Required Role:** Admin Portal or Admin API Consumer Delete a user. Only users in the `disabled` state can be deleted. Attempting to delete an `enabled` user will fail with a 422 response.' operationId: deleteUsersByUserId parameters: - $ref: '#/components/parameters/userId_2' responses: '204': description: Result for successfully having deleted the user. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized_2' '403': $ref: '#/components/responses/Forbidden_2' '404': $ref: '#/components/responses/NotFound_2' '422': $ref: '#/components/responses/UserCanNotBeDeleted' '500': $ref: '#/components/responses/InternalServerError' default: $ref: '#/components/responses/InternalServerError' security: - BearerAuth: [] x-operation-id-source: normalized x-operation-id-original: deleteUser servers: - url: https://core.{customerId}.ec.avayacloud.com/api/config/v1 description: Production variables: customerId: description: Your organization identifier default: your-org-id components: examples: UserWithProfileFeatures: description: User with features value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex roles: - Agent - Administrator memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 03673a3a-3dfb-4606-ae79-fd0fe0cf2d53 resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d5 profileId: ASDFGH features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false messaging: autoAnswer: false multiplicity: 2 afterContactWork: false email: autoAnswer: false multiplicity: 2 afterContactWork: false voice: voicePriority: true autoAnswer: false afterContactWork: false cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} recorder: {} outbound: {} advancedcmvoice: {} PendingUpdateUserStatuses: description: List of User statuses value: - action: UPDATE status: PENDING message: Operation is in pending update userId: c8c2909d-75e9-484a-94c0-b7e8d30771fe role: action: UPDATE status: PENDING message: Operation is in pending update features: matching: action: UPDATE status: COMPLETED message: Feature updated successfully chat: action: UPDATE status: PENDING message: Feature is in pending update messaging: action: UPDATE status: PENDING message: Feature is in pending update email: action: UPDATE status: PENDING message: Feature is in pending update voice: action: UPDATE status: PENDING message: Feature is in pending update cmvoice: action: ADD status: COMPLETED message: Feature added successfully aci: action: UPDATE status: PENDING message: Feature is in pending update recorder: action: UPDATE status: PENDING message: Feature is in pending update outbound: action: UPDATE status: PENDING message: Feature is in pending update advancedcmvoice: action: ADD status: COMPLETED message: Feature added successfully FailedUserStatuses: description: List of User statuses value: - action: ADD status: FAILED message: Operation failed userId: c8c2909d-75e9-484a-94c0-b7e8d30771fe role: action: ADD status: FAILED message: The password does not meet the password policy requirements. features: matching: action: ADD status: COMPLETED message: Feature added successfully chat: action: ADD status: COMPLETED message: Feature added successfully messaging: action: ADD status: COMPLETED message: Feature added successfully email: action: ADD status: COMPLETED message: Feature added successfully voice: action: ADD status: COMPLETED message: Feature added successfully cmvoice: action: ADD status: COMPLETED message: Feature added successfully aci: action: ADD status: COMPLETED message: Feature added successfully outbound: action: ADD status: COMPLETED message: Feature added successfully recorder: action: ADD status: COMPLETED message: Feature added successfully advancedcmvoice: action: ADD status: COMPLETED message: Feature added successfully ErrorUserEmailIdExists: description: Constraint Violation value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#conflict title: Conflict status: 409 detail: A resource with the same unique constraint values already exists. violations: - field: emailId message: A user with this emailId already exists UserWithAllFields: description: user with all fields value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex displayName: Stevens, Alex emailId: stevens@avaya.com profileId: FSADSJ memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 05603a3a-3dfb-4606-ae79-fd0fe0be2e52 roles: - Agent resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d5 addresses: - addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: false accountAddresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe isDefault: true features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false messaging: autoAnswer: false multiplicity: 2 afterContactWork: false email: autoAnswer: false multiplicity: 2 afterContactWork: false voice: voicePriority: true autoAnswer: false afterContactWork: false cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} recorder: {} outbound: {} advancedcmvoice: {} UserStatuses: description: List of User statuses value: - action: ADD status: COMPLETED message: Completed successfully userId: c8c2909d-75e9-484a-94c0-b7e8d30771fe role: action: ADD status: COMPLETED message: Added successfully features: matching: action: ADD status: COMPLETED message: Feature added successfully chat: action: ADD status: COMPLETED message: Feature added successfully messaging: action: ADD status: COMPLETED message: Feature added successfully email: action: ADD status: COMPLETED message: Feature added successfully voice: action: ADD status: COMPLETED message: Feature added successfully cmvoice: action: ADD status: COMPLETED message: Feature added successfully aci: action: ADD status: COMPLETED message: Feature added successfully recorder: action: ADD status: COMPLETED message: Feature added successfully outbound: action: ADD status: COMPLETED message: Feature added successfully advancedcmvoice: action: ADD status: COMPLETED message: Feature added successfully AddressRead: description: An Address with readonly properties value: addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: false UserPage: description: Paginated User Data value: pagination: pageNumber: 2 pageSize: 10 total: 45 users: - organizationNodeId: EXMPLE userId: c8c2909d-75e9-484a-94c0-b7e8d29771fe loginId: stevens@avaya.com lastName: Stevens firstName: Alex displayName: Stevens, Alex emailId: stevens@avaya.com profileId: FSADSJ memberOfGroups: - c8c2909d-75e9-484a-94c0-b7e8d29771fe ownedGroups: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 roles: - Agent resourcePartitions: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 - opl6d39c-78ui-4d94-qqqq-c28bee987ed7 addresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: false accountAddresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe isDefault: false features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd messaging: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd email: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd voice: voicePriority: true autoAnswer: false afterContactWork: false userExtension: '10021' emergencyLocationIdentificationNumber: '7798098090' providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} recorder: {} outbound: {} advancedcmvoice: {} links: prev: /api/admin/user/v1/accounts/ASDJGE/users?pageNumber=1&pageSize=10 next: /api/admin/user/v1/accounts/ASDJGE/users?pageNumber=3&pageSize=10 PendingDeleteUserStatuses: description: List of User statuses value: - action: DELETE status: PENDING message: Operation is in pending delete userId: c8c2909d-75e9-484a-94c0-b7e8d30771fe role: action: DELETE status: PENDING message: Operation is in pending delete features: matching: action: DELETE status: COMPLETED message: Feature deleted successfully chat: action: DELETE status: PENDING message: Feature is in pending delete messaging: action: DELETE status: PENDING message: Feature is in pending delete email: action: DELETE status: PENDING message: Feature is in pending delete voice: action: DELETE status: PENDING message: Feature is in pending delete cmvoice: action: ADD status: COMPLETED message: Feature added successfully aci: action: DELETE status: PENDING message: Feature is in pending delete recorder: action: DELETE status: PENDING message: Feature is in pending delete outbound: action: DELETE status: PENDING message: Feature is in pending delete advancedcmvoice: action: ADD status: COMPLETED message: Feature added successfully AddressWrite: description: An Address value: addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW name: Zimbabwe code: ZW zip: L3R9T8 isDefault: false FirstNameStartWithANDLastNameEndsWithInput: value: filter: - discriminator: OR key: firstName operator: STARTS_WITH value: Steven - discriminator: AND key: lastName operator: ENDS_WITH value: Smith orderBy: firstName desc LastNameNotEqualsInput: value: filter: - discriminator: OR key: lastName operator: NOT_EQUALS value: Steff orderBy: firstName desc ErrorForbidden: description: Forbidden value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#forbidden title: Forbidden status: 403 detail: According to the access control policy the current user and/or accountId does not have permission to access this resource. UserUpdateNewAddress: description: User update existing address and add new address value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex displayName: Stevens, Alex emailId: stevens@avaya.com profileId: FSADSJ memberOfGroups: - 9508183b-7b90-471c-97ca-dfd08bd73842 ownedGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 roles: - Administrator addresses: - addressId: c80e94b6-75e9-484a-94c0-b4bdfcd6b3ca addressName: Home Address addressType: APARTMENT addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: true - addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: false accountAddresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe isDefault: true InProgressUserStatuses: description: List of User statuses value: - action: ADD status: IN_PROGRESS message: Operation is in progress userId: c8c2909d-75e9-484a-94c0-b7e8d30771fe role: action: ADD status: IN_PROGRESS message: Operation is in progress features: matching: action: ADD status: COMPLETED message: Feature added successfully chat: action: ADD status: COMPLETED message: Feature added successfully messaging: action: ADD status: COMPLETED message: Feature added successfully email: action: ADD status: COMPLETED message: Feature added successfully voice: action: ADD status: IN_PROGRESS message: Operation is in progress cmvoice: action: ADD status: COMPLETED message: Feature added successfully aci: action: ADD status: COMPLETED message: Feature added successfully recorder: action: ADD status: COMPLETED message: Feature added successfully outbound: action: ADD status: COMPLETED message: Feature added successfully advancedcmvoice: action: ADD status: COMPLETED message: Feature added successfully ErrorNotFound: description: Not Found value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#resource-not-found title: Resource Not Found status: 404 detail: Either there is no API method associated with the URL path of the request, or the request refers to one or more resources that were not found. ErrorConstraintViolation: description: Constraint Violation value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#constraint-violation title: Constraint Violation status: 400 detail: A problem that indicates a syntactically correct, yet semantically illegal request. The Server can not process this request until the client resolves the semantic errors described in the violations section. violations: - field: accountId message: must match "^[a-zA-Z]{6}$" code: 20006 ErrorUserLoginIdExists: description: Constraint Violation value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#conflict title: Conflict status: 409 detail: A resource with the same unique constraint values already exists. violations: - field: loginId message: A user with this loginId already exists UserStatusesRequest: description: Request for User Statuses value: userIds: - 4ffcec98-2206-44b1-94e3-e253abf6a4d2 - 4a83190d-b288-4efe-b3bf-96d5c5c5ae44 BasicUserWithRolesAndGroupsInput: description: Basic user with roles and groups value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex roles: - Administrator memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 03673a3a-3dfb-4606-ae79-fd0fe0cf2d53 resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d5 UserWithFeaturesfromProfile: description: User with features from profile which will get assigned if features not provided value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex roles: - Supervisor - Administrator memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 03673a3a-3dfb-4606-ae79-fd0fe0cf2d53 resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d5 profileId: ASDFGH EmailIdEqualsInput: value: filter: - discriminator: OR key: emailId operator: EQUALS value: Steven@avaya.com orderBy: firstName desc ErrorUnauthorized: description: Unauthorized value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#unauthorized title: Unauthorized status: 401 detail: This operation requires authentication. See https://developers.avayacloud.com/avaya-experience-platform/docs/how-to-authenticate-with-ccaas-apis FirstNameStartWithInput: value: filter: - discriminator: AND key: firstName operator: STARTS_WITH value: Steven orderBy: firstName desc AddressDefault: description: A default Address value: addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: true FirstNameContainsInput: value: filter: - discriminator: OR key: firstName operator: CONTAINS value: tev orderBy: firstName desc UserResponse: description: User details value: organizationNodeId: EXMPLE userId: c8c2909d-75e9-484a-94c0-b7e8d29771fe loginId: stevens@avaya.com lastName: Stevens firstName: Alex displayName: Stevens, Alex emailId: stevens@avaya.com profileId: FSADSJ memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 03203a3a-3dfb-4606-ae79-fd0fe0be3d53 roles: - Agent resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d53 addresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: true accountAddresses: - addressId: d7d3909d-75e9-484a-94c0-b7e8d29661de isDefault: false features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd messaging: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: ce607659-2213-4c93-ad8f-3a930d1a8b3b email: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: bb032ead-889a-46c6-957d-826449bc84cb voice: voicePriority: true autoAnswer: false afterContactWork: false userExtension: '10021' emergencyLocationIdentificationNumber: '7798098090' providers: - providerAgentId: stevens@avaya.com channelProviderId: a8b6d39c-53c5-4d94-a640-c28bee987ed7 cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} outbound: {} recorder: {} advancedcmvoice: {} UserUpdateWithAllFields: description: user with all fields value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex displayName: Stevens, Alex emailId: stevens@avaya.com profileId: FSADSJ memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d5 roles: - Agent addresses: - addressId: 04303a3a-3dfb-4606-ae79-fd0fe0be3e43 addressName: Address Name addressType: APARTMENT addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: true - addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: false accountAddresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe isDefault: true features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false messaging: autoAnswer: false multiplicity: 2 afterContactWork: false email: autoAnswer: false multiplicity: 2 afterContactWork: false voice: voicePriority: true autoAnswer: false afterContactWork: false cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} outbound: {} recorder: {} advancedcmvoice: {} BasicUserInput: description: Basic user value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex ResourcePartitionDefaultResource: description: Resource Partition with default resource value: - resourcePartitionId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 defaultResourceId: 620bbb28-7112-433a-af59-17ee0f15a247 type: CALLER_ID isDefault: true ErrorInternalServerError: description: Server Error value: type: https://developers.avayacloud.com/avaya-experience-platform/docs/error-handling#server-error title: Server Error status: 500 detail: An internal server error was encountered. UserResourcePartitionsPage: description: Paginated resource partition Data for User/Profile value: pagination: pageNumber: 2 pageSize: 10 total: 45 resourcePartitions: - id: 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 name: Sales Resource Partition description: Sales resource partition with CLID resources: - type: CALLER_ID resourceIds: - 620bbb28-7112-433a-af59-17ee0f15a247 - 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 defaultResourceId: 620bbb28-7112-433a-af59-17ee0f15a247 links: - prev: /api/admin/user/v1/accounts/ASDJGE/users/c8c2909d-75e9-484a-94c0-b7e8d29771fe/resourcePartitions?pageNumber=1&pageSize=10 next: /api/admin/user/v1/accounts/ASDJGE/users/c8c2909d-75e9-484a-94c0-b7e8d29771fe/resourcePartitions?pageNumber=3&pageSize=10 UserSearchPage: description: Paginated User Data value: pagination: pageNumber: 2 pageSize: 10 total: 45 users: - organizationNodeId: EXMPLE userId: c8c2909d-75e9-484a-94c0-b7e8d29771fe loginId: stevens@avaya.com lastName: Stevens firstName: Alex displayName: Stevens, Alex emailId: stevens@avaya.com profileId: FSADSJ memberOfGroups: - c8c2909d-75e9-484a-94c0-b7e8d29771fe ownedGroups: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 roles: - Agent resourcePartitions: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 - opl6d39c-78ui-4d94-qqqq-c28bee987ed7 addresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe addressName: Address Name addressType: OFFICE addressTypeNumber: '101' streetNumber: A11 streetName: Allstate Pkwy city: Markham state: 'ON' countryCode: ZW zip: L3R9T8 isDefault: false accountAddresses: - addressId: c8c2909d-75e9-484a-94c0-b7e8d29771fe isDefault: false features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd messaging: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd email: autoAnswer: false multiplicity: 2 afterContactWork: false providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd voice: voicePriority: true autoAnswer: false afterContactWork: false userExtension: '10021' emergencyLocationIdentificationNumber: '7798098090' providers: - providerAgentId: stevens@avaya.com channelProviderId: d7c2909d-75e9-484a-94c0-b7e8d30771dd cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} recorder: {} outbound: {} advancedcmvoice: {} links: prev: /api/admin/user/v1/accounts/ASDJGE/users:search?pageNumber=1&pageSize=10 next: /api/admin/user/v1/accounts/ASDJGE/users:search?pageNumber=3&pageSize=10 UserWithProfileFeatureswithoutchannelProvider: description: User with features without channel provider value: organizationNodeId: EXMPLE loginId: stevens@avaya.com lastName: Stevens firstName: Alex roles: - Agent - Administrator memberOfGroups: - 04703a3a-3dfb-4606-ae79-fd0fe0be3e64 ownedGroups: - 03673a3a-3dfb-4606-ae79-fd0fe0cf2d53 resourcePartitions: - 96803a3a-3dfb-4606-ae79-fd0fe0be3e64 - pqe73a3a-78965-4606-ae12-yu0fe0cf2d5 profileId: ASDFGH features: matching: attributes: - Language.English - Language.French queues: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 chat: autoAnswer: false multiplicity: 2 afterContactWork: false messaging: autoAnswer: false multiplicity: 2 afterContactWork: false email: autoAnswer: false multiplicity: 2 afterContactWork: false voice: voicePriority: true autoAnswer: false afterContactWork: false cmvoice: agentLoginId: '11021' agentPassword: 81238 agentLoginPassword: '012345' extensionNumber: '1111' communicationProfileAddresses: - address: 10022@SipDomain1.com type: SIP isDefault: true - address: +12345@avaya.com type: E164 isDefault: false communicationProfilePassword: anypasswordstring aci: {} recorder: {} outbound: {} advancedcmvoice: {} GetUserDetailSuccess: description: Successful user retrieval value: userId: 002d011003cf7c9d1b469ddc7e email: hitenagent@avaya113.com firstName: Hiten lastName: Agent fullName: Hiten Agent licType: omniChannelAgentEnhanced status: enabled createdOn: '2025-09-08T14:36:49Z' lastUpdated: '2025-09-08T14:38:10Z' tags: [] attributes: {} permissions: {} ErrorUserEmailExists: description: Constraint Violation value: type: https://developers.avayacloud.com/avaya-infinity/docs/user-management#error-reference title: Conflict status: 409 detail: A resource with the same unique constraint values already exists. violations: - field: email message: A user with this email already exists ErrorUnprocessableEntity: description: Validation failed value: type: https://developers.avayacloud.com/avaya-infinity/docs/user-management#error-reference title: Validation failed status: 422 detail: A problem that indicates a syntactically correct, yet semantically illegal request. The Server can not process this request until the client resolves the semantic errors described in the violations section. violations: message: Invalid email format. code: 20008 schemas: Role: description: User Role type: string maxLength: 40 example: Agent CMVoiceUserFeature: description: This model is used to populate CM voice feature data in user type: object required: - agentLoginId - extensionNumber - communicationProfileAddresses properties: deviceType: type: string example: CM readOnly: true agentLoginId: type: string minLength: 1 maxLength: 16 pattern: ^[1-9][0-9]*$ maximum: 10000000000000000 description: Represent CM agent Id of User. example: '2501' agentPassword: description: Represents CM agent password. This field is deprecated. Use agentLoginPassword field. type: integer format: int64 minimum: 1 maximum: 999999999 example: 81234 deprecated: true agentLoginPassword: description: Represents CM agent login password in String format. type: string minLength: 1 maxLength: 16 pattern: ^[0-9]*$ example: '012345' extensionNumber: type: string minLength: 1 maxLength: 16 maximum: 10000000000000000 pattern: ^[1-9][0-9]*$ description: Represent Extension needed to map to User. example: '3501' communicationProfileAddresses: type: array minItems: 1 maxItems: 50 description: Represents the communication profile addresses. items: $ref: '#/components/schemas/CommunicationProfileAddress' communicationProfilePassword: description: Represent communication profile password. type: string example: UserPassword@123 minLength: 2 maxLength: 256 providers: readOnly: true type: array maxItems: 10 items: $ref: '#/components/schemas/Provider' SearchFilterCriteria: type: object description: Filter criteria of request title: SearchFilterCriteria properties: filter: type: array maxItems: 500 items: $ref: '#/components/schemas/Criteria' description: 'Specifies details of a row filter. The possible fields you can filter are needs to be supplied as mentioned in description. ' orderBy: description: 'Field name on which sorting needs to be performed. The possible fields you can filter are needs to be supplied as mentioned in description. Field Names are case-sensitive (should be written as it is in description). The default sorting order is ascending. To specify descending order, a suffix " desc" should be added. For example, "firstName" for ascending or "firstName asc" for descending". ' type: string maxLength: 255 example: firstName desc UserRecorderFeature: type: object description: 'This model is used to populate Recorder user feature data on UI while editing a user. Currently, this model expects no properties and any properties passed to it will be ignored. In the future, expected properties will be added as the model evolves. To enable Recorder simply pass an empty object `{}`. ' UserResourcePartition: description: resource partition information type: object required: - name properties: id: type: string description: Unique Id of the resource partition readOnly: true example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ name: type: string example: Sales resource partition minLength: 2 maxLength: 255 pattern: ^[a-zA-Z\p{L}0-9]+([ ]*[a-zA-Z\p{L}0-9-\_\*\=\+\$\:\;\&\~\,\?\%\!\|\{\}\`\.\']+)*$ description: Name of the resource partition description: type: string example: Sales resource partition with Caller ID minLength: 5 maxLength: 1024 description: Information about resource partition resources: type: array maxItems: 10 description: List of the different type of resources assigned to the resource partition items: $ref: '#/components/schemas/UserResourcePartitionResource' AdvancedCMVoiceUserFeature: description: This model is used to populate Advanced CM voice feature data in user type: object CommunicationProfileAddress: description: Represents association of profile address with user. Communication profile is used to represent a subscription of the user to a communication subsystem and the specific configuration needs for the user. Communication profiles can be CM Endpoint, Session Manager profile. type: object required: - address - type properties: address: description: Represents the Communication Addresses based on type of communication type: string minLength: 6 maxLength: 255 pattern: ^[\+]?[\w-\.]+@([\w-]+\.)+[\w-]{2,63}$ example: 10001@SipDomain.com type: description: Represents type of the Communication Addresses type: string enum: - SIP - E164 example: SIP isDefault: description: Represents default Communication Addresses type: boolean default: false example: false UserIdList: description: List of user Ids type: object properties: userIds: type: array maxItems: 50 items: type: string example: c8c2909d-75e9-484a-94c0-b7e8d30771fe minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ example: - 4ffcec98-2206-44b1-94e3-e253abf6a4d2 - 4a83190d-b288-4efe-b3bf-96d5c5c5ae44 description: List of user Ids UserPage: description: Paginated User Data type: object properties: pagination: $ref: '#/components/schemas/Pagination' users: type: array items: $ref: '#/components/schemas/User' links: allOf: - $ref: '#/components/schemas/Links' example: prev: /api/admin/user/v1/accounts/ASDJGE/users?pageNumber=1&pageSize=10 next: /api/admin/user/v1/accounts/ASDJGE/users?pageNumber=3&pageSize=10 AssignedQueue: description: Details of a queue to be assigned to an agent and its proficiency type: object properties: queueId: type: string minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}$ description: The unique 36 character internal id that represents the queue. proficiency: type: integer minimum: 1 maximum: 16 default: 8 description: Value of proficiency that agent has for this particular queue. The value 1 represents the highest level of proficiency. name: type: string minLength: 3 maxLength: 50 description: The name of the queue. Name must be unique per account. CloudSwitchVoiceUserFeature: description: This model is used to populate voice feature data on UI while editing user type: object properties: voicePriority: type: boolean default: false description: 'Voice call excludes new work on all other channels ' example: false autoAnswer: type: boolean default: false description: Represent if the voice call to Agent is to be auto answered or not. Value can be true or false example: false afterContactWork: type: boolean default: false description: afterContactWork enable/disble for this channel example: false afterContactWorkMode: type: string enum: - DEFAULT - DISABLED - MANUAL - TIMED description: The mode used to determine expiry. example: TIMED afterContactWorkTimer: type: - integer - 'null' minimum: 1 maximum: 3600 description: 'The ACW timer expiry in terms of the specified units. ' example: 10 afterContactWorkOverrideQueue: type: boolean description: user afterContactWork overrides queue setting example: false userExtension: type: string example: '10021' readOnly: true emergencyLocationIdentificationNumber: type: string example: '7798098090' readOnly: true providers: readOnly: true type: array maxItems: 10 items: $ref: '#/components/schemas/Provider' deviceType: type: string example: WEBRTC readOnly: true password: type: string example: Admin123$ description: Represents Voice agent password. readOnly: true Links: type: object properties: prev: type: string default: '' description: URL of the previous page. Blank if currently on the first page. next: type: string default: '' description: URL of the next page. Blank if currently on the last page. UserOutboundFeature: type: object description: 'This model is used to populate Outbound user feature data on UI while editing a user. Currently, this model expects no properties and any properties passed to it will be ignored. In the future, expected properties will be added as the model evolves. To enable outbound simply pass an empty object `{}`. ' Address: description: A real address for an user. type: object required: - addressName - streetName - streetNumber - countryCode - zip properties: addressId: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 36 maxLength: 36 readOnly: true pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ addressName: type: string minLength: 2 maxLength: 32 pattern: ^[a-zA-Z\p{L}0-9]+([ ]*[a-zA-Z\p{L}0-9-\_\*\=\+\$\:\;\&\~\,\?\%\!\|\{\}\`\.\']+)*$ example: Home address addressType: type: - string - 'null' enum: - OFFICE - APARTMENT - BASEMENT - BUILDING - DEPARTMENT - FLOOR - FRONT - KEY - LOBBY - LOT - LOWER - PENTHOUSE - PIER - REAR - ROOM - SIDE - SLIP - SPACE - STOP - SUITE - TRAILER - UNIT - UPPER example: UNIT description: It is to narrow down the exact dispatched location for the agent/user addressTypeNumber: type: string minLength: 0 maxLength: 64 example: '101' description: It is optional unless the AddressType is specified and it can be used for things like "Floor 1" or "Unit 101". streetNumber: type: string minLength: 1 maxLength: 16 example: A11 streetName: type: string minLength: 2 maxLength: 128 example: Allstate Pkwy city: type: string minLength: 0 maxLength: 128 example: Markham state: type: string minLength: 1 maxLength: 3 example: 'ON' countryCode: type: string minLength: 2 maxLength: 3 pattern: ^[A-Za-z]{2,3}$ example: ZW zip: type: string minLength: 4 maxLength: 16 example: L3R9T8 pattern: ^[A-Za-z0-9\p{L}_ -]*$ isDefault: type: boolean description: Indicated default address of user example: false default: false Problem: type: object description: 'Problem Detail as a way to carry machine-readable details of errors in a HTTP response to avoid the need to define new error response formats for HTTP APIs RFC 7807 ' properties: type: type: string format: uri description: 'An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type (e.g., using HTML). ' default: about:blank example: https://developers.avayacloud.com/onecloud-ccaas/docs/error-handling#constraint-violation title: type: - string - 'null' description: 'A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized). ' example: Service Unavailable status: type: - integer - 'null' format: int32 description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' minimum: 100 example: 503 exclusiveMaximum: 600 detail: type: - string - 'null' description: 'A human readable explanation specific to this occurrence of the problem. ' example: Connection to database timed out instance: type: - string - 'null' format: uri description: 'An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced. ' violations: type: - array - 'null' description: 'A list of violations that occurred as a result of invalid data provided as part of a request. ' items: type: object properties: field: type: string description: 'The name of the field in the request that caused the violation. This can be the name of a path parameter, query parameter, or a field within the request body. ' example: accountId message: type: string description: 'A human readable explanation specific to this occurrence of the violation. ' example: must match "^[a-zA-Z]{6}$" code: type: integer format: int32 description: 'The violation code generated by the server for this occurrence of the violation. Use this code when implementing any error handling logic instead of the message, as the message can change. ' example: 20006 example: - field: emailAddress message: must not be null code: 20002 - field: accountId message: must match "^[a-zA-Z]{6}$" code: 20006 UserResourcePartitionsPage: description: Paginated resource partition Data type: object properties: pagination: $ref: '#/components/schemas/Pagination' resourcePartitions: type: array items: $ref: '#/components/schemas/UserResourcePartition' links: allOf: - $ref: '#/components/schemas/Links' example: prev: /api/admin/user/v1/accounts/ASDJGE/users/c8c2909d-75e9-484a-94c0-b7e8d29771fe/resource-partitions?pageNumber=1&pageSize=10 next: /api/admin/user/v1/accounts/ASDJGE/users/c8c2909d-75e9-484a-94c0-b7e8d29771fe/resource-partitions?pageNumber=3&pageSize=10 EmailChannelUserFeature: description: Details of Email Channel feature assigned to the user. type: object properties: autoAnswer: type: boolean description: Auto-answer enabled disble for this channel example: false multiplicity: type: integer format: int32 minimum: 1 maximum: 10 example: 2 description: Multiplicity of channels afterContactWork: type: boolean description: afterContactWork enable/disble for this channel example: false afterContactWorkMode: type: string enum: - DEFAULT - DISABLED - MANUAL - TIMED description: The mode used to determine expiry. example: TIMED afterContactWorkTimer: type: - integer - 'null' minimum: 1 maximum: 3600 description: 'The ACW timer expiry in terms of the specified units. ' example: 10 afterContactWorkOverrideQueue: type: boolean description: user afterContactWork overrides queue setting example: false providers: readOnly: true type: array maxItems: 10 items: $ref: '#/components/schemas/Provider' UserResourcePartitionResource: description: resource partition Resource information type: object properties: resourceIds: type: array maxItems: 10 description: List of the resources Id assigned to the resource partition items: description: 'The unique id that represents the resource Id. It could be any unique id like UUID/number. To get more details about resources based on type invoke following APIs CALLER_ID : /api/admin/voice/v1/accounts/{accountId}/phone-numbers/{resourceId}' type: string maxLength: 100 example: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 - opl6d39c-78ui-4d94-qqqq-c28bee987ed7 type: type: string enum: - CALLER_ID description: Information about Resource example: CALLER_ID defaultResourceId: type: string example: Default Resource Id minLength: 3 maxLength: 1024 description: Default Resource Id ResourcePartitionDefaultResource: description: Resource Partition Default Resource information type: object required: - resourcePartitionId - defaultResourceId - type properties: resourcePartitionId: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 3 maxLength: 1024 description: resourcePartition Id defaultResourceId: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 3 maxLength: 1024 description: Default Resource Id type: type: string enum: - CALLER_ID description: Information about Resource example: CALLER_ID isDefault: type: boolean default: false example: false description: Set true to configure default resource and set false to remove default resource Criteria: type: object description: Filter criteria with attribute and discriminator title: Criteria properties: discriminator: type: string enum: - AND - OR description: Possible values are AND, OR key: type: string minLength: 2 maxLength: 50 example: firstName description: Possible values are loginId,lastName,firstName,emailId,organizationNodeId operator: type: string enum: - STARTS_WITH - CONTAINS - ENDS_WITH - EQUALS - NOT_EQUALS example: STARTS_WITH description: Operator to use for filtering value: type: string maxLength: 50 example: Steven description: Value needs to be filtering AccountAddress: description: Assigned account address for the user. type: object required: - addressId properties: addressId: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ isDefault: type: boolean description: Indicated default address of user example: false default: false ChatChannelUserFeature: description: Details of Chat Channel feature assigned to the user. type: object properties: autoAnswer: type: boolean description: Auto-answer enabled disble for this channel example: false multiplicity: type: integer format: int32 minimum: 1 maximum: 10 example: 2 description: Multiplicity of channels afterContactWork: type: boolean description: afterContactWork enable/disable for this channel example: false afterContactWorkMode: type: string enum: - DEFAULT - DISABLED - MANUAL - TIMED description: The mode used to determine expiry. example: TIMED afterContactWorkTimer: type: - integer - 'null' minimum: 1 maximum: 3600 description: 'The ACW timer expiry in terms of the specified units. ' example: 10 afterContactWorkOverrideQueue: type: boolean description: user afterContactWork overrides queue setting example: false providers: readOnly: true type: array maxItems: 10 items: $ref: '#/components/schemas/Provider' MatchingUserFeature: description: Details of Matching feature assigned to the user. type: object properties: attributes: type: array maxItems: 50 items: type: string maxLength: 255 example: - Language.English - Language.French description: List of attributes assigned to user queues: type: array maxItems: 50 items: $ref: '#/components/schemas/AssignedQueue' description: List of assigned queues to an user example: - queueId: 620bbb28-7112-433a-af59-17ee0f15a247 proficiency: 10 - queueId: 07d2c0a3-f05c-47e7-a86e-51148d3d4fd4 proficiency: 6 Provider: type: object properties: providerAgentId: description: Identifier that represents the provider agent. type: string example: stevens@avaya.com maxLength: 255 channelProviderId: description: The unique 36 character internal id (uuid) that represents the channel provider. type: string example: d7c2909d-75e9-484a-94c0-b7e8d30771dd minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ User: type: object description: A User can be an Agent, Supervisor or an Administrator. required: - loginId - lastName - firstName - organizationNodeId properties: organizationNodeId: type: string example: EXMPLE minLength: 6 maxLength: 6 pattern: ^[a-zA-Z]{6}$ description: Unique Id for Account or Node where user get created userId: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe readOnly: true description: The unique 36 character internal id (uuid) that represents the user. minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ loginId: type: string example: stevens@avaya.com maxLength: 255 pattern: ^[a-zA-Z\p{L}0-9+-_.]+(?:\.[a-zA-Z\p{L}0-9+-_.]+)*@(?:[a-zA-Z\p{L}0-9-]+\.)+[a-zA-Z\p{L}]{2,63}$ description: Login Id for User password: type: string example: Aghtat2343$ writeOnly: true pattern: ^(?=.{8,}$)(?=.*?[a-z])(?=.*?[A-Z])(?=.*?[0-9])(?=.*?\W).*$ maxLength: 255 description: Login credentials of User lastName: type: string example: Stevens minLength: 2 maxLength: 255 pattern: ^[^<>\^@#]*$ description: Last name of User firstName: type: string example: Alex minLength: 2 maxLength: 255 pattern: ^[^<>\^@#]*$ description: First name of User displayName: type: string example: Stevens, Alex minLength: 2 maxLength: 510 pattern: ^[^<>\^@#]*$ description: Display name of User emailId: type: string example: stevens@avaya.com minLength: 5 maxLength: 255 pattern: ^[a-zA-Z\p{L}0-9]+[a-zA-Z\p{L}0-9+\-_.]+(?:\.[a-zA-Z\p{L}0-9+\-_.]+)*@(?:[a-zA-Z\p{L}0-9-]+\.)+[a-zA-Z\p{L}]{2,63}$ description: Email Id of User profileId: type: string example: FSADSJ minLength: 6 maxLength: 6 pattern: ^[a-zA-Z0-9\-\_\.\ ]+$ description: The unique 6 character internal id that represents the profile. memberOfGroups: type: array description: List of the groups of which the user is member of. maxItems: 50 items: description: The unique 36 character internal id (uuid) that represents the group. type: string minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ example: - c8c2909d-75e9-484a-94c0-b7e8d29771fe ownedGroups: type: array description: List of the groups owned by the user. maxItems: 50 items: description: The unique 36 character internal id (uuid) that represents the group. type: string minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ example: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 roles: type: array maxItems: 11 items: $ref: '#/components/schemas/Role' description: ' Roles assigned to user. See the list of [Available Roles](https://docs.kaizen.avaya.com/developer-guides/administration/manage-users/#available-roles). ' resourcePartitions: type: array maxItems: 10 description: List of the resource partitions assigned to the user items: description: The unique 36 character id (uuid) that represents the resource partition. type: string minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ example: - a8b6d39c-53c5-4d94-a640-c28bee987ed7 - opl6d39c-78ui-4d94-qqqq-c28bee987ed7 addresses: type: array description: List of the address added by user maxItems: 5 items: $ref: '#/components/schemas/Address' accountAddresses: type: array maxItems: 4 description: List of the account addresses assigned to the user items: $ref: '#/components/schemas/AccountAddress' features: $ref: '#/components/schemas/UserFeatures' FeatureAction: description: Feature Status and action type: object properties: action: type: string enum: - ADD - UPDATE - DELETE example: ADD description: Action done for feature of user readOnly: true status: type: string enum: - COMPLETED - IN_PROGRESS - FAILED - DELETED - DELETE_FAILED - DELETE_IN_PROGRESS - PENDING example: COMPLETED readOnly: true message: type: string example: Feature added successfully readOnly: true MessagingChannelUserFeature: description: Details of Messaging Channel feature assigned to the user. type: object properties: autoAnswer: type: boolean description: Auto-answer enabled disble for this channel example: false multiplicity: type: integer format: int32 minimum: 1 maximum: 10 example: 2 description: Multiplicity of channels afterContactWork: type: boolean description: afterContactWork enable/disble for this channel example: false afterContactWorkMode: type: string enum: - DEFAULT - DISABLED - MANUAL - TIMED description: The mode used to determine expiry. example: TIMED afterContactWorkTimer: type: - integer - 'null' minimum: 1 maximum: 3600 description: 'The ACW timer expiry in terms of the specified units. ' example: 10 afterContactWorkOverrideQueue: type: boolean description: user afterContactWork overrides queue setting example: false providers: readOnly: true type: array maxItems: 10 items: $ref: '#/components/schemas/Provider' UserStatusResponse: description: Status of Users type: object properties: userId: description: The unique 36 character internal id (uuid) that represents the user. type: string example: c8c2909d-75e9-484a-94c0-b7e8d30771fe minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ role: $ref: '#/components/schemas/FeatureAction' resourcePartitions: $ref: '#/components/schemas/FeatureAction' features: $ref: '#/components/schemas/UserFeatureStatus' allOf: - $ref: '#/components/schemas/FeatureAction' UserFeatureStatus: description: Status of all features type: object properties: matching: $ref: '#/components/schemas/FeatureAction' chat: $ref: '#/components/schemas/FeatureAction' messaging: $ref: '#/components/schemas/FeatureAction' email: $ref: '#/components/schemas/FeatureAction' voice: $ref: '#/components/schemas/FeatureAction' cmvoice: $ref: '#/components/schemas/FeatureAction' desktop: $ref: '#/components/schemas/FeatureAction' aci: $ref: '#/components/schemas/FeatureAction' outbound: $ref: '#/components/schemas/FeatureAction' recorder: $ref: '#/components/schemas/FeatureAction' cmdesktop: $ref: '#/components/schemas/FeatureAction' advancedcmvoice: $ref: '#/components/schemas/FeatureAction' UserFeatures: type: object description: Features enabled in user properties: matching: $ref: '#/components/schemas/MatchingUserFeature' chat: $ref: '#/components/schemas/ChatChannelUserFeature' messaging: $ref: '#/components/schemas/MessagingChannelUserFeature' email: $ref: '#/components/schemas/EmailChannelUserFeature' voice: $ref: '#/components/schemas/CloudSwitchVoiceUserFeature' cmvoice: $ref: '#/components/schemas/CMVoiceUserFeature' aci: $ref: '#/components/schemas/UserACIFeature' outbound: $ref: '#/components/schemas/UserOutboundFeature' recorder: $ref: '#/components/schemas/UserRecorderFeature' advancedcmvoice: $ref: '#/components/schemas/AdvancedCMVoiceUserFeature' Pagination: type: object properties: pageNumber: type: integer description: The current page number. example: 2 pageSize: type: integer description: The max number of records that can be retrieved on this page. example: 10 total: type: integer description: The total number of records. example: 100 UserACIFeature: description: 'This model is used to populate ACI (Avaya Conversational Intelligence) feature data on UI while editing a user. Currently, this model expects no properties and any properties passed to it will be ignored. In the future, expected properties will be added as the model evolves. To enable ACI simply pass an empty object `{}`. ' type: object PhoneSpaces: type: integer minimum: 0 ReportsTo: type: string QueueId: description: Unique identifier for a queue. type: string minLength: 23 maxLength: 26 pattern: ^003[0-9a-f]{20,23}$ example: 00301090301ad8db0f0d4c370 AllowAgentEditAutoAnswer: type: boolean description: Controls whether the agent is allowed to edit their own Auto Answer Interactions setting (attributes.webRTC.autoAnswer.interaction) via the Edit Profile API. Defaults to false (agent cannot edit). When false and an agent attempts a self-edit that includes an Auto Answer change, the server returns HTTP 403 Forbidden. Administrators can always modify Auto Answer for any user regardless of this flag. default: false Groups: type: array description: Array of group identifiers that the user or profile belongs to. Each string is a groupId from the groups table (Edify-style IDs with 007 prefix). items: $ref: '#/components/schemas/GroupId' example: - 007d01090301ad8db0f0d4c370 - 007d01090301ad8db0f0d4c371 IsEliteVoiceEnabled: type: boolean LastName: description: The last name of a user. type: string minLength: 2 maxLength: 255 pattern: ^[^<>\^@#]*$ example: Smith FullName: description: The full name of the user (firstName + lastName). type: string example: John Smith IsVoiceEnabled: type: boolean UcPhoneSpaces: type: integer minimum: 0 maximum: 3 description: 'Multiplicity Personal Queue Phone; number of UC/personal-queue phone spaces (0-3). ' AIDableField: type: boolean HasEliteExtensionPassword: description: Whether the user has an Elite extension password set. type: boolean TagsList: type: array items: type: string description: List of tag names associated with the user or profile. example: - APACT - English - NART DefaultOutboundCallerId: type: string minLength: 10 UserAccountStatus: description: Is the user enabled or disabled? type: string enum: - enabled - disabled SipTranslation: description: SIP translation setting. type: string FolderId: description: Unique identifier for a folder. type: string pattern: ^073[0-9a-f]{23}$ example: 073d010813b941cf7da111d147 Tabs: description: User-configured UI tabs. type: array items: type: object additionalProperties: true FwNumber: type: string pattern: ^[\d+\s().-]*$ EliteSbcGroupId: description: The ID of the default SBC Group to use for calls involving this hybrid agent. type: string pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ minLength: 36 maxLength: 36 EliteSipAddress: description: The SIP address for the hybrid agent. type: string format: email ConsoleTheme: allOf: - $ref: '#/components/schemas/UiTheme' description: Console theme preference DirectoryAble: type: boolean IsDigitalEnabled: type: boolean UserTitle: description: The user's job title. type: string minLength: 1 maxLength: 510 example: Supervisor PublicAlias: description: The public alias of a user. Supports letters (including international characters), digits, spaces, hyphens, and apostrophes. type: string minLength: 2 maxLength: 100 pattern: ^[\p{L}0-9 '\-]*$ example: John Smith AllowAgentEditWebHIDHeadsetControl: type: boolean description: Controls whether the agent is allowed to edit their own WebHID Headset Control setting (attributes.webHID.status) via the Edit Profile API. Defaults to false (agent cannot edit). When false and an agent attempts a self-edit that includes a WebHID status change, the server returns HTTP 403 Forbidden. Administrators can always modify WebHID settings for any user regardless of this flag. default: false Links_2: description: Pagination navigation links type: object required: - prev - next properties: prev: description: URL of the previous page. Blank if currently on the first page. type: string readOnly: true example: '' next: description: URL of the next page. Blank if currently on the last page. type: string readOnly: true example: '' Email: description: A user's email address type: string format: email TimeZone: type: string description: User's timezone preference (IANA timezone) maxLength: 64 example: America/New_York AuthProvider: type: string description: Which provider is used to authenticate the user. enum: - keycloak - saml - local SendLogsToEdify: description: Whether to send logs to Edify. type: boolean UserListItem: type: object properties: userId: $ref: '#/components/schemas/UserId' folderId: anyOf: - $ref: '#/components/schemas/FolderId' - type: 'null' title: type: - string - 'null' firstName: type: string example: Banke lastName: type: string example: S fullName: $ref: '#/components/schemas/FullName' email: $ref: '#/components/schemas/Email' location: type: - string - 'null' tags: $ref: '#/components/schemas/TagsList' tagsData: type: object additionalProperties: true groups: type: - string - 'null' attributes: type: object additionalProperties: true permissions: type: object additionalProperties: true imageLastChangedAt: type: - string - 'null' queues: anyOf: - $ref: '#/components/schemas/UserQueues' - type: 'null' description: Queue assignments for this user. licType: type: string example: omniChannelAgentEnhanced extension: anyOf: - $ref: '#/components/schemas/Extension' - type: 'null' mobile: type: - string - 'null' fw: type: - string - 'null' defaultOutboundCallerId: type: - string - 'null' emergencyOutboundCallerId: type: - string - 'null' status: type: string example: enabled createdOn: type: string format: date-time example: '2025-09-08 14:36:49' lastUpdated: type: string format: date-time example: '2025-09-08 14:38:10' createdBy: type: object additionalProperties: true userStatus: type: object additionalProperties: true scimExternalId: type: - string - 'null' authProvider: type: - string - 'null' directoryAble: type: boolean appTheme: $ref: '#/components/schemas/AppTheme' consoleTheme: $ref: '#/components/schemas/ConsoleTheme' isSupportUser: type: boolean calendarEventProvider: type: - string - 'null' calendarEventStatusMap: type: - object - 'null' interactionViewsType: type: string isDeleted: type: boolean description: Indicates if the user has been soft-deleted. Only present when includeDeleted query parameter is used. enableWebHID: $ref: '#/components/schemas/EnableWebHID' enableErrorTones: $ref: '#/components/schemas/EnableErrorTones' allowInternalCalls: $ref: '#/components/schemas/AllowInternalCalls' allowAgentEditAutoAnswer: $ref: '#/components/schemas/AllowAgentEditAutoAnswer' allowAgentEditWebHIDHeadsetControl: $ref: '#/components/schemas/AllowAgentEditWebHIDHeadsetControl' publicAlias: anyOf: - $ref: '#/components/schemas/PublicAlias' - type: 'null' namePrefix: anyOf: - $ref: '#/components/schemas/NamePrefix' - type: 'null' nameSuffix: anyOf: - $ref: '#/components/schemas/NameSuffix' - type: 'null' definedInteractionViews: anyOf: - $ref: '#/components/schemas/DefinedInteractionViews' - type: 'null' modifyInteractionViews: anyOf: - $ref: '#/components/schemas/ModifyInteractionViews' - type: 'null' rejectInteractions: anyOf: - $ref: '#/components/schemas/RejectInteractions' - type: 'null' isDigitalEnabled: anyOf: - $ref: '#/components/schemas/IsDigitalEnabled' - type: 'null' isVoiceEnabled: anyOf: - $ref: '#/components/schemas/IsVoiceEnabled' - type: 'null' previewOutbound: anyOf: - $ref: '#/components/schemas/PreviewOutbound' - type: 'null' crmConfigurations: anyOf: - $ref: '#/components/schemas/CrmConfigId' - type: object additionalProperties: true - type: 'null' description: CRM configuration ID or object, depending on query parameters. personalQueueId: anyOf: - $ref: '#/components/schemas/PersonalQueueId' - type: 'null' sendLogsToEdify: $ref: '#/components/schemas/SendLogsToEdify' EnableErrorTones: type: boolean description: Whether error tones are enabled. UserAID: description: Auto Interaction Distribution (AID) state for the user. type: object properties: isAID: type: - string - boolean spaces: $ref: '#/components/schemas/Spaces' limits: type: object additionalProperties: type: integer lastSelected: type: - string - 'null' lastEndedInteractionTime: type: string Permissions: type: object description: The permissions for a user or profile. properties: app: type: object console: type: object example: app: agent: read: false portal: app-web: false homeList: read: false queueList: read: false queueToggling: read: false console: cx: read: true ml: read: true portal: console-web: true queues: read: true account: read: true numbers: read: true integrations: read: false UserPage_2: type: object required: - resources - pagination - links properties: resources: $ref: '#/components/schemas/UserPageResources' pagination: allOf: - $ref: '#/components/schemas/Pagination_2' description: Pagination metadata. readOnly: true links: allOf: - $ref: '#/components/schemas/Links_2' description: Navigation links for pagination. readOnly: true CrmConfigId: type: string pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ minLength: 36 maxLength: 36 TaskSpaces: type: integer minimum: 0 LogConfiguration: type: object description: 'Log configuration settings for controlling logging behavior. Used to configure client-side logging for users and profiles. ' properties: logLevel: type: string enum: - ERROR - WARN - INFO - DEBUG - TRACE description: The minimum log level to capture example: INFO remoteLoggingEnabled: type: boolean description: Whether to send logs to the remote logging service example: true sampleRate: type: number minimum: 0 maximum: 1 description: Sampling rate for logs (0 to 1, where 1 means log everything) example: 0.5 modules: type: array items: type: string description: List of module names to enable logging for example: - auth - api - websocket Attributes: type: object description: Attributes of the user or profile. properties: time: type: object properties: tz: $ref: '#/components/schemas/TimeZone' taskSpaces: type: integer example: 3 emailSpaces: type: integer example: 3 phoneSpaces: type: integer example: 1 videoSpaces: type: integer example: 0 messagingSpaces: type: integer example: 3 sessionStats: type: object description: Session statistics configuration (obsolete but kept for backward compatibility) properties: enabled: type: boolean frequencyScalar: type: integer example: 5 frequencyUnit: type: string example: minutes stats: type: object additionalProperties: type: boolean pingHosts: type: array items: type: string example: - test.edify.cx DefinedInteractionViews: type: array description: List of defined interaction views items: type: string ApiRequestKey: description: Unique identifier for tracing the handling of an API request. type: string pattern: ^012[0-9a-f]{23}$ example: 012d010908d4c2bdcc95a5f63c ScimExternalId: type: string UpdateUserRequest: type: object description: 'Request body for updating an existing user. All fields are optional, however at least one must be included. **Merge Behavior:** Fields use different update strategies. Most scalar fields are replaced with the provided value. Complex fields have specific behaviors noted in their descriptions. ' properties: status: $ref: '#/components/schemas/UserAccountStatus' email: $ref: '#/components/schemas/Email' firstName: $ref: '#/components/schemas/FirstName' lastName: $ref: '#/components/schemas/LastName' publicAlias: $ref: '#/components/schemas/PublicAlias' namePrefix: $ref: '#/components/schemas/NamePrefix' nameSuffix: $ref: '#/components/schemas/NameSuffix' title: $ref: '#/components/schemas/UserTitle' password: $ref: '#/components/schemas/TemporaryPassword' licType: $ref: '#/components/schemas/LicenseType' profileId: description: 'Updates the profile associated with the user. Note: changing the profile ID updates the association only — it does not re-apply profile defaults to the user. ' $ref: '#/components/schemas/ProfileId' folderId: anyOf: - $ref: '#/components/schemas/FolderId' - type: 'null' description: Move user to a folder, or send null to remove from current folder. authProvider: $ref: '#/components/schemas/AuthProvider' scimExternalId: $ref: '#/components/schemas/ScimExternalId' mobile: anyOf: - $ref: '#/components/schemas/MobilePhoneNumber' - type: 'null' description: Send null or empty string to clear. fwNumber: $ref: '#/components/schemas/FwNumber' extension: anyOf: - $ref: '#/components/schemas/Extension' - type: 'null' description: Send null to clear. callerID: $ref: '#/components/schemas/CallerID' defaultOutboundCallerId: $ref: '#/components/schemas/DefaultOutboundCallerId' emergencyOutboundCallerId: type: string minLength: 10 maxLength: 20 description: Emergency outbound caller ID number. locationId: anyOf: - $ref: '#/components/schemas/LocationId' - type: 'null' description: 'Send null to clear. When setting a location, `email`, `firstName`, and `lastName` must also be provided. ' billingLocationId: $ref: '#/components/schemas/BillingLocationId' crmConfigId: $ref: '#/components/schemas/CrmConfigId' appTheme: $ref: '#/components/schemas/AppTheme' consoleTheme: $ref: '#/components/schemas/ConsoleTheme' timeZone: $ref: '#/components/schemas/TimeZone' interactionViewsType: $ref: '#/components/schemas/InteractionViewsType' modifyInteractionViews: $ref: '#/components/schemas/ModifyInteractionViews' commTypeChangeDefaultValue: anyOf: - $ref: '#/components/schemas/CommTypeChangeDefaultValue' - type: 'null' description: Send null to clear. attributes: description: 'Merged with the user''s existing attributes. Specific nested keys (`queue`, `time`, `webRTC`, `recording`, `signatures`, `sessionStats`) are deep-merged; all other keys are replaced. Omit to leave unchanged. ' $ref: '#/components/schemas/Attributes' permissions: description: 'Merged with the user''s existing permissions per section (`app`, `console`). Keys within each section are replaced with the provided values; keys not included are preserved. Omit to leave unchanged. ' $ref: '#/components/schemas/Permissions' spaces: $ref: '#/components/schemas/Spaces' tags: description: 'Replaces the user''s entire tag list with the provided values. Send an empty array to remove all tags. Omit to leave unchanged. ' $ref: '#/components/schemas/TagsList' groups: description: 'Replaces the user''s entire group membership with the provided group IDs. Send an empty array to remove all group memberships. Omit to leave unchanged. ' $ref: '#/components/schemas/Groups' groupId: $ref: '#/components/schemas/GroupId' queues: description: 'Only the sub-properties included in the request are updated; omitted sub-properties are left unchanged. For example, sending only `access` replaces the access list but leaves `autoLogin` and `proficiency` as-is. The user''s personal queue is always preserved in `access` and `autoLogin`. ' $ref: '#/components/schemas/UserQueues' definedInteractionViews: description: 'Replaces the user''s entire set of defined interaction views. Omit to leave unchanged. ' $ref: '#/components/schemas/DefinedInteractionViews' isEliteVoiceEnabled: $ref: '#/components/schemas/IsEliteVoiceEnabled' eliteSbcGroupId: anyOf: - $ref: '#/components/schemas/EliteSbcGroupId' - type: 'null' description: Send null to clear. eliteAgentId: anyOf: - $ref: '#/components/schemas/EliteAgentId' - type: 'null' description: Send null to clear. eliteAgentIdPassword: $ref: '#/components/schemas/EliteAgentIdPassword' eliteCommunicationProfilePassword: $ref: '#/components/schemas/EliteCommunicationProfilePassword' eliteCommunicationProfilePasswordHash: $ref: '#/components/schemas/EliteCommunicationProfilePasswordHash' eliteSipAddress: anyOf: - $ref: '#/components/schemas/EliteSipAddress' - type: 'null' description: Send null to clear. eliteExtension: anyOf: - $ref: '#/components/schemas/EliteExtension' - type: 'null' description: Send null to clear. eliteExtensionPassword: $ref: '#/components/schemas/EliteExtensionPassword' eliteVoicemailPassword: type: string description: Elite Voice voicemail password. eliteSipType: $ref: '#/components/schemas/EliteSipType' eliteCmConfigurationId: anyOf: - $ref: '#/components/schemas/EliteCmConfigurationId' - type: 'null' description: Send null or empty string to clear. sipTrunkId: type: string pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ minLength: 36 maxLength: 36 description: SIP trunk ID to associate with the user. isVoiceEnabled: $ref: '#/components/schemas/IsVoiceEnabled' isDigitalEnabled: $ref: '#/components/schemas/IsDigitalEnabled' previewOutbound: $ref: '#/components/schemas/PreviewOutbound' directoryAble: $ref: '#/components/schemas/DirectoryAble' rejectInteractions: $ref: '#/components/schemas/RejectInteractions' AIDable: description: 'Manually set the AIDable flag. Note: this value may be overridden by license enforcement rules when the license type changes. ' $ref: '#/components/schemas/AIDableField' sendLogsToEdify: type: boolean description: Whether the user should send logs to the platform. reportsTo: anyOf: - $ref: '#/components/schemas/ReportsTo' - type: 'null' description: Send null or empty string to clear. dialPlanProfileId: anyOf: - $ref: '#/components/schemas/DialPlanProfileId' - type: 'null' description: Send null to clear. enableWebHID: $ref: '#/components/schemas/EnableWebHID' enableErrorTones: $ref: '#/components/schemas/EnableErrorTones' phoneSpaces: $ref: '#/components/schemas/PhoneSpaces' messagingSpaces: $ref: '#/components/schemas/MessagingSpaces' emailSpaces: $ref: '#/components/schemas/EmailSpaces' taskSpaces: $ref: '#/components/schemas/TaskSpaces' videoSpaces: $ref: '#/components/schemas/VideoSpaces' ucPhoneSpaces: anyOf: - $ref: '#/components/schemas/UcPhoneSpaces' - type: 'null' description: Send null to clear (revert to default). useUCPhoneSpaceOnCCCall: anyOf: - $ref: '#/components/schemas/UseUCPhoneSpaceOnCCCall' - type: 'null' description: Send null to clear (revert to default). useCCPhoneSpaceOnUCCall: anyOf: - $ref: '#/components/schemas/UseCCPhoneSpaceOnUCCall' - type: 'null' description: Send null to clear (revert to default). allowInternalCalls: anyOf: - $ref: '#/components/schemas/AllowInternalCalls' - type: 'null' description: Send null to clear (revert to default). allowAgentEditAutoAnswer: anyOf: - $ref: '#/components/schemas/AllowAgentEditAutoAnswer' - type: 'null' description: Send null to clear (revert to default). allowAgentEditWebHIDHeadsetControl: anyOf: - $ref: '#/components/schemas/AllowAgentEditWebHIDHeadsetControl' - type: 'null' description: Send null to clear (revert to default). voicemail: type: object additionalProperties: true description: Voicemail settings. infinityElements: type: array items: type: string description: 'Replaces the user''s entire set of Infinity Elements. Omit to leave unchanged. ' externalUCProviderConnections: type: array items: type: string pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ minLength: 36 maxLength: 36 description: 'Replaces the user''s entire set of external UC provider connections. Omit to leave unchanged. IDs must belong to the same account. ' calendarEventProvider: type: string maxLength: 64 description: Calendar event provider identifier. calendarEventStatusMap: type: object additionalProperties: true description: Mapping of calendar event statuses. logConfiguration: anyOf: - $ref: '#/components/schemas/LogConfiguration' - type: 'null' description: Send null to clear. CreateUserRequest: type: object description: Request body for creating a new user required: - email - firstName - lastName properties: email: $ref: '#/components/schemas/Email' firstName: $ref: '#/components/schemas/FirstName' lastName: $ref: '#/components/schemas/LastName' publicAlias: $ref: '#/components/schemas/PublicAlias' namePrefix: $ref: '#/components/schemas/NamePrefix' nameSuffix: $ref: '#/components/schemas/NameSuffix' title: $ref: '#/components/schemas/UserTitle' password: $ref: '#/components/schemas/TemporaryPassword' licType: $ref: '#/components/schemas/LicenseType' profileId: $ref: '#/components/schemas/ProfileId' folderId: $ref: '#/components/schemas/FolderId' authProvider: $ref: '#/components/schemas/AuthProvider' scimExternalId: $ref: '#/components/schemas/ScimExternalId' mobile: $ref: '#/components/schemas/MobilePhoneNumber' fwNumber: $ref: '#/components/schemas/FwNumber' extension: $ref: '#/components/schemas/Extension' callerID: $ref: '#/components/schemas/CallerID' defaultOutboundCallerId: $ref: '#/components/schemas/DefaultOutboundCallerId' locationId: $ref: '#/components/schemas/LocationId' billingLocationId: $ref: '#/components/schemas/BillingLocationId' crmConfigId: $ref: '#/components/schemas/CrmConfigId' appTheme: $ref: '#/components/schemas/AppTheme' consoleTheme: $ref: '#/components/schemas/ConsoleTheme' timeZone: $ref: '#/components/schemas/TimeZone' interactionViewsType: $ref: '#/components/schemas/InteractionViewsType' modifyInteractionViews: $ref: '#/components/schemas/ModifyInteractionViews' commTypeChangeDefaultValue: $ref: '#/components/schemas/CommTypeChangeDefaultValue' attributes: $ref: '#/components/schemas/Attributes' permissions: $ref: '#/components/schemas/Permissions' spaces: $ref: '#/components/schemas/Spaces' tags: $ref: '#/components/schemas/TagsList' groups: $ref: '#/components/schemas/Groups' groupId: $ref: '#/components/schemas/GroupId' queues: $ref: '#/components/schemas/UserQueues' definedInteractionViews: $ref: '#/components/schemas/DefinedInteractionViews' isEliteVoiceEnabled: $ref: '#/components/schemas/IsEliteVoiceEnabled' eliteSbcGroupId: $ref: '#/components/schemas/EliteSbcGroupId' eliteAgentId: $ref: '#/components/schemas/EliteAgentId' eliteAgentIdPassword: $ref: '#/components/schemas/EliteAgentIdPassword' eliteCommunicationProfilePassword: $ref: '#/components/schemas/EliteCommunicationProfilePassword' eliteCommunicationProfilePasswordHash: $ref: '#/components/schemas/EliteCommunicationProfilePasswordHash' eliteSipAddress: $ref: '#/components/schemas/EliteSipAddress' eliteExtension: $ref: '#/components/schemas/EliteExtension' eliteExtensionPassword: $ref: '#/components/schemas/EliteExtensionPassword' eliteSipType: $ref: '#/components/schemas/EliteSipType' eliteCmConfigurationId: $ref: '#/components/schemas/EliteCmConfigurationId' isVoiceEnabled: $ref: '#/components/schemas/IsVoiceEnabled' isDigitalEnabled: $ref: '#/components/schemas/IsDigitalEnabled' previewOutbound: $ref: '#/components/schemas/PreviewOutbound' directoryAble: $ref: '#/components/schemas/DirectoryAble' rejectInteractions: $ref: '#/components/schemas/RejectInteractions' AIDable: $ref: '#/components/schemas/AIDableField' reportsTo: $ref: '#/components/schemas/ReportsTo' dialPlanProfileId: $ref: '#/components/schemas/DialPlanProfileId' enableWebHID: $ref: '#/components/schemas/EnableWebHID' enableErrorTones: $ref: '#/components/schemas/EnableErrorTones' phoneSpaces: $ref: '#/components/schemas/PhoneSpaces' ucPhoneSpaces: $ref: '#/components/schemas/UcPhoneSpaces' useUCPhoneSpaceOnCCCall: $ref: '#/components/schemas/UseUCPhoneSpaceOnCCCall' useCCPhoneSpaceOnUCCall: $ref: '#/components/schemas/UseCCPhoneSpaceOnUCCall' allowInternalCalls: $ref: '#/components/schemas/AllowInternalCalls' allowAgentEditAutoAnswer: $ref: '#/components/schemas/AllowAgentEditAutoAnswer' allowAgentEditWebHIDHeadsetControl: $ref: '#/components/schemas/AllowAgentEditWebHIDHeadsetControl' externalUCProviderConnections: type: array items: type: string pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ minLength: 36 maxLength: 36 description: External UC provider connection IDs to associate with the user. eliteVoicemailPassword: type: string description: Elite Voice voicemail password. logConfiguration: $ref: '#/components/schemas/LogConfiguration' UserPageResources: type: object required: - users properties: users: type: array items: $ref: '#/components/schemas/UserListItem' folders: type: array description: Folder hierarchy. Only present when folders=true query parameter is provided. items: type: object additionalProperties: true breadcrumbs: type: array description: Breadcrumb trail. Only present when folders=true query parameter is provided. items: type: object additionalProperties: true BillingLocationId: type: string AllowInternalCalls: type: boolean description: Whether the user or profile can make internal calls QueueRouteTo: description: Queue-level route-to setting. type: string TemporaryPassword: type: string example: Aghtat2343$ pattern: ^(?=.{8,}$)(?=.*?[a-z])(?=.*?[A-Z])(?=.*?[0-9])(?=.*?\W).*$ maxLength: 255 description: Initial password for the user DialPlanProfileId: type: string pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ minLength: 36 maxLength: 36 description: ID of the dial plan profile to use InteractionViewsType: type: string description: Type of interaction views to display enum: - all - defined - standard default: all example: all NameSuffix: description: The name suffix of a user. type: string enum: - Jr - Sr - I - II - III - IV - V - CLU - CO - CPA - DDS - ESQ - MD - PhD - RN FirstName: description: The first name of a user. type: string minLength: 2 maxLength: 255 pattern: ^[^<>\^@#]*$ example: John UcPhoneSpaces-2: description: Number of UC phone interaction spaces. type: integer minimum: 0 UserDetail: type: object description: Detailed user object returned by the single-user GET endpoint. Extends the list item with optional enriched data controlled by query parameters. allOf: - $ref: '#/components/schemas/UserListItem' properties: queues: description: Queue assignments. When queues=true, returns enriched object with named queues. When false, returns raw queue IDs. type: object additionalProperties: true queueLogins: description: Current queue login sessions. Only present when queueLogins=true. type: array items: type: object additionalProperties: true groups: description: Group memberships. When groups=true, returns array of group objects. When false, field is omitted. type: array items: type: object properties: groupId: type: string name: type: string type: type: string location: description: E911 location details. When location=true, returns location object. When false, field is omitted. type: object additionalProperties: true crmConfigurations: description: CRM configuration details. When crmConfigId=true, returns CRM config. When false, returns raw ID string. oneOf: - type: object additionalProperties: true - type: string - type: 'null' reportsTo: description: Reports-to user details. When reportsTo=true, returns user object. When false, returns raw userId string. oneOf: - type: object properties: userId: type: string firstName: type: string lastName: type: string email: type: string - type: string - type: 'null' externalUCProviderConnections: description: External UC provider connections. Only present when externalUCProviderConnections=true. type: array items: type: object additionalProperties: true personalQueueId: type: string description: The user's personal queue ID infinityElements: type: array items: type: string fwNumber: anyOf: - $ref: '#/components/schemas/FwNumber' - type: 'null' defaultOutboundCallerId: anyOf: - $ref: '#/components/schemas/DefaultOutboundCallerId' - type: 'null' billingLocationId: anyOf: - $ref: '#/components/schemas/BillingLocationId' - type: 'null' locationId: anyOf: - $ref: '#/components/schemas/LocationId' - type: 'null' dialPlanProfileId: anyOf: - $ref: '#/components/schemas/DialPlanProfileId' - type: 'null' eliteSbcGroupId: anyOf: - $ref: '#/components/schemas/EliteSbcGroupId' - type: 'null' eliteAgentId: anyOf: - $ref: '#/components/schemas/EliteAgentId' - type: 'null' eliteSipAddress: anyOf: - $ref: '#/components/schemas/EliteSipAddress' - type: 'null' eliteExtension: anyOf: - $ref: '#/components/schemas/EliteExtension' - type: 'null' eliteSipType: anyOf: - $ref: '#/components/schemas/EliteSipType' - type: 'null' eliteCmConfigurationId: anyOf: - $ref: '#/components/schemas/EliteCmConfigurationId' - type: 'null' commTypeChangeDefaultValue: anyOf: - $ref: '#/components/schemas/CommTypeChangeDefaultValue' - type: 'null' isEliteVoiceEnabled: $ref: '#/components/schemas/IsEliteVoiceEnabled' phoneSpaces: $ref: '#/components/schemas/PhoneSpaces' emailSpaces: $ref: '#/components/schemas/EmailSpaces' taskSpaces: $ref: '#/components/schemas/TaskSpaces' messagingSpaces: $ref: '#/components/schemas/MessagingSpaces' videoSpaces: $ref: '#/components/schemas/VideoSpaces' enableWebHID: $ref: '#/components/schemas/EnableWebHID' allowInternalCalls: $ref: '#/components/schemas/AllowInternalCalls' logConfiguration: anyOf: - $ref: '#/components/schemas/LogConfiguration' - type: 'null' routeTo: anyOf: - $ref: '#/components/schemas/RouteTo' - type: 'null' userRouteTo: anyOf: - $ref: '#/components/schemas/UserRouteTo' - type: 'null' queueRouteTo: anyOf: - $ref: '#/components/schemas/QueueRouteTo' - type: 'null' video: type: - string - 'null' voice: type: - string - 'null' voicemail: anyOf: - $ref: '#/components/schemas/Voicemail' - type: 'null' channels: type: - string - 'null' aidStatusTypeOverride: $ref: '#/components/schemas/AidStatusTypeOverride' sipTrunkId: anyOf: - $ref: '#/components/schemas/SipTrunkId' - type: 'null' sipTranslation: anyOf: - $ref: '#/components/schemas/SipTranslation' - type: 'null' tabs: $ref: '#/components/schemas/Tabs' defaultTab: anyOf: - $ref: '#/components/schemas/DefaultTab' - type: 'null' ucPhoneSpaces: $ref: '#/components/schemas/UcPhoneSpaces-2' e911Recommendations: $ref: '#/components/schemas/E911Recommendations' hasEliteAgentIdPassword: $ref: '#/components/schemas/HasEliteAgentIdPassword' hasEliteCommunicationProfilePassword: $ref: '#/components/schemas/HasEliteCommunicationProfilePassword' hasEliteExtensionPassword: $ref: '#/components/schemas/HasEliteExtensionPassword' isEliteAutoSyncEnabled: $ref: '#/components/schemas/IsEliteAutoSyncEnabled' useUCPhoneSpaceOnCCCall: $ref: '#/components/schemas/UseUCPhoneSpaceOnCCCall-2' useCCPhoneSpaceOnUCCall: $ref: '#/components/schemas/UseCCPhoneSpaceOnUCCall-2' sendLogsToEdify: $ref: '#/components/schemas/SendLogsToEdify' uc3Endpoint: anyOf: - $ref: '#/components/schemas/Uc3Endpoint' - type: 'null' userAID: $ref: '#/components/schemas/UserAID' RouteTo: description: Route-to configuration for the user. type: string ModifyInteractionViews: type: boolean description: Can modify interaction views example: true VideoSpaces: type: integer minimum: 0 EliteCommunicationProfilePasswordHash: description: Hash of communication profile password. type: string minLength: 32 maxLength: 32 pattern: ^[0-9a-f]{32}$ EliteCommunicationProfilePassword: description: The password for the communication profile on Aura. type: string PersonalQueueId: description: The user's personal queue ID. allOf: - $ref: '#/components/schemas/QueueId' Voicemail: description: Voicemail configuration object. type: object additionalProperties: true EliteCmConfigurationId: description: The ID of the Elite CM Configuration associated with this user type: string pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ minLength: 36 maxLength: 36 NamePrefix: description: The name prefix of a user. type: string EliteAgentId: description: The hybrid agent's ID on Aura. type: string minLength: 1 UseUCPhoneSpaceOnCCCall-2: description: Use UC phone space for CC calls. type: boolean HasEliteCommunicationProfilePassword: description: Whether the user has an Elite communication profile password set. type: boolean EmailSpaces: type: integer minimum: 0 EliteExtensionPassword: type: string GroupId: description: Unique identifier for a group. type: string pattern: ^007[0-9a-f]{23}$ example: 007a1b2c3d4e5f67890abcdef12 UserRouteTo: description: User-level route-to setting (e.g., 'endpoints'). type: string Violation: type: object properties: field: description: 'The name of the field in the request that caused the violation. This can be the name of a path parameter, query parameter, or a field within the request body. ' type: string readOnly: true example: jobName message: description: 'A human-readable explanation specific to this occurrence of the violation. ' type: string readOnly: true example: must match "^[a-zA-Z]{6}$" code: description: 'The violation code generated by the server for this occurrence of the violation. Use this code when implementing any error handling logic instead of the message, as the message can change. ' type: integer format: int32 readOnly: true example: 20006 required: - field - message - code example: - field: emailAddress message: must not be null code: 20002 Spaces: type: object description: Space configuration for a user or profile. properties: task: type: array items: type: string email: type: array items: type: string phone: type: array items: type: string video: type: array items: type: string messaging: type: array items: type: string MobilePhoneNumber: type: string description: Mobile phone number - accepts E.164 format (+[country code][number]) or plain digits. Length 5-15 characters/digits. pattern: ^(\+[1-9]\d{3,13}|\d{5,15})$ minLength: 5 maxLength: 15 examples: - 16479308804 - 6479308804 - 1234 - 12345 CreatedUser: type: object description: Response body for a new user having been created properties: status: type: string example: success desc: type: string description: Human-readable description of the result. example: new user created data: $ref: '#/components/schemas/CreatedUserData' apiRequestKey: $ref: '#/components/schemas/ApiRequestKey' SipTrunkId: description: SIP trunk ID. type: string IsEliteAutoSyncEnabled: description: Whether Elite auto-sync is enabled for this user. type: boolean Extension: description: The extension of an agent user. type: string example: '1001' UseUCPhoneSpaceOnCCCall: type: boolean description: 'When true, use UC (personal queue) phone space for contact center/general queue calls. ' CallerID: type: string minLength: 10 Problem_2: type: object description: 'Problem Detail is a way to carry machine-readable details of errors in an HTTP response to avoid the need to define new error response formats for HTTP APIs RFC 7807 ' properties: type: description: 'An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type (e.g., using HTML). ' type: string format: uri readOnly: true example: https://developers.avayacloud.com/avaya-infinity/docs/user-management#error-reference title: description: 'A short, summary of the problem type. Written in English and readable for engineers (usually not suited for non technical stakeholders and not localized). ' type: string readOnly: true example: Service Unavailable status: description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' type: integer format: int32 minimum: 300 exclusiveMaximum: 600 readOnly: true example: 503 detail: description: 'A human-readable explanation specific to this occurrence of the problem. ' type: string readOnly: true example: Connection to database timed out instance: description: 'An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced. ' type: string format: uri readOnly: true violations: description: 'A list of violations that occurred as a result of invalid data provided as part of a request. ' type: array items: $ref: '#/components/schemas/Violation' readOnly: true UiTheme: type: string enum: - light - dark example: light LicenseType: type: string description: User license type that determines available features and permissions enum: - nonAgent - voiceOnlyAgent - digitalOnlyAgent - omniChannelAgent - omniChannelAgentEnhanced - hybridVoiceAgent example: hybridVoiceAgent UserId: description: Unique identifier for a user. type: string pattern: ^002[0-9a-f]{23}$ example: 002507f1e1c8e3e9a8b7c5d4e3f2 ProfileId: type: string description: The unique identifier of a profile. format: uuid example: 16a7490f-86a6-4a14-8ce2-11682230adb6 EliteAgentIdPassword: description: The password for the hybrid agent on Aura. type: string EliteSipType: type: string enum: - UDP - TCP - TLS RejectInteractions: type: boolean EliteExtension: description: The hybrid agent's extension on Aura. type: string minLength: 1 CreatedUserData: type: object properties: userDetails: type: object properties: userId: $ref: '#/components/schemas/UserId' firstName: $ref: '#/components/schemas/FirstName' lastName: $ref: '#/components/schemas/LastName' publicAlias: $ref: '#/components/schemas/PublicAlias' fullName: $ref: '#/components/schemas/FullName' extension: $ref: '#/components/schemas/Extension' email: $ref: '#/components/schemas/Email' tempPass: $ref: '#/components/schemas/TemporaryPassword' usersQueueId: type: string Uc3Endpoint: description: UC3 endpoint session information. type: object properties: id: type: string sessionToken: type: string sessionId: type: string AidStatusTypeOverride: description: Whether the user has an AID status type override. type: boolean CommTypeChangeDefaultValue: type: string description: Default value for communication type changes enum: - callback - closeResolved - closeUnresolved example: callback E911Recommendations: description: E911 recommendation setting. type: string MessagingSpaces: type: integer minimum: 0 LocationId: type: string description: 'Optional location ID to associate with the user or profile. Must be an existing location ID. **Note:** Location IDs are system-generated 26-character identifiers with prefix "022". ' maxLength: 26 minLength: 26 pattern: ^022[0-9a-f]{23}$ example: 022d01091776cc88fe6866b7ce PreviewOutbound: type: boolean UserQueues: description: Queues configuration for a user or profile. type: object properties: access: type: array items: $ref: '#/components/schemas/QueueId' performance: type: array items: $ref: '#/components/schemas/QueueId' autoLogin: type: array items: $ref: '#/components/schemas/QueueId' proficiency: type: array items: $ref: '#/components/schemas/QueueId' logins: type: array items: $ref: '#/components/schemas/QueueId' defaultOutboundQueue: anyOf: - $ref: '#/components/schemas/QueueId' - type: 'null' outboundQueueId: anyOf: - $ref: '#/components/schemas/QueueId' - type: 'null' HasEliteAgentIdPassword: description: Whether the user has an Elite agent ID password set. type: boolean UseCCPhoneSpaceOnUCCall: type: boolean description: 'When true, use contact center (general queue) phone space for UC/personal queue calls. ' UseCCPhoneSpaceOnUCCall-2: description: Use CC phone space for UC calls. type: boolean Pagination_2: description: Pagination metadata type: object required: - pageNumber - pageSize - total properties: pageNumber: description: The current page number type: integer minimum: 1 readOnly: true example: 1 pageSize: description: The maximum number of items per page type: integer minimum: 1 readOnly: true example: 10 total: description: The total number of items type: integer minimum: 0 readOnly: true example: 2 AppTheme: allOf: - $ref: '#/components/schemas/UiTheme' description: Application theme preference DefaultTab: description: The user's default tab. type: string EnableWebHID: type: boolean description: Whether WebHID is enabled for the user responses: ErrorConstraintViolation: description: Constraint Violation content: application/problem+json: schema: $ref: '#/components/schemas/Problem' examples: default: $ref: '#/components/examples/ErrorConstraintViolation' UserConflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/Problem' examples: loginId: $ref: '#/components/examples/ErrorUserLoginIdExists' emailId: $ref: '#/components/examples/ErrorUserEmailIdExists' Unauthorized: description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Problem' examples: default: $ref: '#/components/examples/ErrorUnauthorized' InternalServer: description: Request processing failed content: application/problem+json: schema: $ref: '#/components/schemas/Problem' examples: default: $ref: '#/components/examples/ErrorInternalServerError' NotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/Problem' examples: default: $ref: '#/components/examples/ErrorNotFound' Forbidden: description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem' examples: default: $ref: '#/components/examples/ErrorForbidden' InternalServerError: description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' example: type: https://developers.avayacloud.com/errors/internal-error title: Internal Server Error status: 500 detail: An unexpected error occurred while processing your request requestId: req_xyz789 timestamp: '2025-12-08T10:30:05Z' UnprocessableEntity: description: Validation Failed content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' examples: default: $ref: '#/components/examples/ErrorUnprocessableEntity' Forbidden_2: description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' example: type: https://developers.avayacloud.com/errors/forbidden title: Forbidden status: 403 detail: 'Missing required scope: ''workflows:execute''. Your token has: ''workflows:read''' requestId: req_xyz789 timestamp: '2025-12-08T10:30:05Z' UserCanNotBeDisabled: description: The user can not be disabled due to being logged in or having active interactions. content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' UserConflict_2: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' examples: email: $ref: '#/components/examples/ErrorUserEmailExists' Unauthorized_2: description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' example: type: https://developers.avayacloud.com/errors/unauthorized title: Unauthorized status: 401 detail: Bearer token expired at 2025-12-08T10:15:00Z. Request a new token. requestId: req_xyz789 timestamp: '2025-12-08T10:30:05Z' UserCanNotBeDeleted: description: The user must be disabled before it can be deleted. content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' BadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' example: type: https://developers.avayacloud.com/errors/constraint-violation title: Constraint Violation status: 400 detail: Request contains invalid or missing fields violations: - field: accountId message: must match "^[a-zA-Z]{6}$" code: 20006 GetUsersResponse: description: List of users content: application/json: schema: $ref: '#/components/schemas/UserPage_2' CreateUserResponse: description: Success response for creating a user. content: application/json: schema: $ref: '#/components/schemas/CreatedUser' NotFound_2: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/Problem_2' example: type: https://developers.avayacloud.com/errors/resource-not-found title: Resource Not Found status: 404 detail: workflowId 'wf_123abc' does not exist requestId: req_xyz789 timestamp: '2025-12-08T10:30:05Z' parameters: accountId: name: accountId description: The unique 6 character internal id that represents the customer account. required: true in: path schema: type: string minLength: 6 maxLength: 6 pattern: ^[a-zA-Z]{6}$ example: ABCDEF userId: name: userId in: path description: The unique 36 character internal id (uuid) that represents the user. required: true schema: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ addressId: name: addressId in: path description: The unique 36 character internal id (uuid) that represents the address. required: true schema: type: string example: c8c2909d-75e9-484a-94c0-b7e8d29771fe minLength: 36 maxLength: 36 pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ pageNumber: name: pageNumber in: query description: The page number of the records to retrieve. Default value is 1. schema: type: integer format: int32 default: 1 minimum: 1 example: 2 userIdOrEmail: name: userIdOrEmail in: path description: 'Either the user ID (26-character internal ID starting with ''002''), email address, or the special value "me" to retrieve the current authenticated user. ' required: true schema: oneOf: - $ref: '#/components/schemas/UserId' - $ref: '#/components/schemas/Email' - type: string enum: - me description: Current authenticated user userId_2: name: userId in: path description: The unique internal ID (UUID) of a user. required: true schema: $ref: '#/components/schemas/UserId' forceDisable: name: forceDisable in: query description: 'Force a user to be disabled even while still active. In an update uesr request, this parameter has no effect if the request payload does not include setting the `status` to `disabled`. ' required: false schema: type: boolean default: false sortBy: name: sortBy in: query description: 'Field to sort users by. Note that `lastUpdated` is initialized to `createdOn` when the user is created, so users that have never been modified will have matching values for both fields. ' required: false schema: type: string enum: - CREATED_ON - LAST_UPDATED - FIRST_NAME - LAST_NAME example: CREATED_ON sort: name: sort in: query description: Sort order (ascending or descending) required: false schema: type: string enum: - ASC - DESC default: ASC pageNumber_2: name: pageNumber in: query description: The page number of the records to retrieve. required: false schema: type: integer format: int32 default: 1 minimum: 1 pageSize: name: pageSize in: query description: The max number of records to retrieve per page. required: false schema: type: integer format: int32 default: 10 minimum: 1 maximum: 50 securitySchemes: BearerAuth: type: http scheme: bearer description: This API uses Bearer Token Authorization Flow bearerFormat: JWT AppKey: type: apiKey in: header name: appkey description: This API needs an appKey as header x-refined-from: - avaya-axp-admin-user-openapi-original.json - avaya-infinity-user-management-openapi-original.json x-explorer-enabled: false x-samples-languages: - curl - node - java - javascript - python - go