Twilio Programmable Fax allows you to send and receive faxed documents from our REST API. Below is a simple introduction for getting started with Twilio Programmable Fax. For complete documentation, please refer to the full Twilio Programmable Fax API documentation.
Notice: Twilio Programmable Fax will be disabled for all users on December 17, 2021. New and inactive accounts will lose access as of December 17, 2020. For full details, including migration options, see Fax Support on Twilio.
Programmable Fax Launch Status
Sending outbound faxes is generally available to all Twilio customers. Receiving incoming faxes is also generally available, but for Japanese phone numbers only.
Inbound faxes to non-Japanese phone numbers are still considered beta, with no current plans for general availability. Support requests for beta and pre-release products are generally handled by our engineering team, and as such, response times are not guaranteed. For more information on Support limitations for beta and pre-release products, please see Twilio Beta Product Support.
How does Programmable Fax Work?
Twilio's Programmable Fax product uses the T.30 protocol to transmit faxes. At this time, we have no plans to support or migrate to the T.38 fax protocol.
HIPAA Business Associate Agreements (BAAs)
Twilio does not sign BAAs for Programmable Fax at this time.
Supported Document Types
Programmable Fax currently only supports sending documents that meet the following requirements:
- .PDF files - other file types are not supported.
- Black and white - color documents are not supported
- Portrait orientation - landscape orientation documents are not supported
Notice: For maximum compatibility, we recommend embedding any fonts used into your .PDF file. Documents with missing fonts may not render correctly at the destination. For instructions on embedding fonts into a .PDF file, see Font embedding and substitution (Adobe.com).
Files sent via fax must be accessible by Twilio's proxy servers. Local files on your desktop are likely unaccessible via these methods, but may be uploaded to Twilio Assets for sending.
Sending a Fax
To send a fax, your application needs to make an HTTP POST request to Twilio’s Fax List REST API resource with three required pieces of information; A recipient, a sender, and some content.
- Recipient: The
Toparameter consisting of the destination phone number (using E.164 formatting), or fax-capable SIP URI.
- Sender: The
Fromparameter consisting of a valid Twilio phone number (using E.164 formatting), or a verified outgoing caller ID.
- Content: The
MediaUrlparameter consisting of the URL of the .PDF file you wish to send.
Receiving a Fax
To receive a fax, you will need to respond to Twilio's incoming fax HTTP Requests with the
<Receive> TwiML verb. For full details, please see our tutorial for Receiving Faxes.
Please note, Twilio phone numbers are unable to be configured to receive both faxes and voice calls simultaneously. If you need to receive both calls and faxes, we recommend purchasing separate numbers dedicated to receiving faxes and calls.
Notice: Receiving incoming faxes is generally available for Japanese phone numbers only. Inbound faxes to non-Japanese phone numbers are still considered beta, with no current plans for general availability. Support requests for beta and pre-release products are generally handled by our engineering team, and as such, response times are not guaranteed. For more information on Support limitations for beta and pre-release products, please see Twilio Beta Product Support.