---
title: "Get Artifact"
method: GET
path: "/v2/artifacts/{artifact_id}"
tags: ["artifacts"]
---

# Get Artifact

`GET /v2/artifacts/{artifact_id}`

## Request

- Base URL: `https://api.getauctor.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.getauctor.com/v2/artifacts/{artifact_id}`
- Auth: none declared

Get one artifact by ID. Pass `type` to say which kind of artifact `artifact_id` names.

A document, diagram, or folder is returned only if the API key's user can open it in Auctor, including files shared to them through restrictions and grants. Otherwise the request returns `403`. An M2M token has no user, so it can get only files with no restriction on themselves or on any folder above them.

A document or diagram in the organization space also needs the user's organization role to allow downloading organization files, and a file role that allows downloading it. Otherwise the request returns `403` and no content. An M2M token gets `403` on every organization-space document and diagram.

These file-role checks apply only once file permissions are turned on for your organization. Until then, the request doesn't run them.

Returns `503` if file roles can't be read. Retry the request.

## Path parameters

- `artifact_id` string, required

## Query parameters

- `type` 'session' | 'document' | 'diagram' | 'folder', required
- `id_type` string

## Response `200`

Successful Response

- union
  - SessionResponse
    - `id` string, required
    - `type` 'session' | 'document' | 'diagram' | 'folder', required
    - `name` string, required
    - `space_id` string, required
    - `folder_ids` string[]
    - `created_at` string, required
    - `last_content_updated_at` string, nullable: Last time the document or diagram content itself changed; unchanged by renames and moves. Null for sessions.
    - `external_ids` object
    - `content_url` string, required
    - `status` string, required
    - `start_time` string, required
    - `transcript` Utterance[], required
      - `start_time` number, required
      - `end_time` number, required
      - `speaker` string, required
      - `words` string, required
    - `summary` string, nullable
    - `action_items` object[]
    - `qa_pairs` object[]
  - DocumentResponse
    - `id` string, required
    - `type` 'session' | 'document' | 'diagram' | 'folder', required
    - `name` string, required
    - `space_id` string, required
    - `folder_ids` string[]
    - `created_at` string, required
    - `last_content_updated_at` string, nullable: Last time the document or diagram content itself changed; unchanged by renames and moves. Null for sessions.
    - `external_ids` object
    - `document_content` string, nullable
    - `content_url` string, nullable
  - DiagramResponse
    - `id` string, required
    - `type` 'session' | 'document' | 'diagram' | 'folder', required
    - `name` string, required
    - `space_id` string, required
    - `folder_ids` string[]
    - `created_at` string, required
    - `last_content_updated_at` string, nullable: Last time the document or diagram content itself changed; unchanged by renames and moves. Null for sessions.
    - `external_ids` object
    - `diagram_content` unknown
  - ArtifactListItem
    - `id` string, required
    - `type` 'session' | 'document' | 'diagram' | 'folder', required
    - `name` string, required
    - `space_id` string, required
    - `folder_ids` string[]
    - `created_at` string, required
    - `last_content_updated_at` string, nullable: Last time the document or diagram content itself changed; unchanged by renames and moves. Null for sessions.
    - `external_ids` object

## Other responses

- `422`: Validation Error

## Changes

- **2026-09-01** `aeb6faa3b8f0`: 4 info
  - added the optional property `anyOf[subschema #1: SessionResponse]/last_content_updated_at` to the response with the `200` status
  - added the optional property `anyOf[subschema #2: DocumentResponse]/last_content_updated_at` to the response with the `200` status
  - added the optional property `anyOf[subschema #3: DiagramResponse]/last_content_updated_at` to the response with the `200` status
  - added the optional property `anyOf[subschema #4: ArtifactListItem]/last_content_updated_at` to the response with the `200` status

[Operation history](https://skmtc.dev/getauctor/apis/getauctor-api/changes/v2/artifacts/:artifact_id/get.md)

---

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