# A meeting's transcript

> The meeting's recordings' transcript lines in order, without speaker labels. Billed as one transcripts request a page. An empty page means no transcript is held yet, never that nothing was said.

`GET /v1/meetings/{id}/transcript`

The meeting's recordings' transcript lines in order, without speaker labels. Billed as one transcripts request a page. An empty page means no transcript is held yet, never that nothing was said.

Authentication: `Authorization: Bearer <key>`, an `htd_test_` (sandbox) or `htd_live_` (live) key.

```bash
curl "https://data.heytownhall.com/v1/meetings/123456/transcript" \
  -H "Authorization: Bearer $HTD_KEY"
```

## Parameters

| Name | In | Required | Description |
| --- | --- | --- | --- |
| `id` | path | yes |  |
| `limit` | query | no | Lines a page, 1 to 100. Default 100. |
| `cursor` | query | no | next_cursor from the previous page. |

## Fields of each result

| Field | Type | Description |
| --- | --- | --- |
| `id` | string |  |
| `recording_id` | string |  |
| `start_ms` | number |  |
| `end_ms` | number or null |  |
| `text` | string |  |
| `source_url` | string or null | The page, document, video or platform the record was read from. |
| `read_at` | string or null | When it was read. |

## Answers

| Status | Meaning |
| --- | --- |
| `200` | A page of lines. |
| `400` | invalid_request: a parameter is missing or not valid; `param` names it. |
| `401` | unauthorized: no key, or not a valid one. |
| `402` | billing_required (a live key without a payment method, or paused for an unpaid invoice) or spend_cap_reached. |
| `404` | not_found: no such record, or it is no longer published. |
| `429` | rate_limited: past the key's requests per minute. Retry-After says when to try again. |
| `503` | upstream_unavailable: the data could not be read. Not an empty answer; try again. |
