Dixa

Customer service platform

docs.dixa.io ↗
Version
v1
OpenAPI
3.0.3
Endpoints
84
Schemas
299
87
Quality
Updated
3 days ago
Customer support customer-support messaging
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://dev.dixa.io

Endpoints

Clear filters

Agents 2 endpoints

PATCH /v1/agents

Bulk patch agents/admins.

operationId: Agents_bulkPatch

Request Body

List of agent/admin patch actions

application/json
schema AgentsBulkPatchRequest
array of object
Property Type Required
id string required
lastName string optional
avatarUrl string optional
firstName string optional
displayName string optional
middleNames array optional
phoneNumber string optional
additionalEmails array optional
additionalPhoneNumbers array optional

Responses

200

The list of patch action outcomes

400

Invalid value extracted from request context, Invalid value for: body

500

Internal failure during request processing

PATCH /v1/agents
PATCH /v1/agents/{agentId}

Patch an agent/admin.

operationId: Agents_updateAdmin

Parameters

Name In Required Type Description
agentId path required string

The agent/admin id

Request Body

required

The agent/admin patch

application/json
schema PatchAgentInput
Property Type Required
lastName string optional
avatarUrl string optional
firstName string optional
displayName string optional
middleNames array optional
phoneNumber string optional
additionalEmails array optional
additionalPhoneNumbers array optional

Responses

200

The patched agent/admin

400

Invalid value for: path parameter agentId, Invalid value extracted from request context, Invalid value for: body, Validation failure during update

404

An entity in this request could not be found

500

Internal failure during request processing

PATCH /v1/agents/{agentId}

Conversations 3 endpoints

PATCH /v1/conversations/{conversationId}/anonymize

Request the anonymization of a conversation.

operationId: Conversations_anonymizeConversation

Parameters

Name In Required Type Description
conversationId path required integer

the id of the conversation to anonymize

force query optional boolean

Whether to force close the conversation if it is found in a non closed state.

Responses

202

The conversation’s anonymization request status

400

Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: query parameter force

404
409
500
PATCH /v1/conversations/{conversationId}/anonymize
PATCH /v1/conversations/{conversationId}/messages/{messageId}/anonymize

Request the anonymization of a single message in a conversation.

operationId: Conversations_anonymizeMessage

Parameters

Name In Required Type Description
conversationId path required integer

the id of the conversation in which the message belongs

messageId path required string

the id of the message to anonymize

Responses

202

The message’s anonymization request status

400

Invalid value for: path parameter conversationId, Invalid value for: path parameter messageId, Invalid value extracted from request context

404
409
500
PATCH /v1/conversations/{conversationId}/messages/{messageId}/anonymize
PATCH /v1/conversations/{conversationId}/custom-attributes

Patch custom attributes of a conversation

operationId: Conversations_updateCustomAttributes

Parameters

Name In Required Type Description
conversationId path required integer

Request Body

required

The custom attributes of an conversation to be patched. This should map the custom attribute id to the desired attribute value. Format: Map[UUID, Option[AttributeValue].

application/json
schema Map_UUID_Option_AttributeValue

Responses

200

The patched conversation attributes

400

Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, Invalid input for patching

401

The user who issued the access token used in the request is not authorized to perform the operation

404

An entity in this request could not be found

PATCH /v1/conversations/{conversationId}/custom-attributes

Endusers 4 endpoints

PATCH /v1/endusers

Bulk patch end users.

operationId: EndUsers_bulkPatch

Request Body

required

List of end user patch actions

application/json
schema BulkPatchEndUsersInput
Property Type Required
data array optional
id string required
email string optional
lastName string optional
avatarUrl string optional
firstName string optional
externalId string optional
displayName string optional
middleNames array optional
phoneNumber string optional
additionalEmails array optional
additionalPhoneNumbers array optional

Responses

200

The patched end users

400

Invalid value extracted from request context, Invalid value for: body

500

Internal failure during request processing

PATCH /v1/endusers
PATCH /v1/endusers/{userId}

Patch an end user.

operationId: EndUsers_updateUser

Parameters

Name In Required Type Description
userId path required string

The end user id to be patched

Request Body

required

The end user patch

application/json
schema PatchEndUserInput
Property Type Required
email string optional
lastName string optional
avatarUrl string optional
firstName string optional
externalId string optional
displayName string optional
middleNames array optional
phoneNumber string optional
additionalEmails array optional
additionalPhoneNumbers array optional

Responses

200

The patched end user

400

Invalid value for: path parameter userId, Invalid value extracted from request context, Invalid value for: body, Validation failure during update

404

An entity in this request could not be found

500

Internal failure during request processing

PATCH /v1/endusers/{userId}
PATCH /v1/endusers/{userId}/anonymize

Request the anonymization of an end user.

operationId: EndUsers_anonymizeUser

Parameters

Name In Required Type Description
userId path required string

The id of the end user to anonymize

force query optional boolean

Whether to force close all the conversations initiated by the end user, if any are found in a non closed state.

Responses

202

The end user’s anonymization request status

400
404
409
500
PATCH /v1/endusers/{userId}/anonymize
PATCH /v1/endusers/{userId}/custom-attributes

Patch custom attributes of an end user

operationId: EndUsers_updateCustomAttributes

Parameters

Name In Required Type Description
userId path required string

Request Body

required

The custom attributes of an end user to be patched. This should map the custom attribute id to the desired attribute value. Format: Map[UUID, Option[AttributeValue].

application/json
schema Map_UUID_Option_AttributeValue

Responses

200

The patched end user attributes

400

Invalid value for: path parameter userId, Invalid value extracted from request context, Invalid value for: body, Invalid input for patching

401

The user who issued the access token used in the request is not authorized to perform the operation

404

An entity in this request could not be found

PATCH /v1/endusers/{userId}/custom-attributes

Queues 1 endpoints

PATCH /v1/queues/{queueId}/members

Assign one or more agents/admins to a given queue.

operationId: Queues_assignMembers

Parameters

Name In Required Type Description
queueId path required string

Request Body

required

The list of agents/admins to be added to the queue

application/json
schema BulkQueueEndpointInput
Property Type Required
agentIds array optional

Responses

200

The list of patch action outcomes

400

Invalid value for: path parameter queueId, Invalid value extracted from request context, Invalid value for: body

404

An entity in this request could not be found

500

Internal failure during request processing

PATCH /v1/queues/{queueId}/members

Tags 2 endpoints

PATCH /v1/tags/{tagId}/activate

Activate a tag.

operationId: Tags_activateTag

Parameters

Name In Required Type Description
tagId path required string

The tag id

Responses

204

The tag was successfully activated

400

Invalid value for: path parameter tagId, Invalid value extracted from request context

404

An entity in this request could not be found

500

Internal failure during request processing

PATCH /v1/tags/{tagId}/activate
PATCH /v1/tags/{tagId}/deactivate

Deactivate a tag.

operationId: Tags_deactivateTag

Parameters

Name In Required Type Description
tagId path required string

The tag id

Responses

204

The tag was successfully deactivated

400

Invalid value for: path parameter tagId, Invalid value extracted from request context

404

An entity in this request could not be found

500

Internal failure during request processing

PATCH /v1/tags/{tagId}/deactivate

Teams 1 endpoints

PATCH /v1/teams/{teamId}/agents

Add agents/admins to a team.

operationId: Teams_addMembers

Parameters

Name In Required Type Description
teamId path required string

The team id

Request Body

required

List of agent/admin ids to add to the specified team

application/json
schema AgentsToTeamInput
Property Type Required
agentIds array optional

Responses

200
400

Invalid value for: path parameter teamId, Invalid value extracted from request context, Invalid value for: body

500

Internal failure during request processing

PATCH /v1/teams/{teamId}/agents

Webhooks 1 endpoints

PATCH /v1/webhooks/{webhookSubscriptionId}

Patch a Webhook Subscription.

operationId: Webhooks_updateSubscription

Parameters

Name In Required Type Description
webhookSubscriptionId path required string

Request Body

required

The Webhook Subscription fields to be patched

application/json
schema PatchWebhookSubscriptionInput
Property Type Required
url string optional
name string optional
events array optional
enabled boolean optional
authorization object optional

Responses

200

The patched Webhook Subscription

400

Invalid value for: path parameter webhookSubscriptionId, Invalid value extracted from request context, Invalid value for: body, Validation failure during Webhook Subscription patching

500

Internal Server Error

PATCH /v1/webhooks/{webhookSubscriptionId}

Schemas

object ActivityLogAttribute
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/ConversationAssignedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationAutoReplySentAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationClaimedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationCreatedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationEndUserReplacedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationLanguageUpdatedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationOfferedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationRatedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationRatingOfferedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationRatingScheduledAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationReservedAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationTransferredAttribute"
    },
    {
      "$ref": "#/components/schemas/ConversationUnassignedAttribute"
    },
    {
      "$ref": "#/components/schemas/MessageAddedAttribute"
    },
    {
      "$ref": "#/components/schemas/NoteAddedAttribute"
    },
    {
      "$ref": "#/components/schemas/TagAddedAttribute"
    },
    {
      "$ref": "#/components/schemas/TagRemovedAttribute"
    }
  ]
}
object ActivityLogEntry
{
  "type": "object",
  "required": [
    "id",
    "conversationId",
    "activityTimestamp",
    "activityType",
    "_type"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "_type": {
      "type": "string",
      "description": "values: [ConversationRatingScheduled, ConversationOfferAccepted, ConversationPending, ConversationRatingUnscheduled, ConversationOfferRejected, ConversationEndUserReplaced, NoteAdded, FollowupExpired, ConversationRated, TagAdded, ConversationOfferTimeout, MessageAddedByCustomer, ConversationCreatedByCustomer, ConversationCreatedByAgent, TransferFailed, TransferSuccessful, ConversationOffered, ConversationUnassigned, TagRemoved, TransferInitiated, ConversationClaimed, ConversationReopened, ConversationClosed, ConversationLanguageUpdated, FollowupAdded, ConversationAutoreplySent, ConversationReserved, ConversationAssigned, ConversationRatingOffered, ConversationRatingCancelled, MessageAddedByAgent, FollowupRemoved]"
    },
    "author": {
      "$ref": "#/components/schemas/ActivityLogUser"
    },
    "attributes": {
      "$ref": "#/components/schemas/ActivityLogAttribute"
    },
    "activityType": {
      "$ref": "#/components/schemas/DeprecatedActivityLogType"
    },
    "conversationId": {
      "type": "integer",
      "format": "int32"
    },
    "activityTimestamp": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object ActivityLogUser
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "phoneNumber": {
      "type": "string"
    }
  }
}
object Agent
{
  "type": "object",
  "required": [
    "id",
    "createdAt",
    "displayName",
    "email"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier for the agent"
    },
    "email": {
      "type": "string",
      "description": "The agent's primary email address"
    },
    "roles": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [Agent, SystemAdmin, TeamLead, Admin]"
      },
      "description": "The agent's roles"
    },
    "lastName": {
      "type": "string",
      "description": "The agent's last name"
    },
    "avatarUrl": {
      "type": "string",
      "description": "The url from which to load the agent's avatar"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Time when the agent was created"
    },
    "firstName": {
      "type": "string",
      "description": "The agent's first name"
    },
    "displayName": {
      "type": "string",
      "description": "The agent's display name"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The agent's middle names"
    },
    "phoneNumber": {
      "type": "string",
      "description": "The agent's primary phone number"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional email addresses for the agent"
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional phone numbers for the agent"
    }
  }
}
object AgentOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Agent"
    }
  }
}
object AgentTeamsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Team"
      }
    }
  }
}
array AgentsBulkPatchRequest
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/BulkPatchAgentInput"
  }
}
array AgentsListPresenceResponse
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/UserPresence"
  }
}
object AgentsToTeamInput
{
  "type": "object",
  "properties": {
    "agentIds": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      }
    }
  }
}
array AgentsUpdateBulkRequest
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/BulkUpdateAgentInput"
  }
}
object AggregateMetadata
{
  "type": "object",
  "required": [
    "measure"
  ],
  "properties": {
    "measure": {
      "type": "string",
      "description": "values: [Min, Max, Sum, Count, Percentage, StdDev, Average]"
    },
    "description": {
      "type": "string"
    }
  }
}
object AggregateValue
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/DoubleAggregateValue"
    },
    {
      "$ref": "#/components/schemas/LongAggregateValue"
    }
  ]
}
object AnonymizationRequestStatus
{
  "type": "object",
  "required": [
    "id",
    "entityType",
    "_type",
    "initiatedAt",
    "targetEntityId",
    "requestedBy"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "_type": {
      "type": "string",
      "description": "values: [Conversation, Message, User]"
    },
    "entityType": {
      "$ref": "#/components/schemas/DeprecatedAnonymizationType"
    },
    "initiatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "processedAt": {
      "type": "string",
      "format": "date-time"
    },
    "requestedBy": {
      "type": "string",
      "format": "uuid"
    },
    "targetEntityId": {
      "type": "string"
    }
  }
}
object AnonymizeEntityInput
{
  "type": "object",
  "required": [
    "entityId"
  ],
  "properties": {
    "_type": {
      "type": "string",
      "description": "values: [Conversation, Message, User]"
    },
    "entityId": {
      "type": "string"
    },
    "entityType": {
      "$ref": "#/components/schemas/DeprecatedAnonymizationType"
    },
    "forceAnonymization": {
      "type": "boolean"
    }
  }
}
object AnonymizeEntityOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/AnonymizationRequestStatus"
    }
  }
}
object AnonymizedConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt",
    "anonymizedAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "state": {
      "type": "string",
      "description": "values: [AwaitingPending, Closed, Open, Pending]"
    },
    "channel": {
      "type": "string",
      "description": "values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Twitter, Email, ContactForm, Callback, PstnPhone, Sms, Messenger]"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "anonymizedAt": {
      "type": "string",
      "format": "date-time"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object Assignment
{
  "type": "object",
  "required": [
    "agentId",
    "assignedAt"
  ],
  "properties": {
    "agentId": {
      "type": "string",
      "format": "uuid"
    },
    "assignedAt": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object Attributes
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/CallRecordingAttributes"
    },
    {
      "$ref": "#/components/schemas/ChatAttributes"
    },
    {
      "$ref": "#/components/schemas/ContactFormAttributes"
    },
    {
      "$ref": "#/components/schemas/EmailAttributes"
    },
    {
      "$ref": "#/components/schemas/FacebookMessengerAttributes"
    },
    {
      "$ref": "#/components/schemas/GenericAttributes"
    },
    {
      "$ref": "#/components/schemas/PhoneAttributes"
    },
    {
      "$ref": "#/components/schemas/SmsAttributes"
    },
    {
      "$ref": "#/components/schemas/TwitterAttributes"
    },
    {
      "$ref": "#/components/schemas/WhatsAppAttributes"
    }
  ]
}
object BadRequest
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object BasicAuth
{
  "type": "object",
  "required": [
    "username",
    "password"
  ],
  "properties": {
    "password": {
      "type": "string"
    },
    "username": {
      "type": "string"
    }
  }
}
object BooleanField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "boolean"
    }
  }
}
object BrowserInfo
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "ipAddress": {
      "type": "string"
    },
    "originatingUrl": {
      "type": "string"
    }
  }
}
object BulkActionFailure_BulkError_Agent
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "$ref": "#/components/schemas/BulkError"
    }
  }
}
object BulkActionFailure_BulkError_EndUser
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "$ref": "#/components/schemas/BulkError"
    }
  }
}
object BulkActionFailure_BulkError_UUID
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "$ref": "#/components/schemas/BulkError"
    }
  }
}
object BulkActionFailure_ErrorResponse_InternalNoteData
{
  "type": "object",
  "required": [
    "error"
  ],
  "properties": {
    "error": {
      "$ref": "#/components/schemas/ErrorResponse"
    }
  }
}
object BulkActionOutcome_BulkError_Agent
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BulkActionFailure_BulkError_Agent"
    },
    {
      "$ref": "#/components/schemas/BulkActionSuccess_BulkError_Agent"
    }
  ]
}
object BulkActionOutcome_BulkError_EndUser
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BulkActionFailure_BulkError_EndUser"
    },
    {
      "$ref": "#/components/schemas/BulkActionSuccess_BulkError_EndUser"
    }
  ]
}
object BulkActionOutcome_BulkError_UUID
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BulkActionFailure_BulkError_UUID"
    },
    {
      "$ref": "#/components/schemas/BulkActionSuccess_BulkError_UUID"
    }
  ]
}
object BulkActionOutcome_ErrorResponse_InternalNoteData
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BulkActionFailure_ErrorResponse_InternalNoteData"
    },
    {
      "$ref": "#/components/schemas/BulkActionSuccess_ErrorResponse_InternalNoteData"
    }
  ]
}
object BulkActionSuccess_BulkError_Agent
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Agent"
    }
  }
}
object BulkActionSuccess_BulkError_EndUser
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EndUser"
    }
  }
}
object BulkActionSuccess_BulkError_UUID
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object BulkActionSuccess_ErrorResponse_InternalNoteData
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/InternalNoteData"
    }
  }
}
object BulkCreateInternalNoteInput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CreateInternalNoteInput"
      }
    }
  }
}
object BulkCreateNoteOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_ErrorResponse_InternalNoteData"
      }
    }
  }
}
object BulkError
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/EmptyPatchSet"
    },
    {
      "$ref": "#/components/schemas/ErrorResponse"
    },
    {
      "$ref": "#/components/schemas/Infrastructure"
    },
    {
      "$ref": "#/components/schemas/Integrity"
    },
    {
      "$ref": "#/components/schemas/NotFound1"
    },
    {
      "$ref": "#/components/schemas/Validation"
    }
  ]
}
object BulkPatchAgentInput
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the agent"
    },
    "lastName": {
      "type": "string",
      "description": "The agent's last name"
    },
    "avatarUrl": {
      "type": "string",
      "description": "The url from which to load the agent's avatar"
    },
    "firstName": {
      "type": "string",
      "description": "The agent's first name"
    },
    "displayName": {
      "type": "string",
      "description": "The agent's display name"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The agent's middle names"
    },
    "phoneNumber": {
      "type": "string",
      "description": "The agent's primary phone number"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional email addresses for the agent"
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional phone numbers for the agent"
    }
  }
}
object BulkPatchEndUserInput
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "email": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "avatarUrl": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "externalId": {
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "phoneNumber": {
      "type": "string"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object BulkPatchEndUsersInput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkPatchEndUserInput"
      }
    }
  }
}
object BulkPatchEndUsersOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_BulkError_EndUser"
      }
    }
  }
}
object BulkQueueEndpointInput
{
  "type": "object",
  "properties": {
    "agentIds": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      }
    }
  }
}
object BulkQueueEndpointOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_BulkError_UUID"
      }
    }
  }
}
object BulkUpdateAgentInput
{
  "type": "object",
  "required": [
    "id",
    "displayName"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the agent"
    },
    "lastName": {
      "type": "string",
      "description": "The agent's last name"
    },
    "avatarUrl": {
      "type": "string",
      "description": "The url from which to load the agent's avatar"
    },
    "firstName": {
      "type": "string",
      "description": "The agent's first name"
    },
    "displayName": {
      "type": "string",
      "description": "The agent's display name"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The agent's middle names"
    },
    "phoneNumber": {
      "type": "string",
      "description": "The agent's primary phone number"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional email addresses for the agent"
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional phone numbers for the agent"
    }
  }
}
object BulkUpdateAgentOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_BulkError_Agent"
      }
    }
  }
}
object BulkUpdateEndUserInput
{
  "type": "object",
  "required": [
    "id",
    "displayName"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "email": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "avatarUrl": {
      "type": "string"
    },
    "firstName": {
      "type": "string"
    },
    "externalId": {
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "phoneNumber": {
      "type": "string"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
object BulkUpdateEndUsersInput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkUpdateEndUserInput"
      }
    }
  }
}
object BulkUpdateEndUsersOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_BulkError_EndUser"
      }
    }
  }
}
object CallRecordingAttributes
{
  "type": "object",
  "required": [
    "recording"
  ],
  "properties": {
    "duration": {
      "type": "integer",
      "format": "int32"
    },
    "recording": {
      "type": "string"
    }
  }
}
object Callback
{
  "type": "object",
  "required": [
    "requesterId",
    "direction",
    "contactEndpointId",
    "queueId"
  ],
  "properties": {
    "queueId": {
      "type": "string",
      "format": "uuid"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Outbound]"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "contactEndpointId": {
      "type": "string"
    }
  }
}