---
title: "Create call recording"
method: POST
path: "/v2/meetings/{meeting_id}/call_recordings"
tags: ["Call recordings"]
---

# Create call recording

`POST /v2/meetings/{meeting_id}/call_recordings`

## Request

- Base URL: `https://api.attio.com`
- URL: `https://api.attio.com/v2/meetings/{meeting_id}/call_recordings`
- Auth: OAuth 2
  - Authorization code: `https://app.attio.com/authorize`
  - Token URL: `https://app.attio.com/oauth/token` scopes: `meeting:read`, `call_recording:read-write`

Create a call recording for a meeting. This endpoint is rate limited to 1 request per second.

A `transcript` is required. `video_url` is optional, and a transcript-only call recording (with no video) is fully supported.

This endpoint is in beta. We will aim to avoid breaking changes, but small updates may be made as we roll out to more users.

Required scopes: `meeting:read`, `call_recording:read-write`.

Supported token levels: `workspace`, `user`.

## Path parameters

- `meeting_id` string, uuid, required: The ID of the meeting this recording belongs to.

## Request body

- object
  - `data` object, required
    - `video_url` string, uri: A publicly accessible URL to a video file of the call recording. Attio will download the video from this URL asynchronously. This field is optional — a call recording can be created with only a `transcript` and no video. **Requirements:** - **Protocol:** The URL must use the `https` protocol. - **File type:** The file must be a `.mp4` file. - **File size:** The file must not exceed 1GB in size. - **Accessibility:** For the request to be accepted, the URL must be publicly accessible. Attio will make a `HEAD` request to the URL to verify its accessibility and retrieve file metadata. The response to this request must include a `Content-Length` header.
    - `transcript` object[], required: The call recording's transcript. It must contain at least one transcript segment.
      - `speech` string, required: The spoken text for this segment of the transcript.
      - `start_time` number, required: The start time of this speech segment in seconds.
      - `end_time` number, required: The end time of this speech segment in seconds.
      - `speaker` object, required
        - `name` string, required: The name of the speaker.
        - `email_address` string, email: The email address of the speaker.

## Response `200`

Success

- object: Success
  - `data` object, required
    - `id` object, required
      - `workspace_id` string, uuid, required: The ID of the workspace this call recording belongs to.
      - `meeting_id` string, uuid, required: The ID of the meeting associated with this call recording.
      - `call_recording_id` string, uuid, required: The call recording ID of the call recording.
    - `status` 'processing' | 'completed' | 'failed', required: The status of the call recording. When a call recording is first created, it will have a status of `PROCESSING`. Once the recording is ready, it will transition to `COMPLETED`. If the recording fails for any reason, the status will be `FAILED`.
    - `web_url` string, uri, required: A URL that links directly to the call recording in the Attio web application.
    - `created_by_actor` object, required: The actor that created this call recording.
      - `id` string, nullable: An ID to identify the actor.
      - `type` 'api-token' | 'workspace-member' | 'system' | 'app', nullable: The type of actor. [Read more information on actor types here](/docs/actors).
    - `created_at` string, required: The timestamp of when the call recording was created.

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found

## Changes

- **2026-10-27** `04bba5d0afc1`: 2 breaking
  - the request property `data/transcript` became required
  - the `data/transcript` request property's minItems was increased to `1`
- **2026-07-26** `0eb6da8a7a07`: 2 info
  - added the new optional request property `data/transcript`
  - the request property `data/video_url` became optional
- **2026-04-03** `13264572d2cf`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/attio/apis/attio-api/changes/v2/meetings/:meeting_id/call_recordings/post.md)

---

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