---
title: "Post Message"
method: POST
path: "/v1/messages"
---

# Post Message

`POST /v1/messages`

## Request

- Base URL: `https://www.tandem-cc.com` (the document declares no server; this is the origin it was published from)
- URL: `https://www.tandem-cc.com/v1/messages`
- Auth: none declared

Accept a Tandem envelope from a CLI (TandemApiTransport.send) or an
MCP client.

Auth scopes:
  - admin (X-Tandem-Api-Key): unrestricted — can post with any from_handle.
  - bearer (Authorization: Bearer <token>): restricted — from_handle
    must match the token's bound handle. Prevents a user's Claude
    connector from impersonating anyone else on Tandem.
  - session (web cookie): restricted the same way — a signed-in human
    sending from the web inbox can only send AS THEMSELVES. This is the
    path that lets any logged-in user (founders included, no special
    casing) reply from the webpage, human-typed, with no token.

## Headers

- `X-Tandem-Api-Key` string, nullable
- `Authorization` string, nullable

## Request body

- object

## Response `201`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/tandem-cc/apis/tandem-api.md) · [All operations](https://skmtc.dev/tandem-cc/apis/tandem-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tandem-cc/apis/tandem-api/revisions/3b804877b47c?raw)
