Assemble
REST API

Artifacts

GET
/api/v1/artifacts

Semantic search over validated artifacts in the workspace tied to the API key.

Authorization

bearerAuth
AuthorizationBearer <token>

Workspace API key (Settings → API Keys)

In: header

Query Parameters

query*string

Natural-language search over validated artifacts

limit?integer

Maximum number of results (1-20, default 10)

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/v1/artifacts?query=churn+drivers"
{
  "results": [
    {
      "id": "string",
      "summary": "string",
      "why": "string",
      "recommendation": "string",
      "confidence": 0,
      "keyFindings": [
        "string"
      ],
      "dataSources": [
        {
          "type": "file",
          "name": "string",
          "id": "string"
        }
      ],
      "createdAt": 0,
      "validatedAt": 0,
      "score": 0
    }
  ]
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
POST
/api/v1/artifacts

Create a draft artifact in the workspace tied to the API key. Drafts go through human validation before they surface to other consumers.

Authorization

bearerAuth
AuthorizationBearer <token>

Workspace API key (Settings → API Keys)

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/v1/artifacts" \  -H "Content-Type: application/json" \  -d '{    "summary": "EMEA churn doubled in May",    "why": "string",    "confidence": 0.85,    "confidenceExplanation": "string"  }'
{
  "artifactId": "string",
  "status": "draft"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
GET
/api/v1/artifacts/{id}

Fetch a validated artifact by id, including content (truncated to 20k chars), code executed, and provenance.

Authorization

bearerAuth
AuthorizationBearer <token>

Workspace API key (Settings → API Keys)

In: header

Path Parameters

id*string

Artifact id

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/v1/artifacts/string"
{
  "id": "string",
  "summary": "string",
  "why": "string",
  "recommendation": "string",
  "confidence": 0,
  "keyFindings": [
    "string"
  ],
  "dataSources": [
    {
      "type": "file",
      "name": "string",
      "id": "string"
    }
  ],
  "createdAt": 0,
  "validatedAt": 0,
  "confidenceExplanation": "string",
  "content": null,
  "contentTruncated": true,
  "recommendations": [
    {
      "text": "string",
      "type": "recommendation"
    }
  ],
  "codeExecuted": [
    {
      "language": "string",
      "code": "string",
      "output": "string",
      "timestamp": 0,
      "title": "string",
      "toolName": "string"
    }
  ],
  "sourceSystem": "string",
  "previousArtifactId": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}
{
  "error": "string"
}