Common Faxing Tasks

Sending a Fax

There are multiple ways of sending a fax using the Softlinx integration options. The SOAP and REST APIs allow for tight programmatic integration with the fax service. When an outbound fax request is made, a unique job ID is returned associated with each recipient (fax number) of the outbound fax. Since there are inherent delays and external factors involved in faxing, the final status of the outbound fax will not be known immediately.

Checking for Outbound Fax Status

There are two approaches to checking for the final status of an outbound fax request. The first approach relies on polling or querying the system periodically, and the second approach relies on push notification from the system supplemented with occasional polling. Both approaches are explained below:

  • Query the system for any unmarked outbound faxes. Use a single ReplixFax user ID that has administrative permissions in order to get faxes sent by all users. For each fax returned, if the fax status is either sent or failed, then issue an API call to mark the fax. Notify the sender as appropriate as to the fax status. The query should not be made too frequently. We recommend that you query once every 10 to 15 minutes​. Do not issue queries for each unique ReplixFax user.
  • Listen for HTTP posts from the Fax service. A post will be sent when an outbound fax reaches it final status. The post will contain the Fax job ID and details about its status. Issue an API call to mark the fax. Notify the sender as appropriate as to the fax status.

    To handle an error situation where the HTTP listener is down for any reason, occasionally query the system for unmarked outbound failed faxes and mark these faxes. Repeat the query for unmarked sent faxes and mark these faxes. Use a single ReplixFax user ID that has administrative permissions in order to get faxes sent by all users. We recommend that you query the system once every hour​.​ Do not issue queries for each unique ReplixFax user. Your code will need to handle the edge conditions when the query returns a fax ID and you also receive an HTTP post for that fax ID.

Checking for New Inbound Faxes

There are two approaches to checking when a new fax has arrived. The first approach relies on polling or querying the system periodically, and the second approach relies on push notification from the system supplemented with occasional polling. Both approaches are explained below:

  • Query the system for any unmarked inbound faxes. Use a single ReplixFax user ID that has administrative permissions in order to get faxes received by all users. For each fax returned, retrieve the fax content via the API and then issue an API call to mark the fax. Notify the recipient about the fax. The query should not be made too frequently. We recommend that you query once every 10 to 15 minutes​.​ Do not issue queries for each unique ReplixFax user.
  • Listen for HTTP posts from the Fax service. The post will contain the Fax job ID of new faxes. Retrieve the fax content via the API and then issue an API call to mark the fax. Notify the recipient about the fax.

    ​To handle an error situation where the HTTP listener is down for any reason​, occasionally query the system for unmarked inbound faxes. Mark these faxes and retrieve their content. Notify the recipient about these faxes. Use a single ReplixFax user ID that has administrative permissions in order to get faxes for all users. We recommend that you query the system once every hour​.​​ Do not issue queries for each unique ReplixFax user. Your code will need to handle the edge conditions when the query returns a fax ID and you also receive an HTTP post for that fax ID.