Attachments
Get a preview link
GET/api/v1/attachments/{id}/documents/{document_id}/url
A link that shows the document's image for 60 seconds: ask for a new one each time it is shown. Do not store, log or share it. Needs a key with read.
Needs a key with read permission.
Request
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | required | An attachment ID (att_...). |
| document_id | string | required | A document ID (doc_...). |
Response
The link. Status 200.
| Name | Type | Description |
|---|---|---|
| object | string | Always `attachment_document_url`. |
| url | string | A link that shows the image for 60 seconds. Do not store or log it. |
| expires_at | string (date-time) |
Errors
| HTTP status | Code | What it means |
|---|---|---|
| 401 | UNAUTHORIZED | A valid API key is required. Send it as "Authorization: Bearer <key>". |
| 403 | PERMISSION_DENIED | This API key is not allowed to do that. |
| 404 | NOT_FOUND | Not found. |
| 422 | INVALID_REQUEST | The request is not valid. |
| 504 | TIMEOUT | The request took too long to finish. It may still have taken effect: look it up before sending it again with a new Idempotency-Key. What it made is found with GET /api/v1/eligibility?request_id=<this request_id>, and the same filter on /api/v1/claims and /api/v1/attachments (a key with read permission). |
| 500 | INTERNAL | Something went wrong on our side. Quote the request ID if you contact us. |
Example
Example request
curl "https://sandbox.myclaimhouse.com/api/v1/attachments/att_01JM000000E00800000000003G/documents/doc_01JM000000E00800000000003H/url" \
-H "Authorization: Bearer $CLAIMHOUSE_KEY"Example response: 200
{
"object": "attachment_document_url",
"url": "https://storage.example.com/attachments/signed/EXAMPLE?token=EXAMPLE",
"expires_at": "2026-09-24T21:00:59.000000+00:00"
}