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 2 endpoints

POST /v1/agents

Create an agent.

operationId: Agents_createAgent

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateAgentInput"
      },
      "example": {
        "email": "alice@brown.com",
        "lastName": "Brown",
        "avatarUrl": "http://avatar.url",
        "firstName": "Alice",
        "displayName": "Alice Brown",
        "middleNames": [],
        "phoneNumber": "+551155256325",
        "additionalEmails": [
          "alice@secondary.email"
        ],
        "additionalPhoneNumbers": [
          "+5566778899"
        ]
      }
    }
  },
  "required": true,
  "description": "The agent's details"
}

Responses

201 The created agent
400 Invalid value extracted from request context, Invalid value for: body, Validation failure during agent creation
500 Internal failure during request processing
POST /v1/agents
POST /v1/agents/bulk

Create agents in bulk.

operationId: Agents_createBulk

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateAgentsInput"
      },
      "example": {
        "data": [
          {
            "email": "alice@brown.com",
            "lastName": "Brown",
            "avatarUrl": "http://avatar.url",
            "firstName": "Alice",
            "displayName": "Alice Brown",
            "middleNames": [],
            "phoneNumber": "+551155256325",
            "additionalEmails": [],
            "additionalPhoneNumbers": []
          }
        ]
      }
    }
  },
  "required": true,
  "description": "The list of agent's details"
}

Responses

201 The created agents
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
POST /v1/agents/bulk

Analytics 2 endpoints

POST /v1/analytics/metrics

Get data of a specific metric (aggregated)

operationId: Analytics_getMetricData

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/GetMetricDataInput"
      },
      "example": {
        "id": "closed_conversationsX",
        "filters": [
          {
            "values": [
              "email"
            ],
            "attribute": "channel"
          }
        ],
        "timezone": "Europe/Copenhagen",
        "aggregations": [
          "Count"
        ],
        "periodFilter": {
          "_type": "Preset",
          "value": {
            "_type": "PreviousWeek"
          }
        }
      }
    }
  },
  "required": true,
  "description": "The available request filters and aggregations for fetching the metric data"
}

Responses

200 The metric data
400 Invalid value extracted from request context, Invalid value for: body
500 Internal Server Error
POST /v1/analytics/metrics
POST /v1/analytics/records

Get data of specific metric records (unaggregated)

operationId: Analytics_getMetricRecordsData

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.

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/GetMetricRecordsDataInput"
      },
      "example": {
        "id": "closed_conversationsX",
        "filters": [
          {
            "values": [
              "INBOUND"
            ],
            "attribute": "initial_direction"
          }
        ],
        "timezone": "Europe/Copenhagen",
        "periodFilter": {
          "_type": "Preset",
          "value": {
            "_type": "PreviousWeek"
          }
        }
      }
    }
  },
  "required": true,
  "description": "The available request filters for fetching the metric records data"
}

Responses

200 The metric records data
400 Invalid value extracted from request context, Invalid value for: query parameter pageLimit, Invalid value for: query parameter pageKey, Invalid value for: body
500 Internal Server Error
POST /v1/analytics/records

Conversations 4 endpoints

POST /v1/conversations

Create a conversation. For inbound messages the author is assumed to be the requester of the conversation (end user). For outbound messages the author is specified using the agentId field.

operationId: Conversations_createNewConversation

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateConversationInput"
      },
      "example": {
        "_type": "Email",
        "message": {
          "_type": "Inbound",
          "content": {
            "_type": "Text",
            "value": "My order hasn't shipped"
          },
          "attachments": []
        },
        "subject": "order #123",
        "language": "en",
        "requesterId": "9c2a2cce-699f-4a72-89d9-fda5bc8dec8b",
        "emailIntegrationId": "my-integration@email.dixa.io"
      }
    }
  },
  "required": true,
  "description": "The conversation to create"
}

Responses

201 The id of the created conversation
400 Invalid value extracted from request context, Invalid value for: body, Invalid input for Message, Failure to download attachment, Duplicate externalId, Unsupported ConversationChannel
404 An entity in this request could not be found
500 Internal failure during request processing
POST /v1/conversations
POST /v1/conversations/{conversationId}/messages

Add a message to a conversation. For inbound messages the author is assumed to be the requester of the conversation (end user). For outbound messages the author is specified using the agentId field. Currently Email, WidgetChat and Messenger channels are supported.

operationId: Conversations_addMessage

Parameters

Name In Required Type Description
conversationId path required integer

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateMessageInput"
      },
      "example": {
        "_type": "Inbound",
        "content": {
          "_type": "Html",
          "value": "I need some help!"
        },
        "attachments": [
          {
            "url": "http://attachment.url",
            "prettyName": "Filename"
          }
        ]
      }
    }
  },
  "required": true,
  "description": "The message to be added to a conversation"
}

Responses

200 The added message
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, Invalid input for Message, Failure to download attachment, Duplicate externalId, Unsupported ConversationChannel
404 An entity in this request could not be found
500 Internal failure during request processing
POST /v1/conversations/{conversationId}/messages
POST /v1/conversations/{conversationId}/notes

Create an internal note in a conversation by providing the conversation id.

operationId: Conversations_addInternalNote

Parameters

Name In Required Type Description
conversationId path required integer

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateInternalNoteInput"
      },
      "examples": {
        "Input with createdAt": {
          "value": {
            "agentId": "a53b25da-f676-4c52-acac-58c9280aa23d",
            "message": "A sample note",
            "createdAt": "2021-12-01T12:46:36.581Z[GMT]"
          }
        },
        "Input without createdAt": {
          "value": {
            "message": "Another sample note"
          }
        }
      }
    }
  },
  "required": true,
  "description": "The internal note to create for a conversation"
}

Responses

200 The created internal note
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, Agent was not found, Invalid date format
404 An entity in this request could not be found
500 Internal failure during request processing
POST /v1/conversations/{conversationId}/notes
POST /v1/conversations/{conversationId}/notes/bulk

Create internal notes in a conversation by providing the conversation id.

operationId: Conversations_addInternalNotes

Parameters

Name In Required Type Description
conversationId path required integer

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/BulkCreateInternalNoteInput"
      },
      "examples": {
        "Input with two internal notes created for the same conversation": {
          "value": {
            "data": [
              {
                "agentId": "a53b25da-f676-4c52-acac-58c9280aa23d",
                "message": "A sample note",
                "createdAt": "2021-12-01T12:46:36.581Z[GMT]"
              },
              {
                "message": "Another sample note"
              }
            ]
          }
        }
      }
    }
  },
  "required": true,
  "description": "The list of internal notes to create for a conversation"
}

Responses

200 The created internal notes
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body
404 An entity in this request could not be found
500 Internal failure during request processing
POST /v1/conversations/{conversationId}/notes/bulk

End users 2 endpoints

POST /v1/endusers

Create an end user.

operationId: EndUsers_createUser

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateEndUserInput"
      },
      "example": {
        "email": "alice@brown.com",
        "lastName": "Brown",
        "avatarUrl": "http://avatar.url",
        "firstName": "Alice",
        "externalId": "#12345678",
        "displayName": "Alice Brown",
        "middleNames": [],
        "phoneNumber": "+551155256325",
        "additionalEmails": [
          "alice@secondary.email"
        ],
        "additionalPhoneNumbers": [
          "+5566778899"
        ]
      }
    }
  },
  "required": true,
  "description": "The end user's details"
}

Responses

201 The created end user
400 Invalid value extracted from request context, Invalid value for: body, Validation failure during enduser creation
500 Internal failure during request processing
POST /v1/endusers
POST /v1/endusers/bulk

Create end users.

operationId: EndUsers_createBulkUser

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateEndUsersInput"
      },
      "example": {
        "data": [
          {
            "email": "alice@brown.com",
            "lastName": "Brown",
            "avatarUrl": "http://avatar.url",
            "firstName": "Alice",
            "externalId": "#12345678",
            "displayName": "Alice Brown",
            "middleNames": [],
            "phoneNumber": "+551155256325",
            "additionalEmails": [],
            "additionalPhoneNumbers": []
          }
        ]
      }
    }
  },
  "required": true,
  "description": "The list of end user details"
}

Responses

201 The created end users
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
POST /v1/endusers/bulk

Queues 1 endpoints

POST /v1/queues

Create a queue.

operationId: Queues_createQueue

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateQueueInput"
      },
      "example": {
        "request": {
          "name": "MyCorp main queue",
          "priority": 1,
          "isDefault": true,
          "offerTimeout": 10,
          "wrapupTimeout": 10,
          "offerAlgorithm": "AllAtOnce",
          "queueThresholds": {
            "WaitingConversations": 10
          },
          "callFunctionality": false,
          "doNotOfferTimeouts": {
            "WidgetChat": 1
          },
          "isDoNotOfferEnabled": true,
          "preferredAgentTimeouts": {
            "Email": 43200,
            "Callback": 300,
            "WhatsApp": 300,
            "PstnPhone": 300,
            "Voicemail": 300,
            "WidgetChat": 300,
            "ContactForm": 43200,
            "FacebookMessenger": 300
          },
          "isPreferredAgentEnabled": false,
          "offerAbandonedConversations": false,
          "personalAgentOfflineTimeout": 500,
          "preferredAgentOfflineTimeout": 500
        }
      }
    }
  },
  "required": true,
  "description": "The details for creating a queue"
}

Responses

201 The created queue
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
POST /v1/queues

Tags 1 endpoints

POST /v1/tags

Create a tag.

operationId: Tags_createTag

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateTagInput"
      },
      "example": {
        "name": "test",
        "color": "#000000"
      }
    }
  },
  "required": true,
  "description": "The tag details"
}

Responses

200 The created tag or an existing tag with the same name. Note that the tag is not updated to match the input in case it already exists.
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
POST /v1/tags

Teams 1 endpoints

POST /v1/teams

Create a team.

operationId: Teams_createTeam

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateTeamInput"
      },
      "example": {
        "name": "Team A"
      }
    }
  },
  "required": true,
  "description": "The team name"
}

Responses

201 The created team
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
POST /v1/teams

Webhooks 1 endpoints

POST /v1/webhooks

Create a Webhook Subscription.

operationId: Webhooks_createSubscription

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/CreateWebhookSubscriptionInput"
      },
      "example": {
        "url": "https://example.webhook/dashboard_integration",
        "name": "Dashboard Integration",
        "events": [
          "ConversationCreated",
          "ConversationClosed"
        ],
        "enabled": true,
        "authorization": {
          "_type": "BasicAuth",
          "password": "webhook_password",
          "username": "webhook_user"
        }
      }
    }
  },
  "required": true,
  "description": "The Webhook Subscription to be created"
}

Responses

201 The created Webhook Subscription
400 Invalid value extracted from request context, Invalid value for: body, Validation failure during Webhook Subscription creation
500 Internal Server Error
POST /v1/webhooks

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"
      }
    }
  }
}