Skip to content
Quickstart
  1. Docs
  2. API
  3. Quickstart

Quickstart

Three steps, about five minutes: a key, a first call to check it works, and a finished document you can open in the Studio.

#Make your first document

  1. Create a key

    In the app, open Settings → API and create a key. It's shown once — copy it somewhere safe, then put it in your shell:

    Shell
    export ATTRIA_API_KEY="attria_sk_…"
  2. Check it works

    GET /v1/me says which workspace the key acts as. A 200 means you're ready.

    curl "https://app.attria.io/api/v1/me" \
      -H "Authorization: Bearer $ATTRIA_API_KEY"
    Response200
    {
      "workspace": {
        "id": "6f1c2a9e-3b7d-4e0a-9c51-2d8e7f4a1b30",
        "name": "Acme Marketing",
        "timezone": "Europe/Lisbon"
      },
      "member": {
        "id": "b0e4d7c2-91a3-4f68-8d25-7c3e1a9f0b44",
        "role": "owner"
      },
      "key": {
        "id": "3a9d5e17-c2b8-4f0e-a6d1-94e2b7c8f013",
        "name": "Claude Code",
        "prefix": "attria_sk_Ab12Cd",
        "created_at": "2026-09-27T14:02:11.000Z"
      }
    }
  3. Ask for a document

    Send the Documents director a message with every fact the deck needs — it uses only what you give it and your workspace's brand. auto: true tells it to decide the rest instead of asking first. The call waits until the deck is written, usually 20 to 60 seconds.

    curl -X POST "https://app.attria.io/api/v1/studio/document/turns" \
      -H "Authorization: Bearer $ATTRIA_API_KEY" \
      -H "Content-Type: application/json" \
      -H "Idempotency-Key: $(uuidgen)" \
      -d '{
        "message": "A 10-slide seed pitch deck for Northwind, a B2B freight marketplace. Traction: $412k ARR, +38% QoQ, 3 enterprise logos. Raising $4M.",
        "auto": true
      }'
    Response200
    {
      "id": "1e0f…",
      "object": "studio.turn",
      "status": "completed",
      "studio": "document",
      "artifact": {
        "id": "a3c2…",
        "type": "document",
        "name": "Northwind — Seed pitch",
        "url": "https://app.attria.io/studio/documents/a3c2…",
        "public_url": null
      },
      "conversation_id": "c81b…",
      "message": "Here's a 10-slide seed deck for Northwind. I led with traction — it's your strongest proof.",
      "created_at": "2026-09-27T18:02:11Z",
      "completed_at": "2026-09-27T18:02:52Z"
    }

    Open artifact.url to see it in the Studio. It's a normal document in your workspace — share it, or keep shaping it.

#Keep shaping it

A turn is one message in a conversation. To change the deck, send another turn with its artifact_id — like typing the next message in the Studio:

curl -X POST "https://app.attria.io/api/v1/studio/document/turns" \
  -H "Authorization: Bearer $ATTRIA_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "artifact_id": "a3c2d1e0-5b4a-4c3d-8e2f-1a0b9c8d7e6f",
    "message": "Move the traction slide to second, and add a slide on the team."
  }'

Leave out auto and the director may answer status: "needs_input" with questions or an outline, as it does in the app. Studio turns shows how to reply.

#Next