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