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

PATCH /v1/agents

Bulk patch agents/admins.

operationId: Agents_bulkPatch

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/AgentsBulkPatchRequest"
      },
      "example": [
        {
          "id": "434ce9f5-14c8-4be1-a0a8-f755010deb9bX",
          "displayName": "AB",
          "middleNames": [],
          "additionalEmails": [],
          "additionalPhoneNumbers": []
        },
        {
          "id": "434ce9f5-14c8-4be1-a0a8-f755010deb9c",
          "displayName": "JB",
          "middleNames": [],
          "additionalEmails": [],
          "additionalPhoneNumbers": []
        }
      ]
    }
  },
  "required": false,
  "description": "List of agent/admin patch actions"
}

Responses

200 The list of patch action outcomes
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
PATCH /v1/agents
PATCH /v1/agents/{agentId}

Patch an agent/admin.

operationId: Agents_updateAdmin

Parameters

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

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/PatchAgentInput"
      },
      "example": {
        "lastName": "Brown",
        "avatarUrl": "http://avatar.url",
        "firstName": "Alice",
        "displayName": "Alice Brown",
        "middleNames": [],
        "additionalEmails": [],
        "additionalPhoneNumbers": []
      }
    }
  },
  "required": true,
  "description": "The agent/admin patch"
}

Responses

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

Conversations 3 endpoints

PATCH /v1/conversations/{conversationId}/anonymize

Request the anonymization of a conversation.

operationId: Conversations_anonymizeConversation

Parameters

Name In Required Type Description
conversationId path required integer the id of the conversation to anonymize
force query optional boolean Whether to force close the conversation if it is found in a non closed state.

Responses

202 The conversation's anonymization request status
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: query parameter force
404
409
500
PATCH /v1/conversations/{conversationId}/anonymize
PATCH /v1/conversations/{conversationId}/messages/{messageId}/anonymize

Request the anonymization of a single message in a conversation.

operationId: Conversations_anonymizeMessage

Parameters

Name In Required Type Description
conversationId path required integer the id of the conversation in which the message belongs
messageId path required string the id of the message to anonymize

Responses

202 The message's anonymization request status
400 Invalid value for: path parameter conversationId, Invalid value for: path parameter messageId, Invalid value extracted from request context
404
409
500
PATCH /v1/conversations/{conversationId}/messages/{messageId}/anonymize
PATCH /v1/conversations/{conversationId}/custom-attributes

Patch custom attributes of a conversation

operationId: Conversations_updateCustomAttributes

Parameters

Name In Required Type Description
conversationId path required integer

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/Map_UUID_Option_AttributeValue"
      },
      "example": {
        "2f5515b6-7e98-4f4d-9010-bfd2a27d4f35": "012345",
        "e14708a6-eed9-495c-9d88-c72331e9e247": [
          "str1",
          "str2"
        ]
      }
    }
  },
  "required": true,
  "description": "The custom attributes of an conversation to be patched. This should map the custom attribute id to the desired attribute value. Format: Map[UUID, Option[AttributeValue]."
}

Responses

200 The patched conversation attributes
400 Invalid value for: path parameter conversationId, Invalid value extracted from request context, Invalid value for: body, Invalid input for patching
401 The user who issued the access token used in the request is not authorized to perform the operation
404 An entity in this request could not be found
PATCH /v1/conversations/{conversationId}/custom-attributes

End users 4 endpoints

PATCH /v1/endusers

Bulk patch end users.

operationId: EndUsers_bulkPatch

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/BulkPatchEndUsersInput"
      },
      "example": {
        "data": [
          {
            "id": "43b1fe06-a7c4-4f34-8e48-b0559e6acdb9",
            "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": "List of end user patch actions"
}

Responses

200 The patched end users
400 Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
PATCH /v1/endusers
PATCH /v1/endusers/{userId}

Patch an end user.

operationId: EndUsers_updateUser

Parameters

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

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/PatchEndUserInput"
      },
      "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 patch"
}

Responses

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

Request the anonymization of an end user.

operationId: EndUsers_anonymizeUser

Parameters

Name In Required Type Description
userId path required string The id of the end user to anonymize
force query optional boolean Whether to force close all the conversations initiated by the end user, if any are found in a non closed state.

Responses

202 The end user's anonymization request status
400
404
409
500
PATCH /v1/endusers/{userId}/anonymize
PATCH /v1/endusers/{userId}/custom-attributes

Patch custom attributes of an end user

operationId: EndUsers_updateCustomAttributes

Parameters

Name In Required Type Description
userId path required string

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/Map_UUID_Option_AttributeValue"
      },
      "example": {
        "274e5a2c-be0d-42c0-b725-3dd533729f68": "abcdef",
        "befae0d9-9679-42b9-af76-e76f64e28429": [
          "example1",
          "example2"
        ]
      }
    }
  },
  "required": true,
  "description": "The custom attributes of an end user to be patched. This should map the custom attribute id to the desired attribute value. Format: Map[UUID, Option[AttributeValue]."
}

Responses

200 The patched end user attributes
400 Invalid value for: path parameter userId, Invalid value extracted from request context, Invalid value for: body, Invalid input for patching
401 The user who issued the access token used in the request is not authorized to perform the operation
404 An entity in this request could not be found
PATCH /v1/endusers/{userId}/custom-attributes

Queues 1 endpoints

PATCH /v1/queues/{queueId}/members

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

operationId: Queues_assignMembers

Parameters

Name In Required Type Description
queueId path required string

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/BulkQueueEndpointInput"
      },
      "example": {
        "agentIds": [
          "c31e5e3f-1d5f-4442-83df-fd7bddd59da4",
          "26ae145b-8644-4fa5-aa56-7b3dcacbe2d4"
        ]
      }
    }
  },
  "required": true,
  "description": "The list of agents/admins to be added to the queue"
}

Responses

200 The list of patch action outcomes
400 Invalid value for: path parameter queueId, Invalid value extracted from request context, Invalid value for: body
404 An entity in this request could not be found
500 Internal failure during request processing
PATCH /v1/queues/{queueId}/members

Tags 2 endpoints

PATCH /v1/tags/{tagId}/activate

Activate a tag.

operationId: Tags_activateTag

Parameters

Name In Required Type Description
tagId path required string The tag id

Responses

204 The tag was successfully activated
400 Invalid value for: path parameter tagId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
PATCH /v1/tags/{tagId}/activate
PATCH /v1/tags/{tagId}/deactivate

Deactivate a tag.

operationId: Tags_deactivateTag

Parameters

Name In Required Type Description
tagId path required string The tag id

Responses

204 The tag was successfully deactivated
400 Invalid value for: path parameter tagId, Invalid value extracted from request context
404 An entity in this request could not be found
500 Internal failure during request processing
PATCH /v1/tags/{tagId}/deactivate

Teams 1 endpoints

PATCH /v1/teams/{teamId}/agents

Add agents/admins to a team.

operationId: Teams_addMembers

Parameters

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

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/AgentsToTeamInput"
      },
      "example": {
        "agentIds": [
          "912d5148-6918-4420-b23a-8584b896c8ae",
          "a8080cf3-9d55-41dd-a8ef-b02414399e7a"
        ]
      }
    }
  },
  "required": true,
  "description": "List of agent/admin ids to add to the specified team"
}

Responses

200
400 Invalid value for: path parameter teamId, Invalid value extracted from request context, Invalid value for: body
500 Internal failure during request processing
PATCH /v1/teams/{teamId}/agents

Webhooks 1 endpoints

PATCH /v1/webhooks/{webhookSubscriptionId}

Patch a Webhook Subscription.

operationId: Webhooks_updateSubscription

Parameters

Name In Required Type Description
webhookSubscriptionId path required string

Request Body

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/PatchWebhookSubscriptionInput"
      },
      "example": {
        "name": "New name",
        "events": [
          "ConversationNoteAdded"
        ],
        "authorization": {
          "_type": "TokenAuth",
          "value": "eyDoiGciOqGYUzI1NiJ4.eyJ0eQJRUapoYXBpIiwib4JxA5lkIjoiNTVmMmE6MmItYjU4NF33MDMxLTk2NTktOTE2M.qPoOZoQYDn4rn-akaLmVFka15JAV7TF6QT8UHOUTIy0"
        }
      }
    }
  },
  "required": true,
  "description": "The Webhook Subscription fields to be patched"
}

Responses

200 The patched Webhook Subscription
400 Invalid value for: path parameter webhookSubscriptionId, Invalid value extracted from request context, Invalid value for: body, Validation failure during Webhook Subscription patching
500 Internal Server Error
PATCH /v1/webhooks/{webhookSubscriptionId}

Schemas

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