> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # Voice Whether building a UCaaS solution, modernizing a legacy IVR, augmenting CX with AI, or migrating from another provider's APIs, our comprehensive technical references and guides have you covered. ## Get started #### [Buy a phone number](/docs/platform/phone-numbers) SignalWire phone numbers in the Dashboard #### [Build with AI](/docs/platform/ai/quickstart) Build one agent, call it over a phone number, and send it a text turn through the AI Chat API #### [Make and receive calls](/docs/platform/voice/make-and-receive-calls) Pick SWML, Relay, or the browser, then call your phone and answer a call to your number #### [Detect machines](/docs/platform/voice/machine-detection) Learn whether a person, voicemail, or fax machine is on a call you place or receive, and act on it #### [Stream call audio](/docs/platform/voice/call-streaming) Send live call audio to your WebSocket server, and send audio back #### [Migrate a Twilio\* application](/docs/compatibility-api) Get started with our Compatibility API #### [No-code apps with Call Flow Builder](/docs/call-flow-builder) Create a drag-and-drop calling application ## Choose an API SignalWire's advanced APIs and elastic cloud infrastructure make it a breeze to build modern and powerful voice applications using both PSTN and SIP endpoints. * **SignalWire REST API:** A robust, modern and flexible API for building integrated, advanced communications applications. * **Compatibility API:** Ideal for porting code from other providers. It can run serverless, but it also supports Python, PHP, Node.js, and other languages. * **Realtime API:** This API is ideal if you are an advanced developer and you want flexible, modern and realtime SDKs for Node.js. #### [SignalWire API](/docs/apis) High-quality, scalable, and secure voice API #### [Compatibility API & cXML](/docs/compatibility-api) Easily migrate from Twilio and other providers #### [Relay SDK](/docs/server-sdks/reference/python/relay) Next-gen server telephony applications powered by our Relay WebSocket API #### [Relay Browser SDK](/docs/browser-sdk/) Bring telephone capabilities to the browser with our Node.js SDK ## Low-code and no-code solutions #### [Call Flow Builder](/docs/call-flow-builder) Drag-and-drop, no-code call application builder #### [SWML](/docs/swml) Write realtime, AI-integrated calling applications using simple JSON or YAML scripts ## Popular guides #### [SIP trunking](/docs/platform/voice/sip/trunking) Route SIP traffic through the SignalWire platform to your PBX system. #### [Answer calls with SWML](/docs/platform/voice/make-and-receive-calls#answer-a-call-via-swml) Create a hosted or server-served SWML handler and route incoming calls to it. #### [Receive WhatsApp calls](/docs/platform/voice/whatsapp/receive-calls) Take calls placed from WhatsApp on your business number and route them like any other call. #### [Record calls](/docs/platform/voice/record-calls) Capture a whole call, a single message, or a conference, then manage the files. ## Frequently asked questions #### How many calls per second can I send? You can send up to `1 CPS` (Call Per Second) across your SignalWire Space. Consult our [Guide to Rate Limits](/docs/platform/rate-limits) for more information. Customers can also request additional [increases to their Space limits](/docs/platform/rate-limits). #### Are calls queued as they go out? Every Space has a [default call backlog](/docs/platform/rate-limits#queue-and-backlog-system) of 10k. SignalWire will send calls out at 1 call per second per phone number. If your backlog fills up past 10k, you will not be able to queue any more calls until it decreases. You can request an increase to this backlog [here](/docs/platform/rate-limits). #### How do I enable higher throughput calling? We do have offerings available for high throughput toll-free calling and high throughput SIP calling. Please reach out to [Support@signalwire.com](mailto:Support@signalwire.com) to get this process started. #### Can you build an IVR (Interactive Voice Response) with SignalWire? Yes, SignalWire has all the components to build a very powerful IVR! You could use [SWML](/docs/swml), the [Compatibility SDK](/docs/compatibility-api/rest/client-sdks), or even build a video/voice solution using our [Javascript SDKs](/docs/browser-sdk). #### Does SignalWire offer phone numbers to purchase? Yes! You can purchase local long code, toll-free, and shortcode numbers from our carrier partners through the SignalWire platform. You can read about how to purchase numbers [here](/docs/platform/phone-numbers). #### What do I do if I can't find the specific area code or phone number that I need? SignalWire is a communications platform, not a carrier. To make our customers' lives easier, we integrate with our carrier peers so that you can buy numbers directly through us from them. That being said, the availability of numbers is totally reliant on our carrier. If you cannot find the area code you need, please create a Support ticket via the help link in your SignalWire Space and our team will do their best to get you the numbers you need. You can also [port any number into SignalWire](/docs/platform/porting-into-signalwire) from another provider! #### What is PSTN? Public Switched Telephone Network (PSTN) is the network that carries your voice call when you call from a landline, cell phone, or DID (such as those SignalWire owns). This uses regular telephone infrastructure rather than SIP or other protocols. #### What is SIP? SIP (Session Initiation Protocol) refers to the process through which phone calls can take place over the internet (i.e. VOIP) instead of physical regular phone lines. This allows for greater worldwide reach, less physical requirements, and is more affordable/scalable for businesses. #### How is SIP on SignalWire different from traditional SIP trunking? A SIP trunk is just a container that holds multiple SIP lines. In a sense, it's just an abstract version of traditional trunks—bundles of wire connecting switches. #### What is BYOC (Bring Your Own Carrier)? BYOC allows you to use SignalWire's APIs, services, and programmability all while keeping your current SIP providers for outbound/inbound calling. If you are interested in BYOC, see our [full guide](/docs/platform/voice/sip/bring-your-own-carrier) to get started. #### How many SIP channels can you have for each phone number? You have unlimited inbound and 1CPS per phone number outbound. If you would like to send more than 1 SIP call per second per phone number, you can reach out to [Support@signalwire.com](mailto:Support@signalwire.com) to talk about raising your max throughput. #### How many legs are in a SIP call? The number of call legs is dependent on the call flow. A call is made up of multiple call legs where a call leg represents a relationship between two user agents. If you directly forward a call to a SIP endpoint, that is only two legs (inbound and outbound). If a call comes into SignalWire and is then forwarded to 4 SIP endpoints, that would be 5 legs. #### Do you have Answering Machine Detection? Yes. Answering Machine Detection (AMD) listens after the destination answers and reports whether a person, a voicemail machine, or a fax machine picked up, so your call can leave a message, start an AI agent, or hang up. The [machine detection guide](/docs/platform/voice/machine-detection) walks through it with SWML, the REST Calling API, and the Server SDKs. For the details, see [`detect_machine`](/docs/swml/reference/calling/detect-machine) in SWML or [`detect_answering_machine`](/docs/server-sdks/reference/python/relay/call/detect-answering-machine) in the Server SDKs. #### Do you have call recording capabilities? Yes. Record a call from [SWML](/docs/swml/reference/calling/record-call), from a [Relay call handler](/docs/server-sdks/reference/python/relay/call/record) in the Server SDKs, over the REST Calling API, or with a node in Call Flow Builder. The [record calls guide](/docs/platform/voice/record-calls) covers each of them. #### Do you have transcription capabilities? Yes - transcription is possible using the [Server SDKs' Relay namespace](/docs/server-sdks/reference/python/relay/call/transcribe) or through SWML's [AI agent](/docs/swml/reference/calling/ai) capabilities. You can also set a callback in order to do something with your transcriptions when they're received. #### Do you have text-to-speech capabilities? Yes - text to speech is simple with either the [Relay SDK](/docs/server-sdks/reference/python/relay/call/play) or [SWML's play method](/docs/swml/reference/play). #### What about speech-to-text capabilities? Speech to text is available through [SWML's prompt method](/docs/swml/reference/prompt) or you can collect speech and transcribe with Node.js using the [Relay SDK](/docs/server-sdks/reference/python/relay/call/collect). #### Do you have call whisper? Call Whisper involves playing a short message before the callee accepts the call and connects to the caller. At this time, the caller will still hear ringing. This allows for the callee to screen the call and choose to accept/reject or gather additional information before connecting with the caller. Check out our [Call Whisper guide](/docs/swml/guides/call-whisper) for a SWML example. #### How do I set Caller ID/CNAM? The Caller Name (CNAM) is a feature that displays your Name or Company Name on the Caller ID display of the party you are calling. When it is set up, your Caller ID Name will display as text along with your Caller ID Number. The Caller ID is the actual phone number calling in, whereas the accompanying text that provides the identifying name for that number is called CNAM (a.k.a. "Caller Name"). Follow the steps [here](/docs/platform/voice/how-to-set-caller-id-or-cnam) to get CNAM or caller ID set up. #### Do you support ringless voicemail? While it is possible to create ringless voicemail using SignalWire APIs, we do not provide support in creating this feature. Ringless voicemail is most commonly associated with spam to the carriers and therefore may not be able to be corrected if you run into problems. #### Where are your nearest data hubs/centers? We have an elastic swarm of servers all across the world and across different providers to ensure minimum latency and maximum uptime. If you are looking for more details or would like to request a node in a specific location, please reach out to [sales@signalwire.com](mailto:sales@signalwire.com). #### Is SignalWire PCI compliant? Yes, SignalWire is PCI compliant. All applications built using SignalWire will also have to be built to maintain this compliance, for example: pausing/terminating any recording or transcription before accepting sensitive information. #### Are there prohibited Voice use cases? Yes, phishing and scam calls or calls to numbers that have been listed on a "Do Not Call" registry will be flagged as fraudulent. See the [SignalWire Cloud Agreement](https://signalwire.com/legal/signalwire-cloud-agreement) for more details. --- \*Twilio and TwiML are trademarks of Twilio, Inc. SignalWire, Inc. and its products are not affiliated with or endorsed by Twilio, Inc. > Build next-generation calling applications with integrated AI, plug-and-play compatibility with other providers, and infinite scalability