---
title: "Create a Call"
method: POST
path: "/Accounts/{AccountSid}/Calls"
tags: ["Calls"]
---

# Create a Call

`POST /Accounts/{AccountSid}/Calls`

Starts an outbound call whose behavior is supplied by a cXML URL or Application SID. Use this form-encoded route for integrations built around cXML call control and Call SIDs; use the [Calling API](/docs/apis/rest/calls/call-commands) for SWML-driven calls and command-based control.

#### Permissions

The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.

[Learn more about API scopes](/docs/platform/your-signalwire-api-space).

## Path parameters

- `AccountSid` string, uuid, required — Universal Unique Identifier.

## Response `200`

The request has succeeded.

- CallResponse — Response containing a single call.
  - `sid` string, uuid, required — Universal Unique Identifier.
  - `account_sid` string, uuid, required — Universal Unique Identifier.
  - `date_created` string, required — The date, in RFC 2822 GMT format, this call was created.
  - `date_updated` string, required — The date, in RFC 2822 GMT format, this call was updated.
  - `parent_call_sid` string, uuid, required — Universal Unique Identifier.
  - `to` string, required — The address that received the call.
  - `formatted_to` string, required — The formatted number that received the call.
  - `to_formatted` string, required — The formatted number that received the call. Alias for formatted_to.
  - `from` string, required — The address that initiated the call.
  - `formatted_from` string, required — The formatted number that initiated the call.
  - `from_formatted` string, required — The formatted number that initiated the call. Alias for formatted_from.
  - `phone_number_sid` string, uuid, required — Universal Unique Identifier.
  - `status` 'queued' | 'ringing' | 'in-progress' | 'canceled' | 'completed' | 'busy' | 'failed' | 'no-answer', required — Call status.
  - `start_time` string, nullable, required — The time, in RFC 2822 GMT format, on which the call began.
  - `end_time` string, nullable, required — The time, in RFC 2822 GMT format, on which the call was terminated.
  - `duration` integer, required — The duration, in seconds, of the call.
  - `price` number, float, nullable, required — The charge for the call.
  - `price_unit` string, required — The currency, in ISO 4127 format, for the price of the call.
  - `direction` 'inbound' | 'outbound', required — Call direction.
  - `answered_by` 'human' | 'machine', required — Who/what answered the call.
  - `api_version` string, required — The version of the SignalWire API.
  - `forwarded_from` string, nullable, required — The number this call was forwarded from. Always null.
  - `caller_name` string, nullable, required — The caller name. Always null.
  - `uri` string, required — The URI for the call.
  - `subresource_uris` CallSubresourceUris, required — Call subresource URIs.
    - `notifications` string, nullable, required — The URI for notifications. Always null.
    - `recordings` string, required — The URI for recordings.
  - `annotation` string, nullable, required — The annotation for the call. Always null.
  - `group_sid` string, nullable, required — The group SID for the call. Always null.
  - `audio_in_mos` number, float, nullable, required — The Mean Opinion Score for audio quality (1.0-5.0).
  - `sip_result_code` string, nullable, required — The SIP result code for the call.
  - `audio_rtt_avg` integer, nullable, required — The average round-trip time for audio in milliseconds.
  - `audio_rtt_min` integer, nullable, required — The minimum round-trip time for audio in milliseconds.
  - `audio_rtt_max` integer, nullable, required — The maximum round-trip time for audio in milliseconds.
  - `audio_out_jitter_min` integer, nullable, required — The minimum outbound audio jitter in milliseconds.
  - `audio_out_jitter_max` integer, nullable, required — The maximum outbound audio jitter in milliseconds.
  - `audio_out_jitter_avg` integer, nullable, required — The average outbound audio jitter in milliseconds.
  - `audio_out_lost` integer, nullable, required — The number of outbound audio packets lost.

## Other responses

- `400` — The request was invalid. Review the errors array for specific issues with your request.
- `401` — Authentication failed. Please verify your credentials and try again.
- `422` — The request could not be processed due to validation errors. Check the error details for more information.

## Changes

- **2026-05-12** `2916d5e3072e` — 5 breaking, 7 info
  - added `#/components/schemas/uuid` to the `ApplicationSid` request property `allOf` list
  - the `account_sid` response's property type/format changed from `string`/`uuid` to ``/`` for status `200`
  - the `parent_call_sid` response's property type/format changed from ``/`uuid` to ``/`` for status `200`
  - the `phone_number_sid` response's property type/format changed from ``/`uuid` to ``/`` for status `200`
  - …8 more
- **2026-05-12** `5344c0c93a4c` — 1 breaking, 6 info
  - added 'unevaluatedProperties' constraint to the request body
  - added 'unevaluatedProperties' constraint to the response body for the status `200`
  - added 'unevaluatedProperties' constraint to the response body for the status `400`
  - added 'unevaluatedProperties' constraint to the response body for the status `401`
  - …3 more
- …earlier changes not shown

[Full history](https://skmtc.dev/signalwire/apis/compatibility-api/changes/Accounts/:AccountSid/Calls/post.md)

---

[API](https://skmtc.dev/signalwire/apis/compatibility-api.md) · [All operations](https://skmtc.dev/signalwire/apis/compatibility-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/signalwire/compatibility-api/revisions/723316346320/schema)
