---
title: "Get consultation transcript"
method: GET
path: "/workspaces/{workspaceId}/consultations/{consultationId}/transcription"
tags: ["consultations"]
---

# Get consultation transcript

`GET /workspaces/{workspaceId}/consultations/{consultationId}/transcription`

## Request

- Base URL: `https://vetnio.com/api/v2`
- URL: `https://vetnio.com/api/v2/workspaces/{workspaceId}/consultations/{consultationId}/transcription`
- Auth: HTTP bearer

Returns the saved full transcript of a consultation as plain text, or an empty string if none has been saved. By default it returns immediately and does not start transcription: call `POST .../transcriptions/start` and poll `GET .../consultations/{consultationId}` until `transcriptionStatus` is `completed` or `failed` before reading it.

Set `waitForTranscriptions=true` to start transcription and wait for it in one call, using the same completion flow as document generation; this requires write access. Waiting is best effort: stale jobs, permanent failures, exhausted retries or the 10-minute limit can leave a partial transcript, and the response does not say which happened, so check `transcriptionStatus` afterwards. Set your HTTP client timeout above 10 minutes when waiting.

Any member of the workspace can read the transcript, including for archived consultations.

## Path parameters

- `workspaceId` string, required: Identifier of the clinic (workspace), as returned by `GET /workspaces`. The key's user must be a member of the clinic, or an admin of the organization it belongs to.
- `consultationId` string, required: Identifier of the consultation (UUID), as returned when it was created or by `GET /workspaces/{workspaceId}/consultations`. It must belong to the clinic in `workspaceId`.

## Query parameters

- `waitForTranscriptions` union: When `true`, first starts transcription of any untranscribed recordings (retrying failed ones) and waits until they settle, then returns the transcript. Defaults to false, which returns the saved transcript immediately without starting anything. Waiting requires write access to the consultation (`403` for archived consultations) and can hold the request open for up to 10 minutes.
  - boolean
  - 'true' | 'false'

## Response `200`

The consultation's full transcript.

- ConsultationTranscript: The consultation's saved full transcript.
  - `transcription` string, required: Full transcript as plain text, or an empty string if nothing has been transcribed yet. Built from the consultation's partial transcriptions in recording order, joined with a single space; text partial transcriptions are included verbatim. Within a recording, a change of speaker starts a new paragraph (blank line), but speakers are not labelled. Medical terms that the spelling check is very confident about are annotated inline as `term (Suggestion?)`.

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `404`: Not found
- `500`: Internal server error

---

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