---
title: "Start a transcribe"
method: POST
path: "/service_agents/transcribes"
tags: ["Service Agent"]
---

# Start a transcribe

`POST /service_agents/transcribes`

Starts a transcription of the given reference (call, conference, or recording) for the service agent's customer and returns the result. Duplicate behavior differs by reference type: for a recording that already has a transcribe in the requested language, the existing transcribe is returned (200); for a call/confbridge that already has a progressing live transcribe in the requested language, the request is rejected with 409. Stop the existing transcribe first, or start with a different language.

## Request body

- object
  - `reference_type` 'unknown' | 'recording' | 'call' | 'confbridge', required
  - `reference_id` string, required — The ID of the reference for the transcription.
  - `language` string, required — The language of the transcription.
  - `direction` 'both' | 'in' | 'out'
  - `provider` '' | 'gcp' | 'aws'
  - `on_end_flow_id` string, uuid — The flow to execute when the transcription ends. The flow ID returned from the POST /flows or GET /flows response. If omitted, no follow-up flow is executed.

## Response `200`

The created transcribe details.

- TranscribeManagerTranscribe
  - `id` string, uuid — The unique identifier of the transcribe session. Returned from the `POST /transcribes` or `GET /transcribes` response.
  - `customer_id` string, uuid — The unique identifier of the customer who owns this transcribe session. Returned from the `GET /customers` response.
  - `activeflow_id` string, uuid — The unique identifier of the activeflow associated with this transcribe session. Returned from the `POST /activeflows` or `GET /activeflows` response.
  - `on_end_flow_id` string, uuid — The unique identifier of the flow to execute when the transcribe session ends. Returned from the `POST /flows` or `GET /flows` response.
  - `reference_type` 'unknown' | 'recording' | 'call' | 'confbridge'
  - `reference_id` string, uuid — The unique identifier of the resource being transcribed (call, conference, or recording). Returned from the corresponding resource endpoint.
  - `status` 'progressing' | 'done'
  - `language` string — BCP47 type's language code.
  - `direction` 'both' | 'in' | 'out'
  - `provider` '' | 'gcp' | 'aws'
  - `tm_create` string, date-time — Timestamp when created
  - `tm_update` string, date-time — Timestamp when updated
  - `tm_delete` string, date-time — Timestamp when deleted

## Other responses

- `400` — Invalid request (INVALID_ARGUMENT).
- `401` — Authentication required (UNAUTHENTICATED).
- `409` — State conflict (ALREADY_EXISTS or FAILED_PRECONDITION).
- `500` — Internal error (INTERNAL).

---

[API](https://skmtc.net/voipbin/apis/voipbin-api.md) · [All operations](https://skmtc.net/voipbin/apis/voipbin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voipbin/voipbin-api/versions/79e779080bcc/schema)
