Api20100401Call

Create a new outgoing call to phones, SIP-enabled endpoints or Twilio Client connections

Changed on

Create a new outgoing call to phones, SIP-enabled endpoints or Twilio Client connections

post/2010-04-01/Accounts/{AccountSid}/Calls.json

Request

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

Path parameters

AccountSidstring required

The SID of the Account that will create the resource.

Request body application/x-www-form-urlencoded

Tostring endpoint required

The phone number, SIP address, or client identifier to call.

Fromstring endpoint required

The phone number or client identifier to use as the caller id. If using a phone number, it must be a Twilio number or a Verified outgoing caller id for your account. If the to parameter is a phone number, From must also be a phone number.

Method'GET' | 'POST' http-method

The HTTP method we should use when calling the url parameter's value. Can be: GET or POST and the default is POST. If an application_sid parameter is present, this parameter is ignored.

FallbackUrlstring uri

The URL that we call using the fallback_method if an error occurs when requesting or executing the TwiML at url. If an application_sid parameter is present, this parameter is ignored.

FallbackMethod'GET' | 'POST' http-method

The HTTP method that we should use to request the fallback_url. Can be: GET or POST and the default is POST. If an application_sid parameter is present, this parameter is ignored.

StatusCallbackstring uri

The URL we should call using the status_callback_method to send status information to your application. If no status_callback_event is specified, we will send the completed status. If an application_sid parameter is present, this parameter is ignored. URLs must contain a valid hostname (underscores are not permitted).

StatusCallbackEventstring[]

The call progress events that we will send to the status_callback URL. Can be: initiated, ringing, answered, and completed. If no event is specified, we send the completed status. If you want to receive multiple events, specify each one in a separate status_callback_event parameter. See the code sample for monitoring call progress. If an application_sid is present, this parameter is ignored.

StatusCallbackMethod'GET' | 'POST' http-method

The HTTP method we should use when calling the status_callback URL. Can be: GET or POST and the default is POST. If an application_sid parameter is present, this parameter is ignored.

SendDigitsstring

The string of keys to dial after connecting to the number, with a maximum length of 32 digits. Valid digits in the string include any digit (0-9), 'A', 'B', 'C', 'D', '#', and '*'. You can also use 'w' to insert a half-second pause and 'W' to insert a one-second pause. For example, to pause for one second after connecting and then dial extension 1234 followed by the # key, set this parameter to W1234#. Be sure to URL-encode this string because the '#' character has special meaning in a URL. If both SendDigits and MachineDetection parameters are provided, then MachineDetection will be ignored.

Timeoutinteger

The integer number of seconds that we should allow the phone to ring before assuming there is no answer. The default is 60 seconds and the maximum is 600 seconds. For some call flows, we will add a 5-second buffer to the timeout value you provide. For this reason, a timeout value of 10 seconds could result in an actual timeout closer to 15 seconds. You can set this to a short time, such as 15 seconds, to hang up before reaching an answering machine or voicemail.

Recordboolean

Whether to record the call. Can be true to record the phone call, or false to not. The default is false. The recording_url is sent to the status_callback URL.

RecordingChannelsstring

The number of channels in the final recording. Can be: mono or dual. The default is mono. mono records both legs of the call in a single channel of the recording file. dual records each leg to a separate channel of the recording file. The first channel of a dual-channel recording contains the parent call and the second channel contains the child call.

RecordingStatusCallbackstring

The URL that we call when the recording is available to be accessed.

RecordingStatusCallbackMethod'GET' | 'POST' http-method

The HTTP method we should use when calling the recording_status_callback URL. Can be: GET or POST and the default is POST.

RecordingConfigurationIdstring

The identifier of the configuration to be used when creating and processing the recording

SipAuthUsernamestring

The username used to authenticate the caller making a SIP call.

SipAuthPasswordstring

The password required to authenticate the user account specified in sip_auth_username.

MachineDetectionstring

Whether to detect if a human, answering machine, or fax has picked up the call. Can be: Enable or DetectMessageEnd. Use Enable if you would like us to return AnsweredBy as soon as the called party is identified. Use DetectMessageEnd, if you would like to leave a message on an answering machine. If send_digits is provided, this parameter is ignored. For more information, see Answering Machine Detection.

MachineDetectionTimeoutinteger

The number of seconds that we should attempt to detect an answering machine before timing out and sending a voice request with AnsweredBy of unknown. The default timeout is 30 seconds.

RecordingStatusCallbackEventstring[]

The recording status events that will trigger calls to the URL specified in recording_status_callback. Can be: in-progress, completed and absent. Defaults to completed. Separate multiple values with a space.

Trimstring

Whether to trim any leading and trailing silence from the recording. Can be: trim-silence or do-not-trim and the default is trim-silence.

CallerIdstring

The phone number, SIP address, or Client identifier that made this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as name@company.com.

MachineDetectionSpeechThresholdinteger

The number of milliseconds that is used as the measuring stick for the length of the speech activity, where durations lower than this value will be interpreted as a human and longer than this value as a machine. Possible Values: 1000-6000. Default: 2400.

MachineDetectionSpeechEndThresholdinteger

The number of milliseconds of silence after speech activity at which point the speech activity is considered complete. Possible Values: 500-5000. Default: 1200.

MachineDetectionSilenceTimeoutinteger

The number of milliseconds of initial silence after which an unknown AnsweredBy result will be returned. Possible Values: 2000-10000. Default: 5000.

AsyncAmdstring

Select whether to perform answering machine detection in the background. Default, blocks the execution of the call until Answering Machine Detection is completed. Can be: true or false.

AsyncAmdStatusCallbackstring uri

The URL that we should call using the async_amd_status_callback_method to notify customer application whether the call was answered by human, machine or fax.

AsyncAmdStatusCallbackMethod'GET' | 'POST' http-method

The HTTP method we should use when calling the async_amd_status_callback URL. Can be: GET or POST and the default is POST.

Passportsstring

The STIR/SHAKEN passport for this call, provided as a base64 encoded string. Multiple passports (at max 5) are comma separated and provided as base64 encoded string

Byocstring

The SID of a BYOC (Bring Your Own Carrier) trunk to route this call with. Note that byoc is only meaningful when to is a phone number; it will otherwise be ignored. (Beta)

CallReasonstring

The Reason for the outgoing call. Use it to specify the purpose of the call that is presented on the called party's phone. (Branded Calls Beta)

CallTokenstring

A token string needed to invoke a forwarded call. A call_token is generated when an incoming call is received on a Twilio number. Pass an incoming call's call_token value to a forwarded call via the call_token parameter when creating a new call. A forwarded call should bear the same CallerID of the original incoming call.

RecordingTrackstring

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.

TimeLimitinteger

The maximum duration of the call in seconds. Constraints depend on account and configuration.

ClientNotificationUrlstring uri

The URL that we should use to deliver push call notification.

Urlstring uri

The absolute URL that returns the TwiML instructions for the call. We will call this URL using the method when the call connects. For more information, see the Url Parameter section in Making Calls.

Twimlstring twiml

TwiML instructions for the call Twilio will use without fetching Twiml from url parameter. If both twiml and url are provided then twiml parameter will be ignored. Max 4000 characters.

ApplicationSidstring

The SID of the Application resource that will handle the call, if the call will be handled by an application.

Response

Created

sidstring nullable

The unique string that we created to identify this Call resource.

date_createdstring date-time-rfc-2822 nullable

The date and time in UTC that this resource was created specified in RFC 2822 format.

date_updatedstring date-time-rfc-2822 nullable

The date and time in UTC that this resource was last updated, specified in RFC 2822 format.

parent_call_sidstring nullable

The SID that identifies the call that created this leg.

account_sidstring nullable

The SID of the Account that created this Call resource.

tostring nullable

The phone number, SIP address, Client identifier or SIM SID that received this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as name@company.com. Client identifiers are formatted client:name. SIM SIDs are formatted as sim:sid.

to_formattedstring nullable

The phone number, SIP address or Client identifier that received this call. Formatted for display. Non-North American phone numbers are in E.164 format (e.g., +442071838750).

fromstring nullable

The phone number, SIP address, Client identifier or SIM SID that made this call. Phone numbers are in E.164 format (e.g., +16175551212). SIP addresses are formatted as name@company.com. Client identifiers are formatted client:name. SIM SIDs are formatted as sim:sid.

from_formattedstring nullable

The calling phone number, SIP address, or Client identifier formatted for display. Non-North American phone numbers are in E.164 format (e.g., +442071838750).

phone_number_sidstring nullable

If the call was inbound, this is the SID of the IncomingPhoneNumber resource that received the call. If the call was outbound, it is the SID of the OutgoingCallerId resource from which the call was placed.

status'queued' | 'ringing' | 'in-progress' | 'completed' | 'busy' | 'failed' | 'no-answer' | 'canceled'

The status of this call. Can be: queued, ringing, in-progress, canceled, completed, failed, busy or no-answer. See Call Status Values below for more information.

start_timestring date-time-rfc-2822 nullable

The start time of the call, given as UTC in RFC 2822 format. Empty if the call has not yet been dialed.

end_timestring date-time-rfc-2822 nullable

The time the call ended, given as UTC in RFC 2822 format. Empty if the call did not complete successfully.

durationstring nullable

The length of the call in seconds. This value is empty for busy, failed, unanswered, or ongoing calls.

pricestring nullable

The charge for this call, in the currency associated with the account. Populated after the call is completed. May not be immediately available. The price associated with a call only reflects the charge for connectivity. Charges for other call-related features such as Answering Machine Detection, Text-To-Speech, and SIP REFER are not included in this value.

price_unitstring currency nullable

The currency in which Price is measured, in ISO 4127 format (e.g., USD, EUR, JPY). Always capitalized for calls.

directionstring nullable

A string describing the direction of the call. Can be: inbound for inbound calls, outbound-api for calls initiated via the REST API or outbound-dial for calls initiated by a <Dial> verb. Using Elastic SIP Trunking, the values can be trunking-terminating for outgoing calls from your communications infrastructure to the PSTN or trunking-originating for incoming calls to your communications infrastructure from the PSTN.

answered_bystring nullable

Either human or machine if this call was initiated with answering machine detection. Empty otherwise.

api_versionstring nullable

The API version used to create the call.

forwarded_fromstring nullable

The forwarding phone number if this call was an incoming call forwarded from another number (depends on carrier supporting forwarding). Otherwise, empty.

group_sidstring nullable

The Group SID associated with this call. If no Group is associated with the call, the field is empty.

caller_namestring nullable

The caller's name if this call was an incoming call to a phone number with caller ID Lookup enabled. Otherwise, empty.

queue_timestring nullable

The wait time in milliseconds before the call is placed.

trunk_sidstring nullable

The unique identifier of the trunk resource that was used for this call. The field is empty if the call was not made using a SIP trunk or if the call is not terminated.

uristring nullable

The URI of this resource, relative to https://api.twilio.com.

subresource_urisobject nullable

A list of subresources available to this call, identified by their URIs relative to https://api.twilio.com.

Changes