---
title: "Get document visual components"
method: GET
path: "/api/v0/documents/{document_id}/visual-components"
tags: ["Documents"]
---

# Get document visual components

`GET /api/v0/documents/{document_id}/visual-components`

Retrieves all visual components associated with a document.

## Path parameters

- `document_id` string, uuid, required

## Query parameters

- `page_number` integer, nullable — The page number of the visual component
- `include_metadata` boolean, nullable — Whether to return the metadata of the visual component
- `types` string[], nullable — Filter to these component types (repeatable, e.g. ?types=pid&types=schematic). Omit to return every type.

## Response `200`

Successful Response

- DocumentVisualComponentGetResponse[]
  - `id` string, uuid, required — The ID of the visual component
  - `type` string, required — The type of the visual component
  - `document_id` string, uuid, required — The ID of the document
  - `page_number` integer, required — The page number of the visual component
  - `sequence_number` integer, nullable — The sequence number for ordering within a page
  - `label` string, required — The label of the visual component
  - `bbox` BoundingBox, required
    - `x0` integer, required
    - `y0` integer, required
    - `x1` integer, required
    - `y1` integer, required
    - `dpi` integer
    - `class_name` string, nullable
    - `text` string, nullable
    - `confidence` number, nullable
  - `description` string, required — The description of the visual component
  - `content` string, nullable — The structured content of the component (e.g., HTML table)
  - `created_at` string, date-time, required — The date and time the visual component was created
  - `updated_at` string, date-time, required — The date and time the visual component was last updated
  - `mask_url` string, nullable, required — The URL of the mask image
  - `metadata` object, nullable, required — The metadata of the visual component
  - `render_svg` string, nullable — SVG rendering of the component (for charts/graphs)
  - `grounding` object, nullable — Grounding metadata (bounding boxes, detections)
  - `job_status_id` string, uuid, nullable — Job status ID when async processing is queued (e.g., chart regeneration)
  - `job_status` string, nullable — Job status when async processing is queued
  - `needs_reprocessing` boolean — Whether this component needs reprocessing after bbox edit
  - `parent_id` string, uuid, nullable — Public id of the parent visual component, when this component is nested

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/outerport/apis/outerport-api.md) · [All operations](https://skmtc.dev/outerport/apis/outerport-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/outerport/outerport-api/revisions/f565b46daaea/schema)
