Artifacts

Create, upload, and retrieve artifacts produced by agent sessions

List Artifacts Endpoint

GET
/artifacts

Query Parameters

workflow_id?|

Filter by workflow ID

execution_id?|

Filter by execution ID

phase_id?|

Filter by phase ID

session_id?|

Filter by session ID

artifact_type?|

Filter by artifact type

created_after?|

Inclusive ISO 8601 lower bound on created_at (timezone required)

created_before?|

Inclusive ISO 8601 upper bound on created_at (timezone required)

q?|

Case-insensitive substring match against artifact id, title, workflow id and phase id

page?integer

Page number

Default1
Range1 <= value
page_size?|

Items per page

limit?|Deprecated

Deprecated alias for page_size. Ignored when page_size is given.

Response Body

application/json

application/json

curl -X GET "https://loading/artifacts"
{
  "artifacts": [
    {
      "id": "string",
      "workflow_id": "string",
      "execution_id": "string",
      "phase_id": "string",
      "artifact_type": "string",
      "title": "string",
      "size_bytes": 0,
      "created_at": "string",
      "agent_provider": "string",
      "agent_model": "string"
    }
  ],
  "total": 0,
  "page": 1,
  "page_size": 50,
  "excluded_undated": 0,
  "type_counts": {
    "property1": 0,
    "property2": 0
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Create Artifact Endpoint

POST
/artifacts

Request Body

application/json

workflow_id*string
artifact_type*string
title*string
content*string
phase_id?|
session_id?|
content_type?string
Default"text/markdown"
[key: string]?never

Response Body

application/json

application/json

curl -X POST "https://loading/artifacts" \  -H "Content-Type: application/json" \  -d '{    "workflow_id": "string",    "artifact_type": "string",    "title": "string",    "content": "string"  }'
{
  "id": "string",
  "title": "string",
  "artifact_type": "string",
  "status": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Get Artifact Endpoint

GET
/artifacts/{artifact_id}

Path Parameters

artifact_id*string

Query Parameters

include_content?boolean

Include artifact content in response

Defaulttrue

Response Body

application/json

application/json

curl -X GET "https://loading/artifacts/string"
{
  "id": "string",
  "workflow_id": "string",
  "phase_id": "string",
  "session_id": "string",
  "artifact_type": "string",
  "is_primary_deliverable": true,
  "content": "string",
  "content_type": "text/markdown",
  "content_hash": "string",
  "size_bytes": 0,
  "title": "string",
  "derived_from": [
    "string"
  ],
  "created_at": "string",
  "created_by": "string",
  "metadata": {},
  "agent_provider": "string",
  "agent_model": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Delete Artifact Endpoint

DELETE
/artifacts/{artifact_id}

Path Parameters

artifact_id*string

Response Body

application/json

application/json

curl -X DELETE "https://loading/artifacts/string"
{
  "artifact_id": "string",
  "status": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Update Artifact Endpoint

PUT
/artifacts/{artifact_id}

Path Parameters

artifact_id*string

Request Body

application/json

title?|
metadata?|
is_primary_deliverable?|
[key: string]?never

Response Body

application/json

application/json

curl -X PUT "https://loading/artifacts/string" \  -H "Content-Type: application/json" \  -d '{}'
{
  "artifact_id": "string",
  "status": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Get Artifact Content Endpoint

GET
/artifacts/{artifact_id}/content

Path Parameters

artifact_id*string

Response Body

application/json

application/json

curl -X GET "https://loading/artifacts/string/content"
{
  "artifact_id": "string",
  "content": "string",
  "content_type": "string",
  "size_bytes": 0
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Upload Artifact Endpoint

POST
/artifacts/{artifact_id}/upload

Path Parameters

artifact_id*string

Request Body

multipart/form-data

file*string

Response Body

application/json

application/json

curl -X POST "https://loading/artifacts/string/upload" \  -F file="string"
{
  "artifact_id": "string",
  "storage_url": "string",
  "status": "string"
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}

Syntropic137 Docs v0.33.1 · Last updated March 2026

On this page