Dixa

Customer service platform

docs.dixa.io ↗
Version
v1
OpenAPI
3.0.3
Endpoints
84
Schemas
299
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

Authentication

apiKey

Endpoints

Clear filters

Agents 5 endpoints

GET /v1/agents

Lists all agents/admins in an organization. It is possible to filter by one of the mutually exclusive parameters: email or phone number. In case both are provided, an error is returned.

operationId: Agents_list

Parameters

Name In Required Type Description
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.
email query optional string The agent/admin email filter
phone query optional string The agent/admin phone number filter

Responses

200 The list of agents/admins
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey, Invalid value for: query parameter email, Invalid value for: query parameter phone, Duplicate phone number, Duplicate email address, Invalid filters: Cannot provide both phone number and email address
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/agents
GET /v1/agents/presence

List the presence status for all agents/admins in an organization.

operationId: Agents_listPresence

Responses

200 The list of presence status for all agents/admins
400 Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/agents/presence
GET /v1/agents/{agentId}

Get an agent/admin by id.

operationId: Agents_getById

Parameters

Name In Required Type Description
agentId path required string The agent/admin id

Responses

200 The agent/admin
400 Invalid value for: path parameter agentId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/agents/{agentId}
GET /v1/agents/{agentId}/presence

Get the presence status for an agent/admin.

operationId: Agents_getPresence

Parameters

Name In Required Type Description
agentId path required string The agent/admin id

Responses

200 The agent/admin presence status
400 Invalid value for: path parameter agentId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/agents/{agentId}/presence
GET /v1/agents/{agentId}/teams

List the teams in which the agent/admin is a member.

operationId: Agents_listTeams

Parameters

Name In Required Type Description
agentId path required string The agent/admin id

Responses

200 The list of teams in which the agent/admin is a member
400 Invalid value for: path parameter agentId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/agents/{agentId}/teams

Analytics 5 endpoints

GET /v1/analytics/filter/{filterAttribute}

Get possible values to be used with a given filter attribute. Filter attributes are not metric or record specific, so one filter attribute can be used with multiple metrics/records. When a filter value is not relevant for a specific metric/record, it is simply ignored.

operationId: Analytics_filterValues

Parameters

Name In Required Type Description
filterAttribute path required string
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.

Responses

200 The possible filter values to be used when fetching metrics or records
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey
500 Internal Server Error
GET /v1/analytics/filter/{filterAttribute}
GET /v1/analytics/metrics

This endpoint lists all available metric IDs that can be used to fetch data in Get Metric Data

operationId: Analytics_listMetrics

Parameters

Name In Required Type Description
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.

Responses

200 The catalogue of metrics
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey
500 Internal Server Error
GET /v1/analytics/metrics
GET /v1/analytics/metrics/{metricId}

This endpoint lists all available properties of a metric to use for querying its data

operationId: Analytics_getMetricDescription

Parameters

Name In Required Type Description
metricId path required string

Responses

200 The metric properties
400 Invalid value extracted from request context
500 Internal Server Error
GET /v1/analytics/metrics/{metricId}
GET /v1/analytics/records

This endpoint lists all available record IDs that can be used to fetch data in Get Metric Records Data

operationId: Analytics_listRecords

Parameters

Name In Required Type Description
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.

Responses

200 The catalogue of metric records
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey
500 Internal Server Error
GET /v1/analytics/records
GET /v1/analytics/records/{recordId}

This endpoint lists all available properties of a record to use for querying its data

operationId: Analytics_getRecordProperties

Parameters

Name In Required Type Description
recordId path required string

Responses

200 The metric record properties
400 Invalid value extracted from request context
500 Internal Server Error
GET /v1/analytics/records/{recordId}

Anonymization 1 endpoints

GET /v1/anonymization/request/{requestId}

Retrieve an anonymization request submitted earlier (user or conversation).

operationId: Anonymization_getStatus

Parameters

Name In Required Type Description
requestId path required string

Responses

200 The anonymization request
400 Invalid value for: path parameter requestId, Invalid value extracted from request context
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
500 Internal failure during request processing
GET /v1/anonymization/request/{requestId}

Contact endpoints 2 endpoints

GET /v1/contact-endpoints

List all available contact endpoints in an organization.

operationId: ContactEndpoints_listAll

Parameters

Name In Required Type Description
_type query optional string An optional contact type can be specified to filter the contact endpoints. If not provided, all types are listed. Possible values: [EmailEndpoint, TelephonyEndpoint]

Responses

200 The list of available contact endpoints
400 Invalid value extracted from request context, Invalid value for: query parameter _type
500 Internal failure during request processing
GET /v1/contact-endpoints
GET /v1/contact-endpoints/{contactEndpointId}

Get contact endpoint by id (email or phone number).

operationId: ContactEndpoints_getById

Parameters

Name In Required Type Description
contactEndpointId path required string

Responses

200 The requested contact endpoint
400 Invalid value extracted from request context, The contactEndpointId is neither a valid email nor a valid E.164 phone number
404 An entity in this request could not be found
GET /v1/contact-endpoints/{contactEndpointId}

Conversations 9 endpoints

GET /v1/conversations/activitylog

List all activity logs for an organization.

operationId: Conversations_listOrganizationActivityLog

Parameters

Name In Required Type Description
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.
fromDatetime query optional string Starting date-time filter with ISO 8601 format: yyyy-MM-dd'T'HH:mm:sss'Z'
toDatetime query optional string Ending date-time filter with ISO 8601 format: yyyy-MM-dd'T'HH:mm:sss'Z'

Responses

200 The full list of activity logs for an organization with pagination
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey, Invalid value for: query parameter fromDatetime, Invalid value for: query parameter toDatetime, Validation failure when retrieving data
500 Internal failure during request processing
GET /v1/conversations/activitylog
GET /v1/conversations/flows

List all conversations flows in an organization.

operationId: Conversations_listFlows

Parameters

Name In Required Type Description
channel query optional string An optional ConversationChannel can be specified to filter the flows. If not provided, the default channel is PstnPhone. Possible values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Email, ContactForm, Callback, PstnPhone, Messenger]

Responses

200 The list of conversation flows
400 Invalid value extracted from request context, Invalid value for: query parameter channel
500 Internal failure during request processing
GET /v1/conversations/flows
GET /v1/conversations/{conversationId}

Get a conversation by id.

operationId: Conversations_getById

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 The conversation
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/conversations/{conversationId}
GET /v1/conversations/{conversationId}/activitylog

Get the activity log for a conversation by providing the conversation id.

operationId: Conversations_getActivityLog

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 Activity log entries for a conversation
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/conversations/{conversationId}/activitylog
GET /v1/conversations/{conversationId}/linked

Lists all linked child conversations for the given conversation ID, such as transcripts and side conversations.

operationId: Conversations_listLinked

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 The list of conversations requested by an EndUser
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/conversations/{conversationId}/linked
GET /v1/conversations/{conversationId}/notes

Get all internal notes for a particular conversation by providing the conversation id.

operationId: Conversations_listInternalNotes

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 List of internal notes for a conversation sorted from oldest to newest
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/conversations/{conversationId}/notes
GET /v1/conversations/{conversationId}/messages

Get all messages for a particular conversation by providing the conversation id. Note that messages in `ContactForm` conversations can have attributes of `"_type": "EmailAttributes"` if they are created through a webform, or `"_type": "ContactFormAttributes"` when created through a chat widget.

operationId: Conversations_listMessages

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 List of messages for a conversation sorted from oldest to newest
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
404 An entity in this request could not be found
GET /v1/conversations/{conversationId}/messages
GET /v1/conversations/{conversationId}/rating

Get the ratings for a particular conversation by providing the conversation id.

operationId: Conversations_listRating

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 List of ratings for a conversation
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/conversations/{conversationId}/rating
GET /v1/conversations/{conversationId}/tags

Get the tags for a particular conversation by providing the conversation id.

operationId: Conversations_listTags

Parameters

Name In Required Type Description
conversationId path required integer

Responses

200 List of tags for a conversation
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/conversations/{conversationId}/tags

Custom attributes 1 endpoints

GET /v1/custom-attributes

List all custom attributes in an organization.

operationId: CustomAttributes_listDefinitions

Responses

200 The list of configured custom attributes
400 Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/custom-attributes

End users 3 endpoints

GET /v1/endusers

Lists all end users in an organization. It is possible to filter by one of the mutually exclusive parameters: email or phone number. In case both are provided, an error is returned.

operationId: EndUsers_list

Parameters

Name In Required Type Description
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.
email query optional string Filter by the contact's email
phone query optional string Filter by the contact's phone number
externalId query optional string Filter by the contact's external id

Responses

200 The list of end users
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey, Invalid value for: query parameter email, Invalid value for: query parameter phone, Invalid value for: query parameter externalId, Duplicate phone number, Duplicate email address, Invalid filters: Cannot provide more than one filter
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/endusers
GET /v1/endusers/{userId}

Get an end user by id.

operationId: EndUsers_getUserById

Parameters

Name In Required Type Description
userId path required string The end user id

Responses

200 The end user
400 Invalid value for: path parameter userId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/endusers/{userId}
GET /v1/endusers/{userId}/conversations

Lists conversations requested by an end user. <br/> Note: Custom attributes are not part of the response at this point. If you need to get custom attributes for a conversation use the [GET /conversations/{conversationId}](../Conversations/#tag/Conversations/operation/getConversationsConversationid) endpoint

operationId: EndUsers_listConversations

Parameters

Name In Required Type Description
userId path required string
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.

Responses

200 The list of conversations requested by an EndUser
400 Invalid value for: path parameter userId, Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/endusers/{userId}/conversations

Queues 3 endpoints

GET /v1/queues

List all queues in an organization.

operationId: Queues_listAll

Responses

200 The list of queues in an organization
400 Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/queues
GET /v1/queues/{queueId}

Get a queue by id.

operationId: Queues_getById

Parameters

Name In Required Type Description
queueId path required string

Responses

200 The queue
400 Invalid value for: path parameter queueId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/queues/{queueId}
GET /v1/queues/{queueId}/members

List all agents/admins that are members of a queue by providing the queue id.

operationId: Queues_listMembers

Parameters

Name In Required Type Description
queueId path required string

Responses

200 List of the agents/admins that are members of a queue
400 Invalid value for: path parameter queueId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/queues/{queueId}/members

Tags 2 endpoints

GET /v1/tags

List all tags in an organization.

operationId: Tags_list

Responses

200 The list of tags in an organization
400 Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/tags
GET /v1/tags/{tagId}

Get a tag by id.

operationId: Tags_getById

Parameters

Name In Required Type Description
tagId path required string

Responses

200 The tag
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
GET /v1/tags/{tagId}

Teams 4 endpoints

GET /v1/teams

Lists all teams in an organization.

operationId: Teams_listAll

Responses

200 The list of teams in an organization
400 Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/teams
GET /v1/teams/{teamId}

Get a team by id.

operationId: Teams_getById

Parameters

Name In Required Type Description
teamId path required string The team id

Responses

200 The team
400 Invalid value for: path parameter teamId, Invalid value extracted from request context
404 An entity in this request could not be found
GET /v1/teams/{teamId}
GET /v1/teams/{teamId}/agents

Lists all agents/admins in a team.

operationId: Teams_listMembers

Parameters

Name In Required Type Description
teamId path required string The team id

Responses

200 List of agents/admins in the specified team
400 Invalid value for: path parameter teamId, Invalid value extracted from request context
500 Internal failure during request processing
GET /v1/teams/{teamId}/agents
GET /v1/teams/{teamId}/presence

List the presence status of all agents/admins in a team.

operationId: Teams_listPresenceStatus

Parameters

Name In Required Type Description
teamId path required string The team id
pageLimit query optional integer Maximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
pageKey query optional string Base64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.

Responses

200 List of agents/admins presence status in the specified team
400 Invalid value for: path parameter teamId, Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey
404 An entity in this request could not be found
500 Internal failure during request processing
GET /v1/teams/{teamId}/presence

Webhooks 4 endpoints

GET /v1/webhooks

List of all Webhook Subscriptions in an organization.

operationId: Webhooks_listSubscriptions

Responses

200 The List of Webhook Subscriptions
400 Invalid value extracted from request context
500 Internal Server Error
GET /v1/webhooks
GET /v1/webhooks/{webhookSubscriptionId}

Get a Webhook Subscription by ID.

operationId: Webhooks_getSubscriptionById

Parameters

Name In Required Type Description
webhookSubscriptionId path required string

Responses

200 The Webhook Subscription
400 Invalid value for: path parameter webhookSubscriptionId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal Server Error
GET /v1/webhooks/{webhookSubscriptionId}
GET /v1/webhooks/{webhookSubscriptionId}/delivery-status

Get the latest delivery statuses of a Webhook Subscription.

operationId: Webhooks_getDeliveryStatus

Parameters

Name In Required Type Description
webhookSubscriptionId path required string

Responses

200 The Latest Delivery Statuses of a Webhook Subscription
400 Invalid value for: path parameter webhookSubscriptionId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal Server Error
GET /v1/webhooks/{webhookSubscriptionId}/delivery-status
GET /v1/webhooks/{webhookSubscriptionId}/delivery-status/logs/{event}

Get the latest Webhook Subscription Event logs.

operationId: Webhooks_getDeliveryStatusLogs

Parameters

Name In Required Type Description
webhookSubscriptionId path required string
event path required string

Responses

200 The Webhook Subscription Event Logs
400 Invalid value for: path parameter webhookSubscriptionId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal Server Error
GET /v1/webhooks/{webhookSubscriptionId}/delivery-status/logs/{event}

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"
    }
  }
}
object Chat
{
  "type": "object",
  "required": [
    "requesterId",
    "widgetId",
    "message"
  ],
  "properties": {
    "message": {
      "$ref": "#/components/schemas/CreateMessageInput"
    },
    "language": {
      "type": "string"
    },
    "widgetId": {
      "type": "string",
      "format": "uuid"
    },
    "browserInfo": {
      "$ref": "#/components/schemas/BrowserInfo"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object ChatAttributes
{
  "type": "object",
  "required": [
    "isAutomated"
  ],
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "isAutomated": {
      "type": "boolean"
    }
  }
}
object ChatConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "language": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "browserInfo": {
      "$ref": "#/components/schemas/BrowserInfo"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object ClaimConversationInput
{
  "type": "object",
  "required": [
    "agentId"
  ],
  "properties": {
    "force": {
      "type": "boolean",
      "description": "Set as false to avoid taking over the conversation if it is already assigned to an agent"
    },
    "agentId": {
      "type": "string",
      "format": "uuid",
      "description": "The id of the agent who is claiming the conversation"
    }
  }
}
object CloseConversationInput
{
  "type": "object",
  "properties": {
    "userId": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object Conflict
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object ContactEndpoint
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/EmailEndpoint"
    },
    {
      "$ref": "#/components/schemas/TelephonyEndpoint"
    }
  ]
}
object ContactForm
{
  "type": "object",
  "required": [
    "requesterId",
    "emailIntegrationId",
    "subject",
    "message"
  ],
  "properties": {
    "message": {
      "$ref": "#/components/schemas/CreateMessageInput"
    },
    "subject": {
      "type": "string"
    },
    "language": {
      "type": "string"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "emailIntegrationId": {
      "type": "string"
    }
  }
}
object ContactFormAttributes
{
  "type": "object",
  "required": [
    "isAutoReply"
  ],
  "properties": {
    "cc": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "to": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "bcc": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "from": {
      "$ref": "#/components/schemas/EmailContact"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "isAutoReply": {
      "type": "boolean"
    },
    "emailContent": {
      "$ref": "#/components/schemas/EmailContent"
    },
    "inlineImages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "originalContentUrl": {
      "$ref": "#/components/schemas/File"
    },
    "replyDefaultToEmails": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "deliveryFailureReason": {
      "type": "string"
    }
  }
}
object ContactFormConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt",
    "fromEmail"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "subject": {
      "type": "string"
    },
    "toEmail": {
      "type": "string"
    },
    "language": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "fromEmail": {
      "type": "string"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    },
    "integrationEmail": {
      "type": "string"
    }
  }
}
object Content
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/Html"
    },
    {
      "$ref": "#/components/schemas/Text"
    }
  ]
}
object Conversation
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/AnonymizedConversation"
    },
    {
      "$ref": "#/components/schemas/ChatConversation"
    },
    {
      "$ref": "#/components/schemas/ContactFormConversation"
    },
    {
      "$ref": "#/components/schemas/EmailConversation"
    },
    {
      "$ref": "#/components/schemas/FacebookMessengerConversation"
    },
    {
      "$ref": "#/components/schemas/GenericConversation"
    },
    {
      "$ref": "#/components/schemas/MessengerConversation"
    },
    {
      "$ref": "#/components/schemas/PstnPhoneConversation"
    },
    {
      "$ref": "#/components/schemas/SmsConversation"
    },
    {
      "$ref": "#/components/schemas/TwitterConversation"
    },
    {
      "$ref": "#/components/schemas/WhatsAppConversation"
    }
  ]
}
object ConversationAnonymizationType
{
  "type": "object"
}
object ConversationAssignedActivityType
{
  "type": "object"
}
object ConversationAssignedAttribute
{
  "type": "object",
  "required": [
    "agentId"
  ],
  "properties": {
    "agentId": {
      "type": "string"
    },
    "agentName": {
      "type": "string"
    }
  }
}
object ConversationAutoReplySentAttribute
{
  "type": "object",
  "required": [
    "templateName"
  ],
  "properties": {
    "templateName": {
      "type": "string"
    }
  }
}
object ConversationAutoreplySentActivityType
{
  "type": "object"
}
object ConversationClaimedActivityType
{
  "type": "object"
}
object ConversationClaimedAttribute
{
  "type": "object",
  "properties": {
    "claimedFromType": {
      "type": "string"
    },
    "claimedFromLabel": {
      "type": "string"
    }
  }
}
object ConversationClosedActivityType
{
  "type": "object"
}
object ConversationCreatedAttribute
{
  "type": "object",
  "properties": {
    "subject": {
      "type": "string"
    }
  }
}
object ConversationCreatedByAgentActivityType
{
  "type": "object"
}
object ConversationCreatedByCustomerActivityType
{
  "type": "object"
}
object ConversationEndUserReplacedActivityType
{
  "type": "object"
}
object ConversationEndUserReplacedAttribute
{
  "type": "object",
  "required": [
    "oldUser",
    "newUser"
  ],
  "properties": {
    "newUser": {
      "$ref": "#/components/schemas/ActivityLogUser"
    },
    "oldUser": {
      "$ref": "#/components/schemas/ActivityLogUser"
    }
  }
}
object ConversationFlow
{
  "type": "object",
  "required": [
    "id",
    "name",
    "channel",
    "contactEndpointId"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "channel": {
      "type": "string",
      "description": "values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Twitter, Email, ContactForm, Callback, PstnPhone, Sms, Messenger]"
    },
    "contactEndpointId": {
      "type": "string"
    }
  }
}
object ConversationLanguageUpdatedActivityType
{
  "type": "object"
}
object ConversationLanguageUpdatedAttribute
{
  "type": "object",
  "required": [
    "language"
  ],
  "properties": {
    "language": {
      "type": "string"
    }
  }
}
object ConversationLink
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/EmailForward"
    },
    {
      "$ref": "#/components/schemas/FollowUp"
    },
    {
      "$ref": "#/components/schemas/SideConversation"
    }
  ]
}
object ConversationOfferAcceptedActivityType
{
  "type": "object"
}
object ConversationOfferRejectedActivityType
{
  "type": "object"
}
object ConversationOfferTimeoutActivityType
{
  "type": "object"
}
object ConversationOfferedActivityType
{
  "type": "object"
}
object ConversationOfferedAttribute
{
  "type": "object",
  "properties": {
    "agentNames": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "queueLabel": {
      "type": "string"
    }
  }
}
object ConversationPendingActivityType
{
  "type": "object"
}
object ConversationRatedActivityType
{
  "type": "object"
}
object ConversationRatedAttribute
{
  "type": "object",
  "required": [
    "agent"
  ],
  "properties": {
    "agent": {
      "$ref": "#/components/schemas/ActivityLogUser"
    },
    "score": {
      "type": "integer",
      "format": "int32"
    },
    "message": {
      "type": "string"
    }
  }
}
object ConversationRating
{
  "type": "object",
  "required": [
    "id",
    "ratingType",
    "conversationChannel",
    "userId",
    "ratingStatus",
    "timestamps"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "userId": {
      "type": "string"
    },
    "agentId": {
      "type": "string"
    },
    "language": {
      "type": "string"
    },
    "ratingType": {
      "type": "string",
      "description": "values: [Csat, ThumbsUpOrDown]"
    },
    "timestamps": {
      "$ref": "#/components/schemas/Map_String"
    },
    "ratingScore": {
      "type": "integer",
      "format": "int32"
    },
    "ratingStatus": {
      "type": "string",
      "description": "values: [Unscheduled, Offered, Rated, Scheduled, Cancelled]"
    },
    "ratingComment": {
      "type": "string"
    },
    "conversationChannel": {
      "type": "string",
      "description": "values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Twitter, Email, ContactForm, Callback, PstnPhone, Sms, Messenger]"
    }
  }
}
object ConversationRatingCancelledActivityType
{
  "type": "object"
}
object ConversationRatingOfferedActivityType
{
  "type": "object"
}
object ConversationRatingOfferedAttribute
{
  "type": "object",
  "required": [
    "agent",
    "user"
  ],
  "properties": {
    "user": {
      "$ref": "#/components/schemas/ActivityLogUser"
    },
    "agent": {
      "$ref": "#/components/schemas/ActivityLogUser"
    }
  }
}
object ConversationRatingScheduledActivityType
{
  "type": "object"
}
object ConversationRatingScheduledAttribute
{
  "type": "object",
  "required": [
    "ratingScheduledTime"
  ],
  "properties": {
    "ratingScheduledTime": {
      "type": "string"
    }
  }
}
object ConversationRatingUnscheduledActivityType
{
  "type": "object"
}
object ConversationReopenedActivityType
{
  "type": "object"
}
object ConversationReservedAttribute
{
  "type": "object",
  "required": [
    "agent",
    "queueId",
    "queueName",
    "reservationType",
    "validUntil"
  ],
  "properties": {
    "agent": {
      "$ref": "#/components/schemas/ActivityLogUser"
    },
    "queueId": {
      "type": "string"
    },
    "queueName": {
      "type": "string"
    },
    "validUntil": {
      "type": "string"
    },
    "reservationType": {
      "type": "string"
    }
  }
}
object ConversationReservedType
{
  "type": "object"
}
object ConversationResponse
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    }
  }
}
object ConversationSearchHit
{
  "type": "object",
  "required": [
    "id",
    "highlights"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64",
      "description": "Identifier of a Conversation where a match was found"
    },
    "innerHits": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ConversationSearchInnerHit"
      },
      "description": "List of sub-entities (such as Messages) where a match was found"
    },
    "highlights": {
      "$ref": "#/components/schemas/Map_Vector_String"
    }
  }
}
object ConversationSearchInnerHit
{
  "type": "object",
  "required": [
    "id",
    "highlight"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "Identifier of a sub-entity (such as a Message) where a match was found"
    },
    "highlight": {
      "$ref": "#/components/schemas/Map_String"
    }
  }
}
object ConversationTagsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Tag"
      }
    }
  }
}
object ConversationTransferredAttribute
{
  "type": "object",
  "required": [
    "transferType",
    "destinationType",
    "destinationId"
  ],
  "properties": {
    "reason": {
      "type": "string"
    },
    "transferType": {
      "type": "string"
    },
    "destinationId": {
      "type": "string"
    },
    "destinationType": {
      "type": "string"
    },
    "destinationLabel": {
      "type": "string"
    }
  }
}
object ConversationUnassignedActivityType
{
  "type": "object"
}
object ConversationUnassignedAttribute
{
  "type": "object",
  "required": [
    "agent"
  ],
  "properties": {
    "agent": {
      "$ref": "#/components/schemas/ActivityLogUser"
    }
  }
}
object CreateAgentInput
{
  "type": "object",
  "required": [
    "displayName",
    "email"
  ],
  "properties": {
    "email": {
      "type": "string",
      "description": "The agent's primary email address"
    },
    "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 CreateAgentsInput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CreateAgentInput"
      }
    }
  }
}
object CreateAgentsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_BulkError_Agent"
      }
    }
  }
}
object CreateConversationInput
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/Callback"
    },
    {
      "$ref": "#/components/schemas/Chat"
    },
    {
      "$ref": "#/components/schemas/ContactForm"
    },
    {
      "$ref": "#/components/schemas/Email"
    },
    {
      "$ref": "#/components/schemas/Sms"
    }
  ]
}
object CreateConversationOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/ConversationResponse"
    }
  }
}
object CreateEndUserInput
{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "description": "The contact's primary email address"
    },
    "lastName": {
      "type": "string",
      "description": "The contact's last name"
    },
    "avatarUrl": {
      "type": "string",
      "description": "The url from which to load the contact's avatar"
    },
    "firstName": {
      "type": "string",
      "description": "The contact's first name"
    },
    "externalId": {
      "type": "string",
      "description": "Custom external identifier for the contact"
    },
    "displayName": {
      "type": "string",
      "description": "The contact's display name"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The contact's middle names"
    },
    "phoneNumber": {
      "type": "string",
      "description": "The contact's primary phone number"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional email addresses for the contact"
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional phone numbers for the contact"
    }
  }
}
object CreateEndUserOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EndUser"
    }
  }
}
object CreateEndUsersInput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CreateEndUserInput"
      }
    }
  }
}
object CreateEndUsersOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/BulkActionOutcome_BulkError_EndUser"
      }
    }
  }
}
object CreateInternalNoteInput
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "agentId": {
      "type": "string",
      "format": "uuid"
    },
    "message": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object CreateMessageInput
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/Inbound"
    },
    {
      "$ref": "#/components/schemas/Outbound"
    }
  ]
}
object CreateMessageOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/CreateMessageOutputData"
    }
  }
}
object CreateMessageOutputData
{
  "type": "object",
  "required": [
    "content",
    "direction",
    "authorId"
  ],
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "authorId": {
      "type": "string",
      "format": "uuid"
    },
    "createdAt": {
      "type": "string"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "messageId": {
      "type": "string",
      "format": "uuid"
    },
    "externalId": {
      "type": "string"
    }
  }
}
object CreateNoteOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/InternalNoteData"
    }
  }
}
object CreateOrUpdateQueueRequest
{
  "type": "object",
  "required": [
    "name",
    "callFunctionality",
    "isDefault",
    "isDoNotOfferEnabled"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "priority": {
      "type": "integer",
      "format": "int32"
    },
    "isDefault": {
      "type": "boolean"
    },
    "offerTimeout": {
      "type": "integer",
      "format": "int32"
    },
    "wrapupTimeout": {
      "type": "integer",
      "format": "int32"
    },
    "offerAlgorithm": {
      "type": "string",
      "description": "values: [AgentPriorityOneAtATimeRandom, AllAtOnce, AgentPriorityLongestIdle, AgentPriorityAllAtOnce, LongestIdle, OneAtATimeRandom]"
    },
    "queueThresholds": {
      "$ref": "#/components/schemas/Map_QueueThreshold_Int"
    },
    "callFunctionality": {
      "type": "boolean"
    },
    "doNotOfferTimeouts": {
      "$ref": "#/components/schemas/Map_ConversationChannel_Int"
    },
    "isDoNotOfferEnabled": {
      "type": "boolean"
    },
    "preferredAgentTimeouts": {
      "$ref": "#/components/schemas/Map_ConversationChannel_Int"
    },
    "isPreferredAgentEnabled": {
      "type": "boolean"
    },
    "offerAbandonedConversations": {
      "type": "boolean"
    },
    "personalAgentOfflineTimeout": {
      "type": "integer",
      "format": "int32"
    },
    "preferredAgentOfflineTimeout": {
      "type": "integer",
      "format": "int32"
    }
  }
}
object CreateQueueInput
{
  "type": "object",
  "required": [
    "request"
  ],
  "properties": {
    "request": {
      "$ref": "#/components/schemas/CreateOrUpdateQueueRequest"
    }
  }
}
object CreateQueueOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Queue1"
    }
  }
}
object CreateTagInput
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    }
  }
}
object CreateTagOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Tag"
    }
  }
}
object CreateTeamInput
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    }
  }
}
object CreateTeamOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Team1"
    }
  }
}
object CreateWebhookSubscriptionInput
{
  "type": "object",
  "required": [
    "name",
    "url",
    "authorization"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "URL of the server that the webhook request should be sent to"
    },
    "name": {
      "type": "string",
      "description": "The Webhook Subscription name"
    },
    "events": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [ConversationPending, AgentUnbannedEnduser, ConversationMessageAdded, ConversationTagAdded, AgentBannedIp, ConversationAssigned, ConversationPendingExpired, ConversationTransferred, ConversationEnqueued, ConversationCreated, ConversationUnassigned, ConversationOpen, ConversationAbandoned, ConversationClosed, ConversationNoteAdded, AgentBannedEnduser, ConversationEndUserReplaced, AgentUnbannedIp, ConversationTagRemoved, ConversationRated]"
      },
      "description": "The set of events this Webhook Subscription subscribes to. Allowed values: [ConversationPending, AgentUnbannedEnduser, ConversationMessageAdded, ConversationTagAdded, AgentBannedIp, ConversationAssigned, ConversationPendingExpired, ConversationTransferred, ConversationEnqueued, ConversationCreated, ConversationUnassigned, ConversationOpen, ConversationAbandoned, ConversationClosed, ConversationNoteAdded, AgentBannedEnduser, ConversationEndUserReplaced, AgentUnbannedIp, ConversationTagRemoved, ConversationRated]"
    },
    "enabled": {
      "type": "boolean",
      "description": "Defines whether this Webhook Subscription is enabled or disabled. Default is `true`"
    },
    "authorization": {
      "$ref": "#/components/schemas/WebhookAuthorization"
    }
  }
}
object CreateWebhookSubscriptionOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/WebhookSubscription"
    }
  }
}
object CustomAttribute
{
  "type": "object",
  "required": [
    "id",
    "name",
    "identifier",
    "value"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "value": {
      "oneOf": [
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        {
          "type": "string"
        }
      ],
      "description": "AttributeValue values: String[] if the type of the custom attribute is Select or String if the type of the custom attribute is Text"
    },
    "identifier": {
      "type": "string"
    }
  }
}
object CustomAttributeDefinition
{
  "type": "object",
  "required": [
    "id",
    "entityType",
    "identifier",
    "label",
    "inputDefinition",
    "createdAt",
    "isRequired",
    "isArchived",
    "isDeactivated"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "label": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "entityType": {
      "type": "string",
      "description": "values: [Contact, Conversation]"
    },
    "identifier": {
      "type": "string"
    },
    "isArchived": {
      "type": "boolean"
    },
    "isRequired": {
      "type": "boolean"
    },
    "description": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    },
    "inputDefinition": {
      "$ref": "#/components/schemas/CustomAttributeInputDefinition"
    }
  }
}
object CustomAttributeInputDefinition
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/Select"
    },
    {
      "$ref": "#/components/schemas/Text1"
    }
  ]
}
object DeleteAgentsFromTeamInput
{
  "type": "object",
  "properties": {
    "agentIds": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      }
    }
  }
}
object DeliveryDetail
{
  "type": "object",
  "required": [
    "deliveryTimestamp",
    "success",
    "responseCode",
    "responseText"
  ],
  "properties": {
    "success": {
      "type": "boolean"
    },
    "responseCode": {
      "type": "integer",
      "format": "int32"
    },
    "responseText": {
      "type": "string"
    },
    "deliveryTimestamp": {
      "type": "string"
    }
  }
}
object DeliveryStatus
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/DeliveryDetail"
    },
    {
      "$ref": "#/components/schemas/NoRecentDelivery"
    }
  ]
}
object DeprecatedActivityLogType
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/ConversationAssignedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationAutoreplySentActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationClaimedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationClosedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationCreatedByAgentActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationCreatedByCustomerActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationEndUserReplacedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationLanguageUpdatedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationOfferAcceptedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationOfferRejectedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationOfferTimeoutActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationOfferedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationPendingActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationRatedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationRatingCancelledActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationRatingOfferedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationRatingScheduledActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationRatingUnscheduledActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationReopenedActivityType"
    },
    {
      "$ref": "#/components/schemas/ConversationReservedType"
    },
    {
      "$ref": "#/components/schemas/ConversationUnassignedActivityType"
    },
    {
      "$ref": "#/components/schemas/FollowupAddedActivityType"
    },
    {
      "$ref": "#/components/schemas/FollowupExpiredActivityType"
    },
    {
      "$ref": "#/components/schemas/FollowupRemovedActivityType"
    },
    {
      "$ref": "#/components/schemas/MessageAddedByAgentActivityType"
    },
    {
      "$ref": "#/components/schemas/MessageAddedByCustomerActivityType"
    },
    {
      "$ref": "#/components/schemas/NoteAddedActivityType"
    },
    {
      "$ref": "#/components/schemas/TagAddedActivityType"
    },
    {
      "$ref": "#/components/schemas/TagRemovedActivityType"
    },
    {
      "$ref": "#/components/schemas/TransferFailedActivityType"
    },
    {
      "$ref": "#/components/schemas/TransferInitiatedActivityType"
    },
    {
      "$ref": "#/components/schemas/TransferSuccessfulActivityType"
    },
    {
      "$ref": "#/components/schemas/UnknownActivityType"
    }
  ],
  "deprecated": true,
  "description": "Replaced by _type field"
}
object DeprecatedAnonymizationType
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/ConversationAnonymizationType"
    },
    {
      "$ref": "#/components/schemas/MessageAnonymizationType"
    },
    {
      "$ref": "#/components/schemas/UnknownAnonymizationType"
    },
    {
      "$ref": "#/components/schemas/UserAnonymizationType"
    }
  ],
  "deprecated": true,
  "description": "Replaced by _type field"
}
object DoubleAggregateValue
{
  "type": "object",
  "required": [
    "value",
    "measure"
  ],
  "properties": {
    "value": {
      "type": "number",
      "format": "double"
    },
    "measure": {
      "type": "string",
      "description": "values: [Min, Max, Sum, Percentage, StdDev, Average]"
    }
  }
}
object DoubleField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "number",
      "format": "double"
    }
  }
}
object Email
{
  "type": "object",
  "required": [
    "requesterId",
    "emailIntegrationId",
    "subject",
    "message"
  ],
  "properties": {
    "message": {
      "$ref": "#/components/schemas/CreateMessageInput"
    },
    "subject": {
      "type": "string"
    },
    "language": {
      "type": "string"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "emailIntegrationId": {
      "type": "string"
    }
  }
}
object EmailAttributes
{
  "type": "object",
  "required": [
    "from",
    "isAutoReply"
  ],
  "properties": {
    "cc": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "to": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "bcc": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EmailContact"
      }
    },
    "from": {
      "$ref": "#/components/schemas/EmailContact"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "isAutoReply": {
      "type": "boolean"
    },
    "emailContent": {
      "$ref": "#/components/schemas/EmailContent"
    },
    "inlineImages": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "originalContentUrl": {
      "$ref": "#/components/schemas/File"
    },
    "deliveryFailureReason": {
      "type": "string"
    }
  }
}
object EmailContact
{
  "type": "object",
  "required": [
    "email"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    }
  }
}
object EmailContent
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/Regular"
    },
    {
      "$ref": "#/components/schemas/TooLarge"
    }
  ]
}
object EmailConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt",
    "toEmail",
    "fromEmail",
    "integrationEmail"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "subject": {
      "type": "string"
    },
    "toEmail": {
      "type": "string"
    },
    "language": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "fromEmail": {
      "type": "string"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    },
    "integrationEmail": {
      "type": "string"
    }
  }
}
object EmailEndpoint
{
  "type": "object",
  "required": [
    "address"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "address": {
      "type": "string"
    },
    "senderOverride": {
      "type": "string"
    }
  }
}
object EmailForward
{
  "type": "object",
  "required": [
    "parentId"
  ],
  "properties": {
    "parentId": {
      "type": "integer",
      "format": "int64"
    }
  }
}
object EmptyPatchSet
{
  "type": "object",
  "required": [
    "id",
    "message"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}
object EndUser
{
  "type": "object",
  "required": [
    "id",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier for the contact"
    },
    "email": {
      "type": "string",
      "description": "The contact's primary email address"
    },
    "lastName": {
      "type": "string",
      "description": "The contact's last name"
    },
    "avatarUrl": {
      "type": "string",
      "description": "The url from which to load the contact's avatar"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Time when the contact was created"
    },
    "firstName": {
      "type": "string",
      "description": "The contact's first name"
    },
    "externalId": {
      "type": "string",
      "description": "Custom external identifier for the contact"
    },
    "displayName": {
      "type": "string",
      "description": "The contact's display name"
    },
    "middleNames": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The contact's middle names"
    },
    "phoneNumber": {
      "type": "string",
      "description": "The contact's primary phone number"
    },
    "additionalEmails": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional email addresses for the contact"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      },
      "description": "Custom attributes for the contact"
    },
    "additionalPhoneNumbers": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Additional phone numbers for the contact"
    }
  }
}
object ErrorResponse
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object EventDeliveryLog
{
  "type": "object",
  "required": [
    "deliveryDetail",
    "payload"
  ],
  "properties": {
    "payload": {
      "type": "string"
    },
    "deliveryDetail": {
      "$ref": "#/components/schemas/DeliveryDetail"
    }
  }
}
object EventDeliveryStatus
{
  "type": "object",
  "required": [
    "event",
    "deliveryStatus"
  ],
  "properties": {
    "event": {
      "type": "string",
      "description": "values: [ConversationPending, AgentUnbannedEnduser, ConversationMessageAdded, ConversationTagAdded, AgentBannedIp, ConversationAssigned, ConversationPendingExpired, ConversationTransferred, ConversationEnqueued, ConversationCreated, ConversationUnassigned, ConversationOpen, ConversationAbandoned, ConversationClosed, ConversationNoteAdded, AgentBannedEnduser, ConversationEndUserReplaced, AgentUnbannedIp, ConversationTagRemoved, ConversationRated]"
    },
    "deliveryStatus": {
      "$ref": "#/components/schemas/DeliveryStatus"
    }
  }
}
object FacebookMessengerAttributes
{
  "type": "object",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    }
  }
}
object FacebookMessengerConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object Field
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "field": {
      "$ref": "#/components/schemas/FieldType"
    }
  }
}
object FieldMetadata
{
  "type": "object",
  "required": [
    "field",
    "description",
    "nullable"
  ],
  "properties": {
    "field": {
      "type": "string"
    },
    "nullable": {
      "type": "boolean"
    },
    "description": {
      "type": "string"
    }
  }
}
object FieldType
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BooleanField"
    },
    {
      "$ref": "#/components/schemas/DoubleField"
    },
    {
      "$ref": "#/components/schemas/InstantField"
    },
    {
      "$ref": "#/components/schemas/IntField"
    },
    {
      "$ref": "#/components/schemas/ListField"
    },
    {
      "$ref": "#/components/schemas/LongField"
    },
    {
      "$ref": "#/components/schemas/StringField"
    },
    {
      "$ref": "#/components/schemas/TimestampField"
    },
    {
      "$ref": "#/components/schemas/UUIDField"
    }
  ]
}
object File
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "description": "url"
    },
    "prettyName": {
      "type": "string"
    }
  }
}
object Filter
{
  "type": "object",
  "required": [
    "attribute"
  ],
  "properties": {
    "values": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "attribute": {
      "type": "string"
    }
  }
}
object FilterMetadata
{
  "type": "object",
  "required": [
    "filterAttribute"
  ],
  "properties": {
    "description": {
      "type": "string"
    },
    "filterAttribute": {
      "type": "string"
    }
  }
}
object FilterValue
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "label": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  }
}
object FollowUp
{
  "type": "object",
  "required": [
    "parentId"
  ],
  "properties": {
    "parentId": {
      "type": "integer",
      "format": "int64"
    }
  }
}
object FollowupAddedActivityType
{
  "type": "object"
}
object FollowupExpiredActivityType
{
  "type": "object"
}
object FollowupRemovedActivityType
{
  "type": "object"
}
object GenericAttributes
{
  "type": "object",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    }
  }
}
object GenericConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    },
    "toContactPointId": {
      "type": "string"
    },
    "fromContactPointId": {
      "type": "string"
    }
  }
}
object GetActivityLogOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ActivityLogEntry"
      }
    }
  }
}
object GetContactPointByIdOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/ContactEndpoint"
    }
  }
}
object GetConversationOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Conversation"
    }
  }
}
object GetEndUserOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EndUser"
    }
  }
}
object GetFilterValuesOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/FilterValue"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object GetMetricDataInput
{
  "type": "object",
  "required": [
    "id",
    "periodFilter",
    "timezone"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Filter"
      }
    },
    "timezone": {
      "type": "string"
    },
    "aggregations": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [Min, Max, Sum, Count, Percentage, StdDev, Average]"
      }
    },
    "periodFilter": {
      "$ref": "#/components/schemas/PeriodFilter"
    }
  }
}
object GetMetricDataOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/MetricData"
    }
  }
}
object GetMetricOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/MetricMetadata"
    }
  }
}
object GetMetricRecordOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/MetricRecordMetadata"
    }
  }
}
object GetMetricRecordsDataInput
{
  "type": "object",
  "required": [
    "id",
    "periodFilter",
    "timezone"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Filter"
      }
    },
    "timezone": {
      "type": "string"
    },
    "periodFilter": {
      "$ref": "#/components/schemas/PeriodFilter"
    }
  }
}
object GetMetricRecordsDataOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/MetricRecord"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object GetMetricRecordsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/MetricRecordMetadata"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object GetMetricsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/MetricMetadata"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object GetQueueByIdOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Queue1"
    }
  }
}
object GetTagOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/Tag"
    }
  }
}
object GetWebhookEventDeliveryLogsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EventDeliveryLog"
      }
    }
  }
}
object GetWebhookLastDeliveryStatusOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EventDeliveryStatus"
      }
    }
  }
}
object GetWebhookSubscriptionOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/WebhookSubscription"
    }
  }
}
object Html
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "string"
    }
  }
}
object Inbound
{
  "type": "object",
  "required": [
    "content"
  ],
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "externalId": {
      "type": "string",
      "description": "Client generated identifier for external reference"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "integrationEmail": {
      "type": "string",
      "description": "Internal email address registered for the integration with format: \\<email-address\\>@email.dixa.io"
    }
  }
}
object Infrastructure
{
  "type": "object",
  "required": [
    "id",
    "message"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}
object InstantField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object IntField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "integer",
      "format": "int32"
    }
  }
}
object Integrity
{
  "type": "object",
  "required": [
    "id",
    "message"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}
object InternalNoteData
{
  "type": "object",
  "required": [
    "id",
    "authorId",
    "createdAt",
    "csid",
    "message"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "csid": {
      "type": "integer",
      "format": "int64"
    },
    "message": {
      "type": "string"
    },
    "authorId": {
      "type": "string",
      "format": "uuid"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object Interval
{
  "type": "object",
  "required": [
    "start",
    "end"
  ],
  "properties": {
    "end": {
      "type": "string",
      "format": "date-time"
    },
    "start": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object ListActivityLogOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ActivityLogEntry"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object ListAgentsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Agent"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object ListContactPointsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ContactEndpoint"
      }
    }
  }
}
object ListConversationRatingsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ConversationRating"
      }
    }
  }
}
object ListCustomAttributesDefinitionsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttributeDefinition"
      }
    }
  }
}
object ListEndUserConversationsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Conversation"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object ListEndUsersOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/EndUser"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object ListField
{
  "type": "object",
  "properties": {
    "values": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/PrimitiveField"
      }
    }
  }
}
object ListFlowsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ConversationFlow"
      }
    }
  }
}
object ListInternalNotesOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/InternalNoteData"
      }
    }
  }
}
object ListLinkedConversationsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Conversation"
      }
    }
  }
}
object ListMessagesOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Message"
      }
    }
  }
}
object ListPresenceOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/UserPresence"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object ListQueuesOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Queue1"
      }
    }
  }
}
object ListTagsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Tag"
      }
    }
  }
}
object ListTeamMembersOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/TeamMember"
      }
    }
  }
}
object ListTeamsOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Team1"
      }
    }
  }
}
object ListWebhookSubscriptionsEndpointOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/WebhookSubscription"
      }
    }
  }
}
object LongAggregateValue
{
  "type": "object",
  "required": [
    "value",
    "measure"
  ],
  "properties": {
    "value": {
      "type": "integer",
      "format": "int64"
    },
    "measure": {
      "type": "string",
      "description": "values: [Count]"
    }
  }
}
object LongField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "integer",
      "format": "int64"
    }
  }
}
object Map_ConversationChannel_Int
{
  "type": "object",
  "description": "values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Twitter, Email, ContactForm, Callback, PstnPhone, Sms, Messenger]",
  "additionalProperties": {
    "type": "integer",
    "format": "int32"
  }
}
object Map_ConversationChannel_Set_String
{
  "type": "object",
  "description": "values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Twitter, Email, ContactForm, Callback, PstnPhone, Sms, Messenger]",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string"
    }
  }
}
object Map_QueueThreshold_Int
{
  "type": "object",
  "description": "values: [SlaTimeLimit, AvailableAgents, LongestWait, SlaPercentage, WaitingConversations]",
  "additionalProperties": {
    "type": "integer",
    "format": "int32"
  }
}
object Map_String
{
  "type": "object",
  "additionalProperties": {
    "type": "string"
  }
}
object Map_UUID_Option_AttributeValue
{
  "type": "object",
  "additionalProperties": {
    "oneOf": [
      {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      {
        "type": "string"
      }
    ],
    "description": "AttributeValue values: String[] if the type of the custom attribute is Select or String if the type of the custom attribute is Text"
  }
}
object Map_Vector_String
{
  "type": "object",
  "description": "Snippet of text where a match was found. Matched text will be wrapped in \\<em\\> tags.",
  "additionalProperties": {
    "type": "array",
    "items": {
      "type": "string"
    }
  }
}
object Message
{
  "type": "object",
  "required": [
    "id",
    "authorId",
    "createdAt",
    "attributes"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "authorId": {
      "type": "string",
      "format": "uuid"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "attributes": {
      "$ref": "#/components/schemas/Attributes"
    },
    "externalId": {
      "type": "string"
    }
  }
}
object MessageAddedAttribute
{
  "type": "object",
  "required": [
    "messageId"
  ],
  "properties": {
    "avatarUrl": {
      "type": "string"
    },
    "messageId": {
      "type": "string"
    },
    "fromEndpoint": {
      "type": "string"
    }
  }
}
object MessageAddedByAgentActivityType
{
  "type": "object"
}
object MessageAddedByCustomerActivityType
{
  "type": "object"
}
object MessageAnonymizationType
{
  "type": "object"
}
object MessengerConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "language": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object MetricData
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "aggregates": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AggregateValue"
      }
    }
  }
}
object MetricMetadata
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The metric ID"
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/FilterMetadata"
      },
      "description": "List of available filters that can be used when fetching metric data"
    },
    "description": {
      "type": "string",
      "description": "Relevant information about the metric"
    },
    "aggregations": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/AggregateMetadata"
      },
      "description": "List of available aggregations that can be used when fetching metric data"
    },
    "relatedRecordIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of record IDs used to compose the metric"
    }
  }
}
object MetricRecord
{
  "type": "object",
  "required": [
    "primaryTimestampField"
  ],
  "properties": {
    "value": {
      "$ref": "#/components/schemas/FieldType"
    },
    "fields": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Field"
      }
    },
    "primaryTimestampField": {
      "$ref": "#/components/schemas/TimestampField"
    }
  }
}
object MetricRecordMetadata
{
  "type": "object",
  "required": [
    "id",
    "description"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "The record ID"
    },
    "filters": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/FilterMetadata"
      },
      "description": "List of available filters that can be used when fetching record data"
    },
    "description": {
      "type": "string",
      "description": "Relevant information about the record"
    },
    "fieldsMetadata": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/FieldMetadata"
      },
      "description": "Information about the individual record fields"
    },
    "relatedMetricIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "List of metric IDs that make use of this record"
    }
  }
}
object NoAuth
{
  "type": "object"
}
object NoRecentDelivery
{
  "type": "object"
}
object NotFound
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object NotFound1
{
  "type": "object",
  "required": [
    "id",
    "message"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}
object NoteAddedActivityType
{
  "type": "object"
}
object NoteAddedAttribute
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    },
    "avatarUrl": {
      "type": "string"
    }
  }
}
object Outbound
{
  "type": "object",
  "required": [
    "content",
    "agentId"
  ],
  "properties": {
    "cc": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      }
    },
    "bcc": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid"
      }
    },
    "agentId": {
      "type": "string",
      "format": "uuid"
    },
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "externalId": {
      "type": "string"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    },
    "integrationEmail": {
      "type": "string"
    }
  }
}
object PaginationLinks
{
  "type": "object",
  "properties": {
    "next": {
      "type": "string",
      "description": "url"
    },
    "previous": {
      "type": "string",
      "description": "url"
    }
  }
}
object PatchAgentInput
{
  "type": "object",
  "properties": {
    "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 PatchConversationCustomAttributesOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object PatchEndUserCustomAttributesOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object PatchEndUserInput
{
  "type": "object",
  "properties": {
    "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 PatchEndUserOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EndUser"
    }
  }
}
object PatchWebhookSubscriptionInput
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "URL of the server that the webhook request should be sent to"
    },
    "name": {
      "type": "string",
      "description": "The Webhook Subscription name"
    },
    "events": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [ConversationPending, AgentUnbannedEnduser, ConversationMessageAdded, ConversationTagAdded, AgentBannedIp, ConversationAssigned, ConversationPendingExpired, ConversationTransferred, ConversationEnqueued, ConversationCreated, ConversationUnassigned, ConversationOpen, ConversationAbandoned, ConversationClosed, ConversationNoteAdded, AgentBannedEnduser, ConversationEndUserReplaced, AgentUnbannedIp, ConversationTagRemoved, ConversationRated]"
      },
      "description": "The set of events this Webhook Subscription subscribes to. Allowed values: [ConversationPending, AgentUnbannedEnduser, ConversationMessageAdded, ConversationTagAdded, AgentBannedIp, ConversationAssigned, ConversationPendingExpired, ConversationTransferred, ConversationEnqueued, ConversationCreated, ConversationUnassigned, ConversationOpen, ConversationAbandoned, ConversationClosed, ConversationNoteAdded, AgentBannedEnduser, ConversationEndUserReplaced, AgentUnbannedIp, ConversationTagRemoved, ConversationRated]"
    },
    "enabled": {
      "type": "boolean",
      "description": "Defines whether this Webhook Subscription is enabled or disabled"
    },
    "authorization": {
      "$ref": "#/components/schemas/WebhookAuthorization"
    }
  }
}
object PatchWebhookSubscriptionOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/WebhookSubscription"
    }
  }
}
object PeriodFilter
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/Interval"
    },
    {
      "$ref": "#/components/schemas/Preset"
    }
  ]
}
object PhoneAttributes
{
  "type": "object",
  "required": [
    "from",
    "to"
  ],
  "properties": {
    "to": {
      "type": "string"
    },
    "from": {
      "type": "string"
    },
    "duration": {
      "type": "integer",
      "format": "int32"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    }
  }
}
object Preset
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "string",
      "description": "values: [PreviousQuarter, ThisWeek, PreviousWeek, Yesterday, Today, ThisMonth, PreviousMonth, ThisQuarter, ThisYear]"
    }
  }
}
object PrimitiveField
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BooleanField"
    },
    {
      "$ref": "#/components/schemas/DoubleField"
    },
    {
      "$ref": "#/components/schemas/InstantField"
    },
    {
      "$ref": "#/components/schemas/IntField"
    },
    {
      "$ref": "#/components/schemas/LongField"
    },
    {
      "$ref": "#/components/schemas/StringField"
    },
    {
      "$ref": "#/components/schemas/UUIDField"
    }
  ]
}
object PstnPhoneConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object Queue
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "queuedAt": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object Queue1
{
  "type": "object",
  "required": [
    "id",
    "name",
    "isDefault",
    "organizationId",
    "queueThresholds",
    "slaCalculationMethod",
    "doNotOfferTimeouts",
    "isDoNotOfferEnabled"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "usages": {
      "$ref": "#/components/schemas/QueueUsages"
    },
    "priority": {
      "type": "integer",
      "format": "int32"
    },
    "isDefault": {
      "type": "boolean"
    },
    "offerTimeout": {
      "type": "integer",
      "format": "int32"
    },
    "wrapupTimeout": {
      "type": "integer",
      "format": "int32"
    },
    "memberListType": {
      "type": "string",
      "description": "values: [Default, SkillBased]"
    },
    "organizationId": {
      "type": "string"
    },
    "queueThresholds": {
      "$ref": "#/components/schemas/Map_QueueThreshold_Int"
    },
    "offeringAlgorithm": {
      "type": "string",
      "description": "values: [AgentPriorityOneAtATimeRandom, AllAtOnce, AgentPriorityLongestIdle, AgentPriorityAllAtOnce, LongestIdle, OneAtATimeRandom]"
    },
    "doNotOfferTimeouts": {
      "$ref": "#/components/schemas/Map_ConversationChannel_Int"
    },
    "isDoNotOfferEnabled": {
      "type": "boolean"
    },
    "slaCalculationMethod": {
      "type": "string",
      "description": "values: [AbandonedIgnored]"
    },
    "preferredAgentTimeouts": {
      "$ref": "#/components/schemas/Map_ConversationChannel_Int"
    },
    "isPreferredAgentEnabled": {
      "type": "boolean"
    },
    "offerAbandonedConversations": {
      "type": "boolean"
    },
    "personalAgentOfflineTimeout": {
      "type": "integer",
      "format": "int32"
    },
    "preferredAgentOfflineTimeout": {
      "type": "integer",
      "format": "int32"
    }
  }
}
object QueueMember
{
  "type": "object",
  "required": [
    "agentId"
  ],
  "properties": {
    "agentId": {
      "type": "string"
    },
    "priority": {
      "type": "integer",
      "format": "int32"
    }
  }
}
object QueueMembersOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/QueueMember"
      }
    }
  }
}
object QueueUsages
{
  "type": "object",
  "required": [
    "queueId",
    "usages"
  ],
  "properties": {
    "usages": {
      "$ref": "#/components/schemas/Map_ConversationChannel_Set_String"
    },
    "queueId": {
      "type": "string"
    }
  }
}
object Regular
{
  "type": "object",
  "required": [
    "content"
  ],
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    }
  }
}
object ReopenConversationInput
{
  "type": "object",
  "properties": {
    "userId": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object SearchHit
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/ConversationSearchHit"
    }
  ]
}
object SearchOutput
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SearchHit"
      }
    },
    "meta": {
      "$ref": "#/components/schemas/PaginationLinks"
    }
  }
}
object Select
{
  "type": "object",
  "properties": {
    "options": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SelectOption"
      }
    }
  }
}
object SelectOption
{
  "type": "object",
  "required": [
    "id",
    "label",
    "value",
    "isDeactivated"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "label": {
      "type": "string"
    },
    "value": {
      "type": "string"
    },
    "isDeactivated": {
      "type": "boolean"
    },
    "nestedOptions": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/SelectOption"
      }
    }
  }
}
object ServerError
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object SideConversation
{
  "type": "object",
  "required": [
    "parentId"
  ],
  "properties": {
    "parentId": {
      "type": "integer",
      "format": "int64"
    }
  }
}
object Sms
{
  "type": "object",
  "required": [
    "requesterId",
    "contactEndpointId",
    "message"
  ],
  "properties": {
    "message": {
      "$ref": "#/components/schemas/CreateMessageInput"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "contactEndpointId": {
      "type": "string",
      "description": "SMS enabled provisioned phone number in valid E.164 format"
    }
  }
}
object SmsAttributes
{
  "type": "object",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    }
  }
}
object SmsConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "toNumber": {
      "type": "string"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "fromNumber": {
      "type": "string"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}
object StringField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "label": {
      "type": "string"
    },
    "value": {
      "type": "string"
    }
  }
}
object Tag
{
  "type": "object",
  "required": [
    "id",
    "name",
    "state"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "name": {
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "state": {
      "type": "string",
      "description": "values: [Active, Inactive]"
    }
  }
}
object TagAddedActivityType
{
  "type": "object"
}
object TagAddedAttribute
{
  "type": "object",
  "required": [
    "tag"
  ],
  "properties": {
    "tag": {
      "type": "string"
    }
  }
}
object TagRemovedActivityType
{
  "type": "object"
}
object TagRemovedAttribute
{
  "type": "object",
  "required": [
    "tag"
  ],
  "properties": {
    "tag": {
      "type": "string"
    }
  }
}
object Team
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object Team1
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    }
  }
}
object TeamMember
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "email": {
      "type": "string"
    },
    "phoneNumber": {
      "type": "string"
    }
  }
}
object TelephonyEndpoint
{
  "type": "object",
  "required": [
    "number"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "number": {
      "type": "string"
    },
    "functionality": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [Sms, VoiceInbound, VoiceOutbound]"
      }
    }
  }
}
object Text
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "string"
    }
  }
}
object Text1
{
  "type": "object",
  "properties": {
    "placeholder": {
      "type": "string"
    }
  }
}
object TimestampField
{
  "type": "object",
  "required": [
    "name",
    "timestamp"
  ],
  "properties": {
    "name": {
      "type": "string"
    },
    "timestamp": {
      "type": "string",
      "format": "date-time"
    }
  }
}
object TokenAuth
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "value": {
      "type": "string",
      "description": "Token value. It will be added in the headers of the request as: 'Authorization': 'Bearer \\<value\\>'"
    }
  }
}
object TooLarge
{
  "type": "object",
  "required": [
    "file"
  ],
  "properties": {
    "file": {
      "$ref": "#/components/schemas/File"
    }
  }
}
object TransferConversationInput
{
  "type": "object",
  "required": [
    "queueId"
  ],
  "properties": {
    "userId": {
      "type": "string",
      "format": "uuid",
      "description": "An optional agent/admin to originate the transfer of the conversation"
    },
    "queueId": {
      "type": "string",
      "format": "uuid",
      "description": "The target queue for the conversation transfer"
    }
  }
}
object TransferFailedActivityType
{
  "type": "object"
}
object TransferInitiatedActivityType
{
  "type": "object"
}
object TransferSuccessfulActivityType
{
  "type": "object"
}
object TwitterAttributes
{
  "type": "object",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    }
  }
}
object TwitterConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt",
    "conversationType"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "conversationType": {
      "type": "string",
      "description": "values: [DirectMessage, Tweet]"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    },
    "endUserTwitterId": {
      "type": "string"
    },
    "contactPointTwitterId": {
      "type": "string"
    }
  }
}
object UUIDField
{
  "type": "object",
  "required": [
    "value"
  ],
  "properties": {
    "label": {
      "type": "string"
    },
    "value": {
      "type": "string",
      "format": "uuid"
    }
  }
}
object Unauthorized
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "message": {
      "type": "string"
    }
  }
}
object UnknownActivityType
{
  "type": "object"
}
object UnknownAnonymizationType
{
  "type": "object"
}
object UpdateAgentInput
{
  "type": "object",
  "required": [
    "displayName"
  ],
  "properties": {
    "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 UpdateEndUserInput
{
  "type": "object",
  "required": [
    "displayName"
  ],
  "properties": {
    "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 UpdateEndUserOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/EndUser"
    }
  }
}
object UserAnonymizationType
{
  "type": "object"
}
object UserPresence
{
  "type": "object",
  "required": [
    "userId",
    "requestTime",
    "connectionStatus"
  ],
  "properties": {
    "userId": {
      "type": "string"
    },
    "lastSeen": {
      "type": "string"
    },
    "requestTime": {
      "type": "string"
    },
    "activeChannels": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [WhatsApp, Voicemail, WidgetChat, FacebookMessenger, Twitter, Email, ContactForm, Callback, PstnPhone, Sms, Messenger]"
      }
    },
    "presenceStatus": {
      "type": "string",
      "description": "values: [Away, Working]"
    },
    "connectionStatus": {
      "type": "string",
      "description": "values: [Offline, Online]"
    }
  }
}
object UserPresenceOutput
{
  "type": "object",
  "required": [
    "data"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/UserPresence"
    }
  }
}
object Validation
{
  "type": "object",
  "required": [
    "message"
  ],
  "properties": {
    "id": {
      "type": "string"
    },
    "message": {
      "type": "string"
    }
  }
}
object WebhookAuthorization
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/BasicAuth"
    },
    {
      "$ref": "#/components/schemas/NoAuth"
    },
    {
      "$ref": "#/components/schemas/TokenAuth"
    }
  ],
  "description": "Authorization to be added as a header in the webhook request. Can be either, Basic auth, added as 'Basic base64encoded(\\<username\\>:\\<password\\>)', Token auth, added as 'Bearer \\<token value\\>', or no auth"
}
object WebhookSubscription
{
  "type": "object",
  "required": [
    "id",
    "name",
    "url",
    "headers",
    "secretKey",
    "enabled",
    "createdAt",
    "createdBy",
    "updatedAt",
    "updatedBy"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "The Webhook Subscription ID"
    },
    "url": {
      "type": "string",
      "description": "URL of the server that the webhook request should be sent to"
    },
    "name": {
      "type": "string",
      "description": "The Webhook Subscription name"
    },
    "enabled": {
      "type": "boolean",
      "description": "Defines whether this Webhook Subscription is enabled or disabled"
    },
    "headers": {
      "$ref": "#/components/schemas/Webhook_Headers_Map_String_String"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Date when this Webhook Subscription was created"
    },
    "createdBy": {
      "type": "string",
      "format": "uuid",
      "description": "The ID of the user who created this Webhook Subscription"
    },
    "secretKey": {
      "type": "string",
      "description": "Dixa generated secret key, used to sign the requests"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Date when this Webhook Subscription was last updated"
    },
    "updatedBy": {
      "type": "string",
      "format": "uuid",
      "description": "The ID of the user who last updated this Webhook Subscription"
    },
    "subscribedEvents": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "values: [ConversationPending, AgentUnbannedEnduser, ConversationMessageAdded, ConversationTagAdded, AgentBannedIp, ConversationAssigned, ConversationPendingExpired, ConversationTransferred, ConversationEnqueued, ConversationCreated, ConversationUnassigned, ConversationOpen, ConversationAbandoned, ConversationClosed, ConversationNoteAdded, AgentBannedEnduser, ConversationEndUserReplaced, AgentUnbannedIp, ConversationTagRemoved, ConversationRated]"
      },
      "description": "The set of events this Webhook Subscription is subscribed to"
    }
  }
}
object Webhook_Headers_Map_String_String
{
  "type": "object",
  "description": "The headers that will be added to the webhook request",
  "additionalProperties": {
    "type": "string"
  }
}
object WhatsAppAttributes
{
  "type": "object",
  "properties": {
    "content": {
      "$ref": "#/components/schemas/Content"
    },
    "direction": {
      "type": "string",
      "description": "values: [Inbound, Internal, Outbound]"
    },
    "attachments": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/File"
      }
    }
  }
}
object WhatsAppConversation
{
  "type": "object",
  "required": [
    "id",
    "requesterId",
    "channel",
    "createdAt"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "link": {
      "$ref": "#/components/schemas/ConversationLink"
    },
    "queue": {
      "$ref": "#/components/schemas/Queue"
    },
    "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]"
    },
    "assignment": {
      "$ref": "#/components/schemas/Assignment"
    },
    "requesterId": {
      "type": "string",
      "format": "uuid"
    },
    "stateUpdatedAt": {
      "type": "string",
      "format": "date-time"
    },
    "customAttributes": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/CustomAttribute"
      }
    }
  }
}