*** id: 7e1edf2f-d8ba-4240-8625-3280a3daf2f1 title: Receive sidebar-title: Receive excerpt: '' slug: /cxml/reference/fax/receive position: 1 max-toc-depth: 3 ---------------- The `` verb tells SignalWire to receive an incoming fax, which results in the creation of a new Fax instance resource. Faxes remain stored indefinitely. To delete a fax, use the appropriate API call from the [Compatibility API](/docs/compatibility-api/rest/faxes/delete-fax). ## Verb attributes The URL to request when a fax has failed or has been received. The type of media used to store fax media. Valid values are `application/pdf` or `image/tiff`. The `method` attribute specifies whether the request to `action` is a `GET` or a `POST`. Valid values are `GET` or `POST`. The size to interpret incoming pages as. Valid values are `letter`, `legal`, or `a4`. ## Action callback If the verb attribute `action` is specified, the action callback will include the [Standard Fax Request Parameters](/docs/compatibility-api/cxml/reference/fax#request-parameters) plus the following optional parameters: The error code provides more information on a failed fax. The message explaining the reason for fax failure. The status of the fax. The media URL to request to retrieve incoming media. The number of pages received from a successful fax. The transmitting subscriber identification (TSID) reported by the fax machine that sent in the fax. ## Examples ### Receive a fax ```xml ``` ```javascript title="Node.js" const { RestClient } = require("@signalwire/compatibility-api"); const response = new RestClient.LaML.FaxResponse(); response.receive({ action: "/fax/received" }); console.log(response.toString()); ``` ```csharp using Twilio.TwiML; using Twilio.TwiML.Fax; using System; class Example { static void Main() { var response = new FaxResponse(); response.Receive(action: "/fax/received")); Console.WriteLine(response.ToString());; } } ``` ```python from signalwire.fax_response import FaxResponse, Receive response = FaxResponse() response.receive(action="/fax/received") print(response) ``` ```ruby require 'signalwire/sdk' response = Signalwire::Sdk::FaxResponse.new do |response| response.receive(action: "/fax/received") end puts response.to_s ``` SignalWire will receive the incoming fax and provide a URL endpoint. ### Store fax image ```xml ``` ```javascript title="Node.js" const { RestClient } = require("@signalwire/compatibility-api"); const response = new RestClient.LaML.FaxResponse(); response.receive({ mediaType: "image/tiff" }); console.log(response.toString()); ``` ```csharp using Twilio.TwiML; using Twilio.TwiML.Fax; using System; class Example { static void Main() { var response = new FaxResponse(); response.Receive(mediaType: "image/tiff")); Console.WriteLine(response.ToString());; } } ``` ```python from signalwire.fax_response import FaxResponse, Receive response = FaxResponse() response.receive(media_type="image/tiff") print(response) ``` ```ruby require 'signalwire/sdk' response = Signalwire::Sdk::FaxResponse.new do |response| response.receive(media_type: "image/tiff") end puts response.to_s ``` This example shows that the media from the incoming fax will be stored on SignalWire's server in TIFF format.