---
title: "Conversation detail"
method: GET
path: "/v1/conversations/{id}"
tags: ["Conversations"]
---

# Conversation detail

`GET /v1/conversations/{id}`

## Request

- Base URL: `https://api.cadencercs.com`
- URL: `https://api.cadencercs.com/v1/conversations/{id}`
- Auth: HTTP bearer

404 rather than 403 on someone else's conversation: the id is the only secret protecting a transcript, and a 403 would confirm it is real.

## Path parameters

- `id` string, required

## Response `200`

The conversation.

- Conversation: Conversation fields are camelCase, in and out — unlike brand fields.
  - `id` string, required
  - `agentId` string, required
  - `brandId` string, required
  - `to` string, required: Recipient, E.164.
  - `channel` 'rcs' | 'sms' | 'queued'
  - `channelConfidence` 'provisional' | 'committed': `provisional` means we chose a channel and have no confirmation yet. It becomes `committed` when the channel is proven: on the first delivery receipt from the handset on RCS, or on an SMS fallback **caused by the recipient** — no RCS on their device, or your agent not launched on their carrier. A fallback caused by *us* — a rejected payload, a bad credential, a timeout — leaves this `provisional`, because it says nothing about the recipient. Committing there would mark a perfectly reachable handset SMS-only for the rest of the conversation on the strength of our own bug, and report it as a fact about their phone. See `fellBack.ourFault` on the send response.
  - `trustLevel` 'verified_rcs' | 'branded_sms' | 'unbranded_sms'
  - `state` 'OPENING' | 'OPEN' | 'USER_REPLIED' | 'CHANNEL_FLIP_TO_SMS' | 'CLOSING' | 'CLOSED' | 'CLOSED_OPTOUT', required
  - `useCase` 'transactional' | 'promo' | 'conversational' | 'leadgen'
  - `turnCount` number
  - `turnCeiling` number
  - `rcsOnly` boolean: SMS is disabled for this conversation.
  - `createdAt` string
  - `closedAt` string, nullable

## Other responses

- `401`: Missing, unknown or revoked API key.
- `403`: Key suspended, or scoped to a different brand than the one addressed.
- `404`: No conversation with that id on this key or account.
- `500`: Unexpected server error. The body is always JSON.

---

[API](https://skmtc.dev/cadencercs/apis/cadence-api.md) · [All operations](https://skmtc.dev/cadencercs/apis/cadence-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cadencercs/apis/cadence-api/revisions/9438443c2081?raw)
