---
title: "Create a recording for the call"
method: POST
path: "/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}/Recordings.json"
tags: ["Api20100401CallRecording"]
---

# Create a recording for the call

`POST /2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}/Recordings.json`

## Request

- Base URL: `https://api.twilio.com`
- URL: `https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls/{CallSid}/Recordings.json`
- Auth: HTTP basic

Create a recording for the call

## Path parameters

- `AccountSid` string, required
- `CallSid` string, required

## Request body `application/x-www-form-urlencoded`

- object
  - `RecordingStatusCallbackEvent` string[]: The recording status events on which we should call the `recording_status_callback` URL. Can be: `in-progress`, `completed` and `absent` and the default is `completed`. Separate multiple event values with a space.
  - `RecordingStatusCallback` string, uri: The URL we should call using the `recording_status_callback_method` on each recording event specified in `recording_status_callback_event`. For more information, see [RecordingStatusCallback parameters](https://www.twilio.com/docs/voice/api/recording#recordingstatuscallback).
  - `RecordingStatusCallbackMethod` 'GET' | 'POST', http-method: The HTTP method we should use to call `recording_status_callback`. Can be: `GET` or `POST` and the default is `POST`.
  - `Trim` string: Whether to trim any leading and trailing silence in the recording. Can be: `trim-silence` or `do-not-trim` and the default is `do-not-trim`. `trim-silence` trims the silence from the beginning and end of the recording and `do-not-trim` does not.
  - `RecordingChannels` string: The number of channels used in the recording. Can be: `mono` or `dual` and the default is `mono`. `mono` records all parties of the call into one channel. `dual` records each party of a 2-party call into separate channels.
  - `RecordingTrack` string: The audio track to record for the call. Can be: `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the audio that is received by Twilio. `outbound` records the audio that is generated from Twilio. `both` records the audio that is received and generated by Twilio.
  - `RecordingConfigurationId` string: The identifier of the configuration to be used when creating and processing the recording

## Response `200`

OK

- ApiV2010AccountCallCallRecording
  - `account_sid` string, nullable: The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Recording resource.
  - `api_version` string, nullable: The API version used to make the recording.
  - `call_sid` string, nullable: The SID of the [Call](https://www.twilio.com/docs/voice/api/call-resource) the Recording resource is associated with.
  - `conference_sid` string, nullable: The Conference SID that identifies the conference associated with the recording, if a conference recording.
  - `date_created` string, date-time-rfc-2822, nullable: The date and time in GMT that the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
  - `date_updated` string, date-time-rfc-2822, nullable: The date and time in GMT that the resource was last updated, specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
  - `start_time` string, date-time-rfc-2822, nullable: The start time of the recording in GMT and in [RFC 2822](https://www.php.net/manual/en/class.datetime.php#datetime.constants.rfc2822) format.
  - `duration` string, nullable: The length of the recording in seconds.
  - `sid` string, nullable: The unique string that that we created to identify the Recording resource.
  - `price` number, nullable: The one-time cost of creating the recording in the `price_unit` currency.
  - `uri` string, nullable: The URI of the resource, relative to `https://api.twilio.com`.
  - `encryption_details` unknown
  - `price_unit` string, currency, nullable: The currency used in the `price` property. Example: `USD`.
  - `status` 'in-progress' | 'paused' | 'stopped' | 'processing' | 'completed' | 'absent': The status of the recording. Can be: `processing`, `completed` and `absent`. For more detailed statuses on in-progress recordings, check out how to [Update a Recording Resource](https://www.twilio.com/docs/voice/api/recording#update-a-recording-resource).
  - `channels` integer: The number of channels in the final recording file. Can be: `1`, or `2`. Separating a two leg call into two separate channels of the recording file is supported in [Dial](https://www.twilio.com/docs/voice/twiml/dial#attributes-record) and [Outbound Rest API](https://www.twilio.com/docs/voice/make-calls) record options.
  - `source` 'DialVerb' | 'Conference' | 'OutboundAPI' | 'Trunking' | 'RecordVerb' | 'StartCallRecordingAPI' | 'StartConferenceRecordingAPI': How the recording was created. Can be: `DialVerb`, `Conference`, `OutboundAPI`, `Trunking`, `RecordVerb`, `StartCallRecordingAPI`, and `StartConferenceRecordingAPI`.
  - `error_code` integer, nullable: The error code that describes why the recording is `absent`. The error code is described in our [Error Dictionary](https://www.twilio.com/docs/api/errors). This value is null if the recording `status` is not `absent`.
  - `track` string, nullable: The recorded track. Can be: `inbound`, `outbound`, or `both`.

## Other responses

- `201`: Created

## Changes

- **2026-05-06** (v2010) `a6753266b8b0`: 1 info
  - added the new optional request property `RecordingConfigurationId`
- **2025-07-03** (v2010) `475b69553e34`: 2 breaking
  - the `encryption_details` response's property type changed from `object` to no type for status `200`
  - the `encryption_details` response's property type changed from `object` to no type for status `201`
- **2025-03-11** (v2010) `26011eceee1e`: 2 breaking
  - the `encryption_details` response's property type changed from no type to `object` for status `200`
  - the `encryption_details` response's property type changed from no type to `object` for status `201`
- **2025-02-11** (v2010) `3714525762d3`: 1 info
  - added the success response with the status `200`
- **2025-01-28** (v2010) `15285833794a`: 2 info
  - api tag `Api20100401CallRecording` added
  - api tag `Api20100401Recording` removed

[Operation history](https://skmtc.dev/twilio/apis/api-v2010/changes/2010-04-01/Accounts/:AccountSid/Calls/:CallSid/Recordings.json/post.md)

---

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