Skip to Content
HelvetlyDocs
API referenceExpenses

Download a receipt

Needs a token with the read:expenses scope (or write:expenses). Authentication

Try in Playground sends a real request to app.helvetly.com with a token you paste. It stays in this browser tab only (session storage) and goes to no one else.

GET
/api/v1/expenses/{id}/receipts/{receipt_id}

Answers 302 with a Location header, a presigned URL valid for 5 minutes that saves the file under its name; when the server proxies downloads (S3_PROXY_DOWNLOADS) it answers 200 with the bytes instead. With inline=1 the bytes are always returned with Content-Disposition inline and the stored content type (PDF or image).

Authorization

bearerAuth
headerAuthorizationBearer <token>

A personal API token, hvt_…, with scopes such as read:* or write:invoices

Path Parameters

id*string

The expense's id.

receipt_id*string

The receipt's id.

Query Parameters

inline?"1"

1: return the bytes inline instead of redirecting.

Value in"1"

Response Body

The receipt's bytes (proxied downloads or inline=1).

response?file
Formatbinary
Example Request
curl -X GET 'https://app.helvetly.com/api/v1/expenses/string/receipts/string'
Example Response
"string"