---
title: "Send message"
---

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

Path: Shiba public API

`POST /threads/{threadId}/message`

## Authentication

- `bearerAuth`, http, header `Authorization`, format `API key`

## Request body

- `text` (`post/threads/threadId/message.text`; string, required)
- `delivery` (`post/threads/threadId/message.delivery`; string, optional)
  - one of `"queue"`, `"steer"`, `"interrupt"`
- `clientKey` (`post/threads/threadId/message.clientKey`; string, optional)
  - maxLength 64

## Example request

```json
{
  "text": "string",
  "delivery": "queue",
  "clientKey": "string"
}
```

## Code samples

### cURL

```bash
curl --request POST \
  --url '<base-url>/api/v1/threads/%7BthreadId%7D/message' \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "text": "string",
  "delivery": "queue",
  "clientKey": "string"
}
'
```

### TypeScript

```typescript
const url = '<base-url>/api/v1/threads/%7BthreadId%7D/message';
const options = {
  method: 'POST',
  headers: {'Content-Type': 'application/json', Authorization: 'Bearer <token>'},
  body: JSON.stringify({text: 'string', delivery: 'queue', clientKey: 'string'})
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));
```

### Python

```python
import requests

url = "<base-url>/api/v1/threads/%7BthreadId%7D/message"

payload = {
    "text": "string",
    "delivery": "queue",
    "clientKey": "string"
}
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer <token>"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
```

## Responses

### 200

AdmitReceipt


Source: https://tryshiba.dev/reference/api/post/threads/threadId/message/index.md
