Claude Platform Docs

Dreams

Create a Dream
beta.dreams.create(**kwargs) -> BetaDream
POST/v1/dreams
List Dreams
beta.dreams.list(**kwargs) -> PageCursor<BetaDream>
GET/v1/dreams
Get a Dream
beta.dreams.retrieve(dream_id, **kwargs) -> BetaDream
GET/v1/dreams/{dream_id}
Cancel a Dream
beta.dreams.cancel(dream_id, **kwargs) -> BetaDream
POST/v1/dreams/{dream_id}/cancel
Archive a Dream
beta.dreams.archive(dream_id, **kwargs) -> BetaDream
POST/v1/dreams/{dream_id}/archive
Models
class BetaDream { id, archived_at, created_at, 11 more }

An asynchronous memory-consolidation job that reads a memory store plus a set of session transcripts and writes consolidated memories into an output memory store — a new store by default, or an existing store chosen via output_behavior. The Dreams API is in research preview: the request and response shapes are volatile and may change without the deprecation period that applies to generally-available endpoints.

class BetaDreamError { message, type }

Failure detail for a Dream whose status is failed.

message: String
type: String
BetaDreamInput = BetaDreamMemoryStoreInput { memory_store_id, type } | BetaDreamSessionsInput { session_ids, type }

An input memory store the dream reads from. The dream never mutates this store unless it is also the destination: with output_behavior {type: "update_existing"} the job consolidates this store in place.

One of the following:
class BetaDreamMemoryStoreInput { memory_store_id, type }

An input memory store the dream reads from. The dream never mutates this store unless it is also the destination: with output_behavior {type: "update_existing"} the job consolidates this store in place.

memory_store_id: String
minLength1
type: :memory_store
class BetaDreamSessionsInput { session_ids, type }

Input session transcripts the dream reads.

session_ids: Array[String]
type: :sessions
class BetaDreamMemoryStoreInput { memory_store_id, type }

An input memory store the dream reads from. The dream never mutates this store unless it is also the destination: with output_behavior {type: "update_existing"} the job consolidates this store in place.

memory_store_id: String
minLength1
type: :memory_store
class BetaDreamMemoryStoreOutput { memory_store_id, type }

An output memory store the dream writes consolidated memories into.

memory_store_id: String
type: :memory_store
class BetaDreamModelConfig { id, speed }

Model identifier and configuration applied to every pipeline stage. Same wire shape as the Agents API ModelConfig.

id: String

Model identifier, e.g. "claude-opus-5". 1-256 characters.

minLength1
maxLength256
speed: :standard | :fast

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
class BetaDreamModelConfigParam { id, speed }

Model identifier and configuration applied to every pipeline stage.

id: String

Model identifier, e.g. "claude-opus-5". 1-256 characters.

minLength1
maxLength256
speed: :standard | :fast

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
class BetaDreamOutput { memory_store_id, type }

An output memory store the dream writes consolidated memories into.

memory_store_id: String
type: :memory_store
class BetaDreamSessionsInput { session_ids, type }

Input session transcripts the dream reads.

session_ids: Array[String]
type: :sessions
BetaDreamStatus = :pending | :running | :completed | 2 more

Lifecycle status of a Dream.

One of the following:
:pending
:running
:completed
:failed
:canceled
class BetaDreamUsage { cache_creation_input_tokens, cache_read_input_tokens, input_tokens, output_tokens }

Cumulative token usage for the dream across every pipeline stage.

cache_creation_input_tokens: Integer

Total tokens used to create prompt-cache entries (sum of all TTL tiers).

formatint32
cache_read_input_tokens: Integer

Total tokens read from prompt cache.

formatint32
input_tokens: Integer

Total uncached input tokens consumed across every pipeline stage.

formatint32
output_tokens: Integer

Total output tokens generated across every pipeline stage.

formatint32
BetaOutputBehavior = BetaOutputBehaviorCreateNew { type } | BetaOutputBehaviorUpdateExisting { memory_store_id, type }

The default destination: the job creates a new output memory store as a clone of the memory_store input and writes the consolidated memories into it. The input store is never mutated.

One of the following:
class BetaOutputBehaviorCreateNew { type }

The default destination: the job creates a new output memory store as a clone of the memory_store input and writes the consolidated memories into it. The input store is never mutated.

type: :create_new
class BetaOutputBehaviorUpdateExisting { memory_store_id, type }

The job writes the consolidated memories into this existing memory store instead of creating one. In EAP the store must be the job's own memory_store input, so the job consolidates the store in place.

memory_store_id: String
minLength1
type: :update_existing
class BetaOutputBehaviorCreateNew { type }

The default destination: the job creates a new output memory store as a clone of the memory_store input and writes the consolidated memories into it. The input store is never mutated.

type: :create_new
class BetaOutputBehaviorUpdateExisting { memory_store_id, type }

The job writes the consolidated memories into this existing memory store instead of creating one. In EAP the store must be the job's own memory_store input, so the job consolidates the store in place.

memory_store_id: String
minLength1
type: :update_existing