# Status operations

Exact methods, permissions, request bodies and query fields for status operations.

## Get all contact status updates

GET /api/v1/channels/{channel_id}/stories

Token scope: read. Paid access and a ready, customer-owned session are required. List responses are bounded; use documented pagination parameters.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.







```json
{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "required": []
}
```





## Get status updates from a specific contact

GET /api/v1/channels/{channel_id}/stories/{id}

Token scope: read. Paid access and a ready, customer-owned session are required. List responses are bounded; use documented pagination parameters.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.







```json
{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "required": []
}
```





## Delete own status

DELETE /api/v1/channels/{channel_id}/stories/{id}

Token scope: manage. Paid access and a ready, customer-owned session are required. Supply an Idempotency-Key. Returns an operation ID; inspect /api/v1/operations/{id}. A completed result is recorded; an unconfirmed result is uncertain and never automatically retried.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.







```json
{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "required": []
}
```





## Stream a stored status media file

GET /api/v1/channels/{channel_id}/stories/{statusId}/media

Token scope: read. Paid access and a ready, customer-owned session are required. List responses are bounded; use documented pagination parameters.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.







```json
{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "required": []
}
```





## Post a text status

POST /api/v1/channels/{channel_id}/stories/send-text

Token scope: send. Paid access and a ready, customer-owned session are required. Supply an Idempotency-Key. Returns HTTP 202 and a queued message ID; inspect /api/v1/messages/{id}.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.



- `text` (string, required): Maximum 4096 characters. See JSON schema for all validation constraints.
- `backgroundColor` (string): Maximum 4096 characters. See JSON schema for all validation constraints.
- `font` (number): Allowed: [0,1,2,6,7,8,9,10]. See JSON schema for all validation constraints.
- `recipients` (array): Maximum 100 items. See JSON schema for all validation constraints.



```json
{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "minLength": 1,
      "maxLength": 4096
    },
    "backgroundColor": {
      "type": "string",
      "maxLength": 4096
    },
    "font": {
      "type": "number",
      "enum": [
        0,
        1,
        2,
        6,
        7,
        8,
        9,
        10
      ]
    },
    "recipients": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 4096
      }
    }
  },
  "required": [
    "text"
  ],
  "additionalProperties": false
}
```





## Post an image status

POST /api/v1/channels/{channel_id}/stories/send-image

Token scope: send. Paid access and a ready, customer-owned session are required. Supply an Idempotency-Key. Returns HTTP 202 and a queued message ID; inspect /api/v1/messages/{id}.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.



- `image` (object, required): See JSON schema for all validation constraints.
- `caption` (string): Maximum 1024 characters. See JSON schema for all validation constraints.
- `recipients` (array): Maximum 100 items. See JSON schema for all validation constraints.



```json
{
  "type": "object",
  "properties": {
    "image": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "maxLength": 2048
        },
        "base64": {
          "type": "string",
          "maxLength": 1400000,
          "pattern": "^[A-Za-z0-9+/]+={0,2}$"
        },
        "mimetype": {
          "type": "string",
          "maxLength": 4096
        }
      },
      "required": [],
      "additionalProperties": false
    },
    "caption": {
      "type": "string",
      "maxLength": 1024
    },
    "recipients": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 4096
      }
    }
  },
  "required": [
    "image"
  ],
  "additionalProperties": false
}
```





## Post a video status

POST /api/v1/channels/{channel_id}/stories/send-video

Token scope: send. Paid access and a ready, customer-owned session are required. Supply an Idempotency-Key. Returns HTTP 202 and a queued message ID; inspect /api/v1/messages/{id}.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.



- `video` (object, required): See JSON schema for all validation constraints.
- `caption` (string): Maximum 1024 characters. See JSON schema for all validation constraints.
- `recipients` (array): Maximum 100 items. See JSON schema for all validation constraints.



```json
{
  "type": "object",
  "properties": {
    "video": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "maxLength": 2048
        },
        "base64": {
          "type": "string",
          "maxLength": 1400000,
          "pattern": "^[A-Za-z0-9+/]+={0,2}$"
        },
        "mimetype": {
          "type": "string",
          "maxLength": 4096
        }
      },
      "required": [],
      "additionalProperties": false
    },
    "caption": {
      "type": "string",
      "maxLength": 1024
    },
    "recipients": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 4096
      }
    }
  },
  "required": [
    "video"
  ],
  "additionalProperties": false
}
```





## Post an audio status as a voice note

POST /api/v1/channels/{channel_id}/stories/send-voice

Token scope: send. Paid access and a ready, customer-owned session are required. Supply an Idempotency-Key. Returns HTTP 202 and a queued message ID; inspect /api/v1/messages/{id}.

Upstream permissions and engine support apply. Unsupported operations may return 501; WhatsApp can refuse actions even when a session is connected.



- `audio` (object, required): See JSON schema for all validation constraints.
- `backgroundColor` (string): Maximum 4096 characters. See JSON schema for all validation constraints.
- `recipients` (array): Maximum 100 items. See JSON schema for all validation constraints.



```json
{
  "type": "object",
  "properties": {
    "audio": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "maxLength": 2048
        },
        "base64": {
          "type": "string",
          "maxLength": 1400000,
          "pattern": "^[A-Za-z0-9+/]+={0,2}$"
        },
        "mimetype": {
          "type": "string",
          "maxLength": 4096
        }
      },
      "required": [],
      "additionalProperties": false
    },
    "backgroundColor": {
      "type": "string",
      "maxLength": 4096
    },
    "recipients": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 4096
      }
    }
  },
  "required": [
    "audio"
  ],
  "additionalProperties": false
}
```



