> ## Documentation Index
> Fetch the complete documentation index at: https://help.texterchat.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Enums & Common Fields

> Every status value, type enum and identifier in one place

cheat sheet for the values you'll meet across requests, responses and webhook payloads. Each object and endpoint page also repeats the values it uses, so you don't have to come back here - but this is the complete picture.

## Chat status

Appears as: `chat.status`, `newChatStatus` (system messages), template `chatStatus`, `replyAction.chatStatus`, and the `statuses[]` filter of [Search Chats](/api-reference/chats/search-chats) (which takes the **names**, not the numbers).

| Value | Name       | Meaning                                        |
| ----- | ---------- | ---------------------------------------------- |
| `0`   | `BOT`      | Handled by the bot                             |
| `1`   | `PENDING`  | Waiting for a human agent                      |
| `2`   | `ASSIGNED` | Taken by an agent (shown as "Taken" in Texter) |
| `3`   | `RESOLVED` | Conversation finished                          |
| `4`   | `BULK`     | Created/affected by a bulk send                |

## Message status

Appears as: `message.status`, `statusHistory[].status`, and `messageStatus` in the [Message Status Changed](/api-reference/webhooks/message-events/message-status-changed) webhook.

| Value | Meaning                                                         |
| ----- | --------------------------------------------------------------- |
| `0`   | **Sent** - sent from the platform                               |
| `1`   | **Accepted** - accepted by the provider (e.g. Meta received it) |
| `2`   | **Delivered** - delivered to the recipient's device             |
| `3`   | **Seen** - read/opened by the recipient (blue ticks)            |
| `4`   | **Failed** - failed to deliver (e.g. invalid number)            |
| `5`   | **Channel Failed** - system/channel level failure               |
| `6`   | **Deleted** - message was deleted                               |

## Channels

`channelInfo.name`, `channel` query filters, quick-reply targets, problem `channel`:

`whatsapp` · `messenger` · `instagram` · `website_chat` · `email` · `sms`

## Message content types

`message.type` and the `type` of [Send a Message to Chat](/api-reference/messages/send-a-message-to-chat) bodies:

| Type       | Direction | Content field                                     |
| ---------- | --------- | ------------------------------------------------- |
| `text`     | both      | `text`                                            |
| `media`    | both      | `media[]`                                         |
| `contacts` | both      | `contacts[]`                                      |
| `location` | both      | `location`                                        |
| `buttons`  | outgoing  | `text` + `buttons[]`                              |
| `list`     | outgoing  | `text` + `list`                                   |
| `postback` | incoming  | `postback` (the button/row the contact chose)     |
| `special`  | both      | `special` (channel-specific, e.g. template sends) |

## Media types

`media[].mediaType`: `image` · `video` · `document` · `audio` · `sticker` (Sending supports `image`, `video`, `document`, `audio`; `sticker` appears on received messages.)

## Template localization status

`provider_template.localizations[].status`:

| Status             | Meaning                                      |
| ------------------ | -------------------------------------------- |
| `REQUESTED`        | Submitted, waiting for WhatsApp              |
| `SUBMIT_FAILED`    | Submission to WhatsApp failed                |
| `PENDING`          | Under WhatsApp review                        |
| `APPROVED`         | Approved - can be sent                       |
| `REJECTED`         | Rejected by WhatsApp (see `rejectionReason`) |
| `DELETION_PENDING` | Deletion requested, not yet final            |
| `DELETED`          | Deleted at WhatsApp                          |
| `SUBMITTED`        | Accepted for processing                      |

## Template category

`provider_template.category`: `MARKETING` · `UTILITY` - WhatsApp may recategorize on approval.

## Quick reply display position

`display.position`: `top` · `main`

## Scenario run step types

`steps[].type` in [Scenario Runs](/api-reference/objects/scenario-run): `event` · `loader` · `condition` · `action` · `loop`

## Identifier cheat sheet

Which ID goes where - the most common source of confusion:

| Identifier                                         | Looks like                 | Where you get it                                                                        | Where you use it                                                                              |
| -------------------------------------------------- | -------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| **Chat ID** (`chat._id`)                           | `67bf11038b24880cc966f799` | [Search Chats](/api-reference/chats/search-chats)                                       | Path of all `/chats/{chatId}` and `/messages/*/{chatId}` endpoints; quick-reply `target[].id` |
| **Contact ID** (`channelInfo.id`)                  | `972521234567`             | Chat/message objects                                                                    | `to` when sending templates                                                                   |
| **Account ID** (`channelInfo.accountId`)           | `972586640430`             | Chat/message objects, Texter settings                                                   | `from`, template paths `/whatsapp/templates/{accountId}`, filters                             |
| **Provider message ID** (`message.channelInfo.id`) | `wamid.HBgMOTcy...`        | Message objects, webhook `externalId`                                                   | `context` when replying to a message                                                          |
| **Message ID** (`message._id`)                     | `69062b15962e17ab3033f886` | Message objects                                                                         | `beforeId` pagination cursor                                                                  |
| **File ID** (`media[].fileId`)                     | `6900c1eac29d42708adac92f` | Message media items                                                                     | [Generate Public Media URL](/api-reference/files/generate-public-media-url), re-sending media |
| **Bot session ID** (`botState.id`)                 | 64-char hex                | Chat `botState` / `previousBotSession`                                                  | `botSessionId` filter of [Get Messages](/api-reference/messages/get-messages-of-a-chat)       |
| **Template name** (`template.name`)                | `bulk_marketing_272`       | [List All Templates](/api-reference/manage-templates/list-all-templates)                | `templateName` when sending, template paths                                                   |
| **Label ID** (`label.id`)                          | `hot_lead`                 | [List All Labels](/api-reference/labels/list-all-labels)                                | `chat.labels`, label filters, label management                                                |
| **Scenario ID** (`scenario._id`)                   | `6970b3c1d2e3f40123456789` | [List All Subscriptions](/api-reference/subscribe-to-events/list-all-subscriptions)     | Subscription manage endpoints                                                                 |
| **Agent UID**                                      | `4d170fc7-5cd6-...`        | `chat.agent.uid`, [Chat Taken](/api-reference/webhooks/chat-events/chat-taken) payloads | `agentUid` in [Assign Chat](/api-reference/chats/assign-chat)                                 |
| **Department ID**                                  | `customer_service`         | Texter settings                                                                         | `departmentId`, template `departments[]`                                                      |
