API referenceMessages

Download a message’s file

GET
/v2/messages/{id}/attachments/{index}

A signed download link (valid 5 minutes) for a file on a message — one a customer sent or one you sent. This is the path a webhook’s media[].url carries. A message carries one file today (index 0). 404 when there is none, or when Gauge holds no copy of it (reason attachment_not_available).

Authorization

ApiKey
headerAuthorizationBearer <token>

An API key from Developers → API keys: Authorization: Bearer gauge_live_… (or pulse_k_live_…).

Path Parameters

id*string

The message id.

Formatuuid
index*integer

The attachment’s position on the message (0).

Range0 <= value

Header Parameters

Gauge-Version?string

A dated version. Default 2026-10-21.

Response Body

The file and its signed download link.

application/json
  1. response
messageId*string
Formatuuid
index*integer
Range0 <= value
contentType*string
filename*string|null
sizeBytes*|
Range0 < value
download*
Example Request
curl -X GET 'https://app.gauge.chat/api/v2/messages/497f6eca-6276-4993-bfeb-53cbbbba6f08/attachments/0'
Example Response
{  "messageId": "8540d774-4863-4d2b-b788-4ecb19412e85",  "index": 0,  "contentType": "string",  "filename": "string",  "sizeBytes": 1,  "download": {    "url": "http://example.com",    "expiresAt": "string"  }}