SautiDesk
SautiDesk API
Reports (Pro)

Get a report export

GET
/v1/desk/reports/export/{id}

Returns one report export with its status and, once it is ready, where to download the file.

Requires: desk.supervise scope, Supervisor licence, Pro plan.

Authorization

bearerAuth
AuthorizationBearer <token>

A SautiDesk API key. An owner or admin makes it under Settings in SautiDesk for a named person and picks the scopes. The key is shown once. Send it as Authorization: Bearer <key>. It acts as that person and as nobody else.

In: header

Path Parameters

id*string

The export's id (a UUID).

Response

OK

Example

{  "id": "3f2b8c1e-5a4d-4e7b-9c10-2d6a8e4f1b37",  "kind": "billing",  "status": "open",  "range": {    "from": "2026-10-14T08:30:00Z",    "to": "2026-10-14T08:30:00Z",    "timezone": "Africa/Nairobi"  },  "rows_total": 1,  "rows_done": 1,  "url": "https://example.com/file",  "url_expires_at": "2026-10-14T08:30:00Z",  "error": "",  "created_at": "2026-10-14T08:30:00Z",  "expires_at": "2026-10-14T08:30:00Z"}
FieldTypeDescription
idrequiredstring (uuid)
kindrequiredstringWhat kind it is.
statusrequiredstringThe status to set.
rangerequiredobject
fromrequiredstring (date-time)The number or address to send from. It must belong to your workspace.
torequiredstring (date-time)Who to send to: a phone number in international format or, for email, an address.
timezonerequiredstring
rows_totalrequiredinteger | null
rows_donerequiredinteger
urlrequiredstring | null
url_expires_atrequiredstring (date-time) | null
errorstring
created_atrequiredstring (date-time)
expires_atrequiredstring (date-time)
curl -X GET "https://api.sautidesk.com/v1/desk/reports/export/string"