SautiDesk
SautiDesk API
Reports (Pro)

List report exports

GET
/v1/desk/reports/export

Lists the report exports started so far, with each one's status and when its file will be ready.

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

Query Parameters

cursor?string

next_cursor from the previous page. Leave it out for the first page.

limit?integer

Page size: 100 by default, 100 at most.

Response

OK

Example

{  "data": [    {      "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"    }  ],  "next_cursor": "eyJvIjoyNX0",  "has_more": false}
FieldTypeDescription
datarequiredobject[]
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)
next_cursorrequiredstring | null
has_morerequiredboolean
curl -X GET "https://api.sautidesk.com/v1/desk/reports/export"