Claude Platform Docs

Create a Dream

POST/v1/dreams

Start an asynchronous job that uses past sessions to produce a reorganized version of a memory store and get back the dream to poll for the result.

By default the dream writes its result to a new memory store and doesn't change the input memory store. The response has status set to pending and an empty outputs array. Poll the dream until status is completed, failed, or canceled.

See the Dreams guide to learn more about creating dreams.

Headers
"anthropic-beta": optional array of AnthropicBeta

Optional header to specify the beta version(s) you want to use.

One of the following:
string
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more
One of the following:
"message-batches-2024-09-24"
"prompt-caching-2024-07-31"
"computer-use-2024-10-22"
"computer-use-2025-01-24"
"pdfs-2024-09-25"
"token-counting-2024-11-01"
"token-efficient-tools-2025-02-19"
"output-128k-2025-02-19"
"files-api-2025-04-14"
"mcp-client-2025-04-04"
"mcp-client-2025-11-20"
"dev-full-thinking-2025-05-14"
"interleaved-thinking-2025-05-14"
"code-execution-2025-05-22"
"extended-cache-ttl-2025-04-11"
"context-1m-2025-08-07"
"context-management-2025-06-27"
"model-context-window-exceeded-2025-08-26"
"skills-2025-10-02"
"fast-mode-2026-02-01"
"output-300k-2026-03-24"
"user-profiles-2026-03-24"
"user-profiles-2026-08-18"
"user-profiles-2026-09-04"
"advisor-tool-2026-03-01"
"managed-agents-2026-04-01"
"cache-diagnosis-2026-04-07"
"dreaming-2026-04-21"
"thinking-token-count-2026-05-13"
"server-side-fallback-2026-06-01"
"server-side-fallback-2026-07-01"
"fallback-credit-2026-06-01"
"fallback-credit-2026-07-01"
"agent-memory-2026-07-22"
"mid-conversation-tool-changes-2026-07-01"
"compact-2026-01-12"
"computer-use-2025-11-24"
"mcp-tunnels-2026-06-22"
"structured-outputs-2025-11-13"
"task-budgets-2026-03-13"
"thinking-display-updates-2026-08-18"
"ce-user-management-2026-07-13"
"mid-conversation-output-config-2026-07-01"
"thinking-binding-controls-2026-08-01"
"mid-conversation-system-clear-at-2026-08-21"
"compact-2026-09-04"
"anthropic-workspace-id": optional string

Optional header to select the Workspace for this request. The value is a Workspace ID (for example, wrkspc_011CZkZaBF1tNoB5wlCeusgy).

Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.

Body
inputs: array of BetaDreamInput

The memory store and sessions for the dream to read, as exactly one memory_store entry and exactly one sessions entry.

One of the following:
BetaDreamMemoryStoreInput object{ type: "memory_store", memory_store_id }

The memory store that a dream reads, given as an entry in inputs.

With output_behavior set to update_existing, the dream writes its result into this memory store. Otherwise the dream doesn't change it.

type: "memory_store"
memory_store_id: string

The ID of the memory store for the dream to read (memstore_...).

The memory store must be in the same workspace as the dream and must not be archived.

minLength1
BetaDreamSessionsInput object{ type: "sessions", session_ids }

The sessions that a dream reads, given as an entry in inputs.

type: "sessions"
session_ids: array of string

The IDs of the sessions whose transcripts the dream reads (sesn_...).

Give 1 to 100 IDs, with no duplicates. Each session must be in the same workspace as the dream. Responses list the IDs in sorted order.

The limits table in the Dreams guide lists all the limits on a dream.

model: string or BetaDreamModelConfigParam

The model that runs a dream, given as a model ID or as an object with id and speed.

In the object form, speed can only be standard.

The limits table in the Dreams guide lists the supported models.

One of the following:
string
BetaDreamModelConfigParam object{ id, speed }

The object form of model in a request to create a dream.

id: string

The ID of the model to run the dream with.

The ID can be 1 to 256 characters long.

The limits table in the Dreams guide lists the supported models.

minLength1
maxLength256
speed: optional "standard" or "fast" or null

Inference speed mode. fast provides significantly faster output token generation at premium pricing. Not all models support fast; invalid combinations are rejected at create time.

One of the following:
"standard"
"fast"
instructions: optional string or null

Guidance that steers how the dream reads the sessions and organizes the output memory store, from 1 to 4,096 characters.

See the Dreams guide for what kinds of instructions work well.

minLength1
maxLength4096
output_behavior: optional BetaOutputBehavior

Which memory store a dream writes its result to. Defaults to create_new when left out of a create request.

One of the following:
BetaOutputBehaviorCreateNew object{ type: "create_new" }

Write the result to a new memory store that starts as a copy of the input memory store. This is the default.

The new memory store is in the same workspace as the dream. The dream doesn't change the input memory store.

type: "create_new"
BetaOutputBehaviorUpdateExisting object{ type: "update_existing", memory_store_id }

Write the result into the input memory store instead of a new memory store.

The credential must be allowed to write memory stores, or the request returns a 403 error. While another update_existing dream on the same memory store hasn't fully stopped, the request returns a 409 error.

type: "update_existing"
memory_store_id: string

The ID of the memory store for the dream to write its result to (memstore_...). It must be the memory store in the memory_store entry of inputs.

minLength1
Returns
BetaDream object{ type: "dream", id, archived_at, 11 more }

An asynchronous job that reads a memory store and past sessions, then writes a reorganized version of that memory store.

By default the dream writes its result to a new memory store and doesn't change the input memory store. With output_behavior set to update_existing, it writes its result into the input memory store instead. The Dreams API is in research preview, so this resource can still change.

See the Dreams guide for what a dream reads and produces.

Create a Dream
curl https://api.anthropic.com/v1/dreams \
    -H 'Content-Type: application/json' \
    -H 'anthropic-version: 2023-06-01' \
    -H 'anthropic-beta: dreaming-2026-04-21' \
    -H "X-Api-Key: $ANTHROPIC_API_KEY" \
    -d '{
          "inputs": [
            {
              "memory_store_id": "x",
              "type": "memory_store"
            }
          ],
          "model": "string"
        }'
Returns Examples
Response 200
{
  "id": "id",
  "archived_at": "2019-12-27T18:11:19.117Z",
  "created_at": "2019-12-27T18:11:19.117Z",
  "ended_at": "2019-12-27T18:11:19.117Z",
  "error": {
    "message": "message",
    "type": "type"
  },
  "inputs": [
    {
      "memory_store_id": "x",
      "type": "memory_store"
    }
  ],
  "instructions": "instructions",
  "model": {
    "id": "x",
    "speed": "standard"
  },
  "output_behavior": {
    "type": "create_new"
  },
  "outputs": [
    {
      "memory_store_id": "memory_store_id",
      "type": "memory_store"
    }
  ],
  "session_id": "session_id",
  "status": "pending",
  "type": "dream",
  "usage": {
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "input_tokens": 0,
    "output_tokens": 0
  }
}