---
title: "Create background wait"
method: POST
path: "/chat/triggers"
tags: ["triggers"]
---

# Create background wait

`POST /chat/triggers`

## Request

- Base URL: `https://api.rhythms.ai`
- URL: `https://api.rhythms.ai/chat/triggers`
- Auth: none required

Create a one-time wait from a trusted signed Chat V2 operation. Identical operation retries return the saved wait.

## Request body

- object
  - `thread_uuid` string, required: Trusted origin conversation UUID
  - `request_id` string: Stable trusted operation key; derived when omitted
  - `connector_stable_ids` string[]: Up to 20 connector stable IDs; resolves selected authorized accounts for MCP polling. Alternative to settings.connection_uuids.
  - `settings` object, required
    - `title` string, required: Short human title, up to 200 characters
    - `condition_summary` string, required: Readable condition, up to 1000 characters
    - `source_summary` string, required: Readable source label, up to 200 characters
    - `continuation_instructions` string, required: Saved task, up to 20000 characters
    - `origin_message_uuid` string, required: Trusted origin assistant message UUID
    - `connection_uuids` string[], required: Exact selected source connections (up to 20)
    - `expires_at` string: ISO8601 deadline; default/max 30 days
  - `detector` object, required
    - `mode` 'scheduled' | 'mcp_polling', required: Detector mode
    - `due_at` string: Scheduled ISO8601 time
    - `timezone` string: Scheduled IANA timezone
    - `poll_frequency_seconds` number: Polling interval of at least 300 seconds
    - `code_version` number: Polling code version
    - `code` string: Polling detector code
    - `entrypoint` string: Polling function name
    - `state_contract` object
      - `cursor_kind` string, required: Cursor kind
      - `initial_state` object, required: Initial watermark
      - `invariant` string, required: Cursor invariant
      - `cursor_field` string: Monotonic cursor field
    - `trigger_config` object: Noncredential source configuration

## Other responses

- `400`: Bad Request - Invalid parameters or malformed request
- `401`: Unauthorized - Invalid or missing authentication
- `403`: Forbidden - User lacks permission to access this resource
- `404`: Not Found - Resource does not exist
- `422`: Unprocessable Entity - Invalid request parameters or validation errors
- `429`: Too Many Requests - Rate limit exceeded
- `500`: Internal Server Error - Unexpected server error

## Changes

- **2026-10-15** `7ed8cef9d8e9`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rhythms/apis/rhythms-params-in-body/changes/chat/triggers/post.md)

---

[API](https://skmtc.dev/rhythms/apis/rhythms-params-in-body.md) - [All operations](https://skmtc.dev/rhythms/apis/rhythms-params-in-body/llms.txt) - [OpenAPI document](https://skmtc.dev/rhythms/apis/rhythms-params-in-body/revisions/3776068254ff?raw)
