---
title: "Lists documents attached to a contract"
method: GET
path: "/contracts/{contract_id}/documents"
tags: ["Contract Documents"]
---

# Lists documents attached to a contract

`GET /contracts/{contract_id}/documents`

## Request

- Base URL: `https://api.rillet.com`
- URL: `https://api.rillet.com/contracts/{contract_id}/documents`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/rillet/apis/rillet-accounting-api/docs/contracts/:contract_id/documents/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns all attached documents, including those uploaded through the Rillet application or imported from Salesforce.
Each download URL is valid for up to 1 hour; call this endpoint again to obtain fresh URLs.
Documents are listed oldest first.
Returns an empty `documents` array when the contract has no attachments.

## Response `200`

Attached documents

- object
  - `documents` ContractDocument[], required
    - `id` string, uuid, required: Identifier of the attachment.
    - `file_name` string, required
    - `size` integer, required: Size in bytes.
    - `url` string, uri, required: Temporary download URL valid for up to 1 hour.

## Other responses

- `400`: Malformed contract id
- `404`: Contract not found or not accessible
- `default`: Error

## Changes

- **2026-11-03** `c393d0102005`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rillet/apis/rillet-accounting-api/changes/contracts/:contract_id/documents/get.md)

---

[API](https://skmtc.dev/rillet/apis/rillet-accounting-api.md) - [All operations](https://skmtc.dev/rillet/apis/rillet-accounting-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rillet/apis/rillet-accounting-api/revisions/c393d0102005?raw)
