---
title: "Get document metadata"
method: GET
path: "/v1/documents/{document_id}"
tags: ["documents"]
---

# Get document metadata

`GET /v1/documents/{document_id}`

## Request

- Base URL: `https://api.angellist.com`
- URL: `https://api.angellist.com/v1/documents/{document_id}`
- Auth: OAuth 2
  - Authorization code: `https://gateway.angellist.com/oauth/authorize`
  - Client credentials
  - Token URL: `https://gateway.angellist.com/oauth/token` scopes: `documents:read`

Retrieve metadata for a single document. The caller must be authorized for the vehicle the document is tagged to. Executed investment documents and financial-statement workbooks (via the `document_id` on `listFinancialStatements` rows) are addressable; other documents return 404.

## Path parameters

- `document_id` string, required

## Response `200`

The document.

- Document
  - `content_type` string: MIME type.
  - `created` integer, required: Creation time, unix seconds.
  - `id` string, required
  - `livemode` boolean, required
  - `name` string, required: Original file name.
  - `object` 'document', required
  - `presigned_url` PresignedUrl: A short-lived presigned URL for a file's bytes, plus its expiry. Not stable — do not cache or persist it.
    - `expires_at` integer: When the URL expires, unix seconds. Absent until document-service reports it.
    - `url` string, uri, required: Presigned URL for the file's bytes.
  - `size` integer: File size in bytes.
  - `type` string: Document category (snake_case). One of a fixed set: stock_purchase_agreement, convertible_equity_agreement, safe, note, warrant, agreement_for_future_tokens, token_purchase_agreement, token_warrant, token_warrant_purchase_agreement, token_warrant_exercise_notice, financial_statements. Search results only contain executed investment documents; financial_statements appears only when following a `document_id` from `listFinancialStatements` through `getDocument`.
  - `vehicle` object, required
    - `id` string, required

## Other responses

- `400`: The request was malformed or contained invalid parameters.
- `401`: Authentication required or token invalid.
- `403`: The authenticated user does not have permission to access this resource, or the vehicle's data is not available through the API. Vehicle-scoped financial-data endpoints return code `not_available` when a vehicle's data isn't served through the API yet — the API returns verified data or none, never partial data. One account can hold a mix of covered and uncovered vehicles; support for uncovered vehicles is on the roadmap and will be added in the coming months.
- `404`: Resource not found.
- `429`: Rate limit exceeded.
- `500`: An unexpected error occurred.

---

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