Tickets

Start an outbound ticket

Starts a new conversation with a customer, the API equivalent of "Create ticket" in the app. The first message is outbound and is queued for delivery to the recipients, sent by the user the token belongs to. Workflows, AI title generation and notifications all run as they do for any new ticket. The channel must be an email channel with verified DNS records; a channel the token cannot reach is a 404.

post/tickets/compose

Request

  • Base URL: https://there-there.app/api
  • URL: https://there-there.app/api/tickets/compose
  • Auth: HTTP bearer

Headers

X-Workspace-Idinteger

Workspace ID this request targets. Required for tokens that have access to multiple workspaces or to all workspaces. Optional for tokens scoped to a single workspace (auto-resolved). Find the ID under Settings > Account > API Tokens or Settings > Workspace > General.

Request body

channelstring required

Channel ULID. Must be an email channel that is ready to send.

subjectstring required
tostring[] required

Recipients. The first one becomes the ticket's contact.

ccstring[]
bccstring[]
tagsstring[]

Tag names to put on the ticket. Matched on the tag name, ignoring casing and surrounding whitespace. A name that matches no tag in the workspace is created, but only for a token belonging to a workspace admin; for anyone else it is a 422. Two names that only differ in punctuation cannot both exist, so asking for one the workspace already occupies is a 422 as well.

Example request

{
  "message": {
    "attachment_ids": [
      "upl_invoice_8f3c1a"
    ]
  },
  "tags": [
    "Billing"
  ]
}

Response

Ticket created and the outbound message queued

Example response

{
  "data": {
    "custom_fields": [
      {
        "name": "Reported version",
        "options": [
          {
            "name": "Laravel",
            "color": "#FCA5A5",
            "icon": "flame"
          }
        ]
      }
    ]
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.