> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cleartextlabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API Overview

> Overview of the Transcord API endpoints

## Base URL

All API requests should be made to:

```
https://app.transcord.app/api/v1
```

## Authentication

Include your API key in the `Authorization` header:

```bash theme={null}
Authorization: Bearer tr_live_your_api_key
```

See [Authentication](/transcord/authentication) for details on getting and managing API keys.

## Endpoints

### Account

| Method | Endpoint                                                            | Description                              |
| ------ | ------------------------------------------------------------------- | ---------------------------------------- |
| GET    | [`/v1/me`](/transcord/api-reference/account/get-me)                 | Get current user and subscription info   |
| PUT    | [`/v1/me`](/transcord/api-reference/account/update-me)              | Update user settings (name, timezone)    |
| GET    | [`/v1/subscription`](/transcord/api-reference/account/subscription) | Get detailed subscription and usage info |
| GET    | [`/v1/plans`](/transcord/api-reference/account/plans)               | List available subscription plans        |
| GET    | [`/v1/timezones`](/transcord/api-reference/account/timezones)       | List supported timezones                 |

### Calls

| Method | Endpoint                                               | Description              |
| ------ | ------------------------------------------------------ | ------------------------ |
| POST   | [`/v1/calls`](/transcord/api-reference/calls/initiate) | Initiate a recorded call |
| GET    | [`/v1/calls`](/transcord/api-reference/calls/list)     | List recent calls        |

### Recordings

| Method | Endpoint                                                                              | Description                            |
| ------ | ------------------------------------------------------------------------------------- | -------------------------------------- |
| GET    | [`/v1/recordings`](/transcord/api-reference/recordings/list)                          | List all recordings                    |
| GET    | [`/v1/recordings/:id`](/transcord/api-reference/recordings/get)                       | Get a single recording with transcript |
| DELETE | [`/v1/recordings/:id`](/transcord/api-reference/recordings/delete)                    | Delete a recording                     |
| GET    | [`/v1/recordings/:id/transcript`](/transcord/api-reference/recordings/get-transcript) | Get transcript in various formats      |
| GET    | [`/v1/recordings/:id/audio`](/transcord/api-reference/recordings/get-audio)           | Get audio file URL                     |
| GET    | [`/v1/recordings/:id/export`](/transcord/api-reference/recordings/export)             | Export transcript as Word document     |
| GET    | [`/v1/recordings/search`](/transcord/api-reference/recordings/search)                 | Full-text search in transcripts        |

## Response Format

All responses are JSON with consistent structure:

### Success Response

```json theme={null}
{
  "data": [...],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 100,
    "totalPages": 5,
    "hasMore": true
  }
}
```

### Error Response

```json theme={null}
{
  "error": "Description of what went wrong"
}
```

## HTTP Status Codes

| Code  | Meaning                                         |
| ----- | ----------------------------------------------- |
| `200` | Success                                         |
| `202` | Accepted - Resource is still processing         |
| `400` | Bad Request - Invalid parameters                |
| `401` | Unauthorized - Invalid or missing API key       |
| `403` | Forbidden - Valid key but no access to resource |
| `404` | Not Found - Resource doesn't exist              |
| `429` | Too Many Requests - Rate limit exceeded         |
| `500` | Internal Server Error                           |

## Rate Limits

* **100 requests per minute** per API key
* Rate limit headers are included in responses:
  * `X-RateLimit-Limit`: Maximum requests per window
  * `X-RateLimit-Remaining`: Requests remaining
  * `X-RateLimit-Reset`: Unix timestamp when limit resets

## Pagination

List endpoints support pagination with these parameters:

| Parameter | Type    | Default | Description                |
| --------- | ------- | ------- | -------------------------- |
| `page`    | integer | 1       | Page number (1-indexed)    |
| `limit`   | integer | 20      | Results per page (max 100) |

Response includes pagination info:

```json theme={null}
{
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 47,
    "totalPages": 3,
    "hasMore": true
  }
}
```
