Skip to main content

Artifacts

Use client.artifacts to retrieve typed outputs, list artifacts for a conversation, and update state/content.

Retrieving artifacts

artifact = await client.artifacts.retrieve("art_abc123")

print(artifact.artifact_type)
print(artifact.state)
print(artifact.content)

Listing artifacts

artifacts = await client.artifacts.list_for_conversation("conv_abc123")

for artifact in artifacts:
    print(f"{artifact.artifact_type}: {artifact.id}")

Updating artifacts

artifact = await client.artifacts.update_state(
    "art_abc123",
    state={"status": "approved", "approved_by": "user_123"},
)

artifact = await client.artifacts.update_content(
    "art_abc123",
    content={
        "subject": "Q3 Update - Revised",
        "body": "Updated projections based on latest data...",
    },
)
Artifact-type listing, downloads, and action recording are REST endpoints today: GET /api/v1/artifacts/types, GET /api/v1/artifacts/{artifact_id}/download, and POST /api/v1/artifacts/{artifact_id}/action.