---
title: "Create thread"
method: POST
path: "/api/v1/threads"
tags: ["threads"]
---

# Create thread

`POST /api/v1/threads`

## Request body

- CreateThreadRequest
  - `requestId` string, required
  - `projectId` string, required
  - `title` string
  - `message` string, required
  - `model` ModelSelection
    - `modelId` string, required
    - `reasoningMode` 'none' | 'instant' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh' | 'max'
    - `modes` object
      - `fast` boolean
      - `pro` boolean
  - `machineSize` 'small' | 'medium' | 'large' | 'ultra' | 'hyper' | 'bigguy'
  - `authorId` string

## Response `200`

Thread

- ThreadEncoded
  - `id` string, required
  - `projectId` string, nullable, required
  - `authorId` string, nullable, required
  - `title` string, nullable, required
  - `titleCustom` boolean, required
  - `status` 'active' | 'waiting' | 'pending_user' | 'error' | 'ready_for_review' | 'idle' | 'archived', required
  - `archived` boolean, required
  - `lastModelId` string, nullable, required
  - `usage` UsageTotalsEncoded, required
    - `llmCredits` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `imageCredits` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `vmCredits` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
    - `totalCredits` union, required
      - number
      - 'Infinity' | '-Infinity' | 'NaN'
  - `createdAt` string, required
  - `updatedAt` string, required
  - `lastActivityAt` string, nullable, required

## Other responses

- `400` — capy/InvalidRequest
- `401` — capy/Unauthorized
- `402` — capy/PaidFeatureUnavailable
- `404` — capy/ProjectNotFound

---

[API](https://skmtc.dev/capy/apis/capy-api.md) · [All operations](https://skmtc.dev/capy/apis/capy-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/capy/capy-api/revisions/e9babb6783f3/schema)
