---
title: "List a document's relations"
method: GET
path: "/v1/projects/{project_id}/documents/{document_id}/relations"
tags: ["Documents"]
---

# List a document's relations

`GET /v1/projects/{project_id}/documents/{document_id}/relations`

## Request

- Base URL: `https://api.naturali.ai`
- URL: `https://api.naturali.ai/v1/projects/{project_id}/documents/{document_id}/relations`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.naturali.ai/authorize`, token URL `https://api.naturali.ai/token`, scopes: `mcp:access`)

Returns the typed edges this document asserts about others, oldest first. An edge is owned by the document it leaves, so this is what the document claims — use `?related_to=` on the listing to find what claims something about it.

## Path parameters

- `document_id` string, required

## Query parameters

- `limit` integer
- `offset` integer

## Response `200`

The document's relations, oldest first

- object
  - `data` DocumentRelation[], required
    - `id` string
    - `type` 'derived_from' | 'supersedes' | 'cites': What the asserting document claims: it was `derived_from` the other, `supersedes` it, or `cites` it.
    - `from_document_id` string: The document that asserts the edge
    - `to_document_id` string: The document the edge points at
    - `created_at` string, date-time
  - `total` integer, required
  - `limit` integer, required
  - `offset` integer, required

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Document not found

---

[API](https://skmtc.dev/naturali/apis/naturali-ai-api.md) · [All operations](https://skmtc.dev/naturali/apis/naturali-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/naturali/apis/naturali-ai-api/revisions/e4905b78f422?raw)
