---
title: "Start a conversation"
method: POST
path: "/v1/assistant/sessions"
tags: ["Assistant"]
---

# Start a conversation

`POST /v1/assistant/sessions`

## Request

- Base URL: `https://api.naturali.ai`
- URL: `https://api.naturali.ai/v1/assistant/sessions`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.naturali.ai/authorize`, token URL `https://api.naturali.ai/token`, scopes: `mcp:access`)

Opens a new, empty conversation with the Assistant. It costs nothing until a message is sent, and it does not expire.

## Response `201`

The new session.

- AssistantSession: One conversation with the Assistant in the app.
  - `id` string, required
  - `name` string, nullable, required: The name given to the conversation, else its first message cut to 60 characters; null until either.
  - `status` 'open' | 'closed' | 'expired', required: Only an `open` session takes messages.
  - `created_at` string, date-time, required
  - `last_activity_at` string, date-time, nullable, required: When the session last took a message; null until the first.

## Other responses

- `401`: Missing or invalid credentials.
- `403`: The credential cannot hold the account's conversation (`access_denied`): it is confined to one project, or it is the Assistant's own turn credential.
- `502`: The turn could not be run or read (`upstream_unavailable`).
- `503`: This deployment serves no Assistant conversation (`assistant_unavailable`).

---

[API](https://skmtc.dev/naturali/apis/naturali-ai-api.md) · [All operations](https://skmtc.dev/naturali/apis/naturali-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/naturali/apis/naturali-ai-api/revisions/e4905b78f422?raw)
