NOTE: The order of the columns in the CSV is not defined and may change when new fields are added to the API response. Your application design should be resilient to changes in the order of the columns in the CSV response.
An OutgoingCallerId instance resource represents a single verified number that may be used as a caller ID when making outgoing calls via the REST API and within the TwiML <Dial> verb. The OutgoingCallerIds
list resource represents the set of an account's verified phone numbers.
/2010-04-01/Accounts/{AccountSid}/OutgoingCallerIds/{OutgoingCallerIdSid}
Property | Description |
---|---|
Sid | A 34 character string that uniquely identifies this resource. |
DateCreated | The date that this resource was created, given in RFC 2822 format. |
DateUpdated | The date that this resource was last updated, given in RFC 2822 format. |
FriendlyName | A human readable descriptive text for this resource, up to 64 characters long. By default, the FriendlyName is a nicely formatted version of the phone number. |
AccountSid | The unique ID of the Account responsible for this Caller Id. |
PhoneNumber | The incoming phone number. Formatted with a '+' and country code e.g., +16175551212 (E.164 format). |
Uri | The URI for this resource, relative to https://api.twilio.com . |
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function fetchOutgoingCallerId() {11const outgoingCallerId = await client12.outgoingCallerIds("PNe905d7e6b410746a0fb08c57e5a186f3")13.fetch();1415console.log(outgoingCallerId.sid);16}1718fetchOutgoingCallerId();
1{2"sid": "PNe905d7e6b410746a0fb08c57e5a186f3",3"account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",4"friendly_name": "(415) 867-5309",5"phone_number": "+141586753096",6"date_created": "Fri, 21 Aug 2009 00:11:24 +0000",7"date_updated": "Fri, 21 Aug 2009 00:11:24 +0000",8"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds/PNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"9}
Updates the caller ID, and returns the updated resource if successful.
There is only one field that you may update:
Parameter | Description |
---|---|
FriendlyName | A human readable description of a Caller ID, with maximum length of 64 characters. Defaults to a nicely formatted version of the phone number. |
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function updateOutgoingCallerId() {11const outgoingCallerId = await client12.outgoingCallerIds("PNe536d32a3c49700934481addd5ce1659")13.update({ friendlyName: "My Second Line" });1415console.log(outgoingCallerId.sid);16}1718updateOutgoingCallerId();
1{2"account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",3"date_created": "Fri, 21 Aug 2009 00:11:24 +0000",4"date_updated": "Fri, 21 Aug 2009 00:11:24 +0000",5"friendly_name": "My Second Line",6"phone_number": "+141586753096",7"sid": "PNe536d32a3c49700934481addd5ce1659",8"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds/PNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"9}
The response format is identical to the HTTP GET
response documented above.
Deletes the caller ID from the account. Returns an HTTP 204 response if successful, with no body.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function deleteOutgoingCallerId() {11await client.outgoingCallerIds("PNe536d32a3c49700934481addd5ce1659").remove();12}1314deleteOutgoingCallerId();
/2010-04-01/Accounts/{AccountSid}/OutgoingCallerIds
Returns a list of OutgoingCallerId resource representations, each representing a Caller ID number valid for an account. The list includes paging information.
The following GET
query string parameters allow you to limit the list returned. Note, parameters are case-sensitive:
Parameter | Description |
---|---|
PhoneNumber | Only show the caller id resource that exactly matches this phone number. |
FriendlyName | Only show the caller id resource that exactly matches this name. |
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function listOutgoingCallerId() {11const outgoingCallerIds = await client.outgoingCallerIds.list({ limit: 20 });1213outgoingCallerIds.forEach((o) => console.log(o.sid));14}1516listOutgoingCallerId();
1{2"end": 0,3"first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json?PageSize=50&Page=0",4"next_page_uri": null,5"outgoing_caller_ids": [6{7"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",8"date_created": "Fri, 21 Aug 2009 00:11:24 +0000",9"date_updated": "Fri, 21 Aug 2009 00:11:24 +0000",10"friendly_name": "(415) 867-5309",11"phone_number": "+141586753096",12"sid": "PNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",13"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds/PNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"14}15],16"page": 0,17"page_size": 50,18"previous_page_uri": null,19"start": 0,20"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json?PageSize=50&Page=0"21}
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function listOutgoingCallerId() {11const outgoingCallerIds = await client.outgoingCallerIds.list({12phoneNumber: "+14158675310",13limit: 20,14});1516outgoingCallerIds.forEach((o) => console.log(o.sid));17}1819listOutgoingCallerId();
1{2"end": 0,3"first_page_uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json?PageSize=50&Page=0",4"next_page_uri": null,5"outgoing_caller_ids": [6{7"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",8"date_created": "Fri, 21 Aug 2009 00:11:24 +0000",9"date_updated": "Fri, 21 Aug 2009 00:11:24 +0000",10"friendly_name": "(415) 867-5309",11"phone_number": "+141586753096",12"sid": "PNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",13"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds/PNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.json"14}15],16"page": 0,17"page_size": 50,18"previous_page_uri": null,19"start": 0,20"uri": "/2010-04-01/Accounts/ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/OutgoingCallerIds.json?PageSize=50&Page=0"21}
Adds a new CallerID to your account. After making this request, Twilio will return to you a validation code and Twilio will dial the phone number given to perform validation. The code returned must be entered via the phone before the CallerID is added to your account.
The following parameters are accepted:
Parameter | Description |
---|---|
PhoneNumber | The phone number to verify. Should be formatted with a '+' and country code e.g., +16175551212 (E.164 format). Twilio will also accept unformatted US numbers e.g., (415) 555-1212, 415-555-1212. |
Parameter | Description |
---|---|
FriendlyName | A human readable description for the new caller ID with maximum length 64 characters. Defaults to a nicely formatted version of the number. |
CallDelay | The number of seconds, between 0 and 60, to delay before initiating the verification call. Defaults to 0. |
Extension | Digits to dial after connecting the verification call. |
StatusCallback | A URL that Twilio will request when the verification call ends to notify your app if the verification process was successful or not. See StatusCallback parameter below. Note: The StatusCallback URL has a limit of 1000 characters. |
StatusCallbackMethod | The HTTP method Twilio should use when requesting the above URL. Defaults to POST . |
This will create a new CallerID validation request within Twilio, which initiates a call to the phone number provided and listens for a validation code. The validation request is represented in the response by the following properties:
Property | Description |
---|---|
AccountSid | The unique ID of the Account to which the Validation Request belongs. |
PhoneNumber | The incoming phone number being validated, formatted with a '+' and country code e.g., +16175551212 (E.164 format). |
FriendlyName | The friendly name you provided, if any. |
ValidationCode | The 6 digit validation code that must be entered via the phone to validate this phone number for Caller ID. |
CallSid | The unique id of the Call created for this validation attempt. |
After the verification call ends, Twilio makes an asynchronous HTTP request to the StatusCallback URL if you provided one in your API request. By capturing this request, you can determine when the call ended and whether or not the number called was successfully verified.
Twilio passes the same parameters to your application in its asynchronous request to the StatusCallback URL as it does in a typical status callback request. The full list of parameters and descriptions of each are in the TwiML Voice: Twilio's Request documentation.
The verification status callback request also passes these additional parameters:
Parameter | Description |
---|---|
VerificationStatus | Describes whether or not the person called correctly entered the validation code. Possible values are success or failed . |
OutgoingCallerIdSid | If the verification process was successful, the SID value of the newly-created OutgoingCallerId resource for the verified number. |
Here are a typical request and response. Typically, you would present the validation code from the response to the user who is trying to verify their phone number. Adding an Outgoing Caller ID via the API has the same result as verifying a number via the Twilio console.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function createValidationRequest() {11const validationRequest = await client.validationRequests.create({12friendlyName: "My Home Phone Number",13phoneNumber: "+14158675310",14});1516console.log(validationRequest.accountSid);17}1819createValidationRequest();
1{2"account_sid": "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",3"call_sid": "CAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",4"friendly_name": "My Home Phone Number",5"phone_number": "+14158675310",6"validation_code": "111111"7}
Not supported.
Not supported.