Export report
A report as CSV or PDF, with an expense-level or report-level template.
GET https://cotlet.dev/api/v1/expensify/reports/{report_id}/export
read
Returns a download link for one report. CSV uses an export template (basic, all data at expense level, all data at report level or a custom one a workspace admin built); PDF includes the expenses, attached receipts and report notes. Large exports are prepared in the background, so the call may return a pending status first. It changes nothing in Expensify.
Parameters
| Name | Type | Description |
|---|---|---|
| report_id string required | string | Report ID from list_reports. |
| format enum required | enum | csv or pdf. |
| template string | string | CSV template: basic, all_data_expense, all_data_report or the name of a custom template. Default: basic. |
| include_receipts boolean | boolean | PDF only: include attached receipts. Default: true. |
Request
curl "https://cotlet.dev/api/v1/expensify/reports/report_8c41d2/export?format=csv" \
-H "Authorization: Bearer $COTLET_API_KEY" result = client.call("expensify", "export_report", {"report_id":"report_8c41d2","format":"csv"}) const result = await cotlet.call('expensify', 'export_report', {"report_id":"report_8c41d2","format":"csv"}); cotlet call expensify export_report --data '{"report_id":"report_8c41d2","format":"csv"}' Example response
{
"report_id": "R10077",
"format": "csv",
"template": "basic",
"status": "ready",
"download_url": "https://files.cotlet.dev/exports/R10077-basic.csv",
"expires_at": "2026-10-15T09:00:00Z"
}