GET /faxes/{id}
Get one fax and its delivery status
One fax, under the same visibility rules as the list. This is what to
poll after sending: status is pending until delivery finishes, then
success or failed, with the reason in statusDetail.
| Scope | fax:read |
| Role permission | Fax History not set to Block; Phone numbers |
| Cost | Free |
Not limited to a time window — any fax id the credential may see.
404 for an id that does not exist, was deleted, belongs to another
account, or is on a number the credential cannot see; the cases are
deliberately indistinguishable.
Faxes take minutes to deliver. Poll every 30–60 seconds, not in a tight loop.
Path parameters
| Name | Type | Required | Example | Description |
|---|---|---|---|---|
id | integer | yes | 7731455 | The fax id, from GET /faxes or a send. |
Responses
200
The fax.
| Field | Type | Description |
|---|---|---|
id | integer | The fax id, for GET /faxes/{id}. Always present. A send records the fax before handing it over, so the id exists from the start. |
direction | sent | received | |
line | string | Your fax number the fax went out on (sent) or came in to (received). Equal to from on a sent fax and to to on a received one. |
from | string | Who sent it. On a received fax this is the sender's number as the phone network reported it. |
to | string | Who it was sent to. |
userId | integer | The user who sent it — id in GET /users. For a fax sent through this API, the user the credential acts as. Absent on received faxes. |
pages | integer | Page count, including the cover page. |
status | pending | success | failed | pending — queued or still sending. success — delivered. failed — not delivered; the reason is in statusDetail. A received fax is always success. |
statusCode | integer | Sent faxes only. The fax service's delivery code: -1 pending, 0 delivered, anything else a failure. Branch on status; keep this for logs and support. |
statusDetail | string | Sent faxes only. The delivery result as text — queued while pending, Success once delivered, otherwise the failure reason (for example a busy line or no answer). Human-readable; do not parse it. |
createdAt | string (RFC 3339) | When the fax was sent or received. RFC 3339 UTC. |
A sent fax that was delivered:
{
"data": {
"id": 7731455,
"direction": "sent",
"line": "12125550188",
"from": "12125550188",
"to": "13475550123",
"userId": 481920,
"pages": 4,
"status": "success",
"statusCode": 0,
"statusDetail": "Success",
"createdAt": "2026-10-28T16:20:03Z"
}
}
Errors
| Status | Meaning |
|---|---|
400 | invalid_request — a missing or malformed field, an unknown enum value, or an unknown field in the body. Nothing was charged. |
401 | unauthenticated — no credential, or one that is invalid, revoked or expired. The WWW-Authenticate header names the scope the endpoint wanted. |
403 | Two different failures share this status, and the type tells them apart: |
404 | not_found — no such object, or it is not this account's. The two are deliberately indistinguishable. |
500 | internal_error — something failed on our side. For a send, nothing was charged, guaranteed, which is what makes a retry safe. |
See Errors for the full catalog and what to do about each.
Example
curl -X GET 'https://api.account.telebroad.com/api/public/v1/faxes/7731455' \
-H "Authorization: Bearer $TB_KEY"