Skip to main content
Streaming World Configure the starting conditions of a continuous world once, then guide what happens next with open-ended Events while the session is running. A create request establishes the world’s premise, optional visual starting point, reusable character or environment references, output preferences, and continuation behavior. It should describe the experience you want the model to sustain—not a frame-by-frame plan for how to produce it. For runtime guidance, interruption, and lifecycle semantics, continue to Streaming Control.

One resource, several configuration blocks

A Session is the only top-level REST resource. Your application creates it, reconnects to it when necessary, and closes it when the experience ends. Everything else on this page is embedded configuration for that Session.
Configuration is not an entity model. References and runtime Events belong to a Session, but they are not independently addressable REST resources. Streaming World does not expose character, object, location, scene, or world-state CRUD.

Define the starting world

initial_prompt is the durable creative context for the session. Describe the world as a whole: who or what matters, where the experience begins, the tone it should maintain, and the continuity that later Events should preserve.
Initial prompt
opening_frame is optional. Use it when the first image matters—for example, when an experience must open in a particular lobby, composition, or art direction. It establishes a visual starting point; it is not an authoritative snapshot of queryable world state.
Describe intent, not production steps. Keep dialogue, behavior, reactions, movement, and presentation together in natural language. Do not pre-split an interaction into lines, actions, shots, or timing fields.

Ground the world with named references

A Reference gives a short, stable name to related text, images, or audio. Use one when later Events need to return to the same character, place, object, voice, or visual style without resending its source material.

Image

Ground appearance, silhouette, wardrobe, environment, object design, or visual style.

Audio

Ground a voice, ambience, sound identity, delivery quality, or other audible traits.

Text

Add role, temperament, relationships, constraints, or context that media alone cannot express.
The modalities in one Reference are interpreted together. A character reference can therefore combine a portrait, a voice sample, and a short description under one name such as A. Runtime Events can then select that anchor and describe the next development in ordinary language.
A Reference is an anchor, not an actor object. Its name helps condition generation; it does not create mutable properties, inventory, coordinates, or a source of truth that your application can read or update.

Choose how the experience runs

These fields express application intent. The create response contains the effective settings for the allocated Session, so clients should render and enable controls from the returned values rather than assuming every model or region behaves identically.

Treat capabilities as the session contract

Streaming models can differ in the inputs and controls they support. After creating a Session, read its returned capabilities before enabling UI or sending runtime content.
  • Only send Event and reference content types that the Session reports as supported.
  • Enable live audio, cancellation, hold, resume, or other controls only when advertised.
  • Apply the returned Event and reference limits in the client, while still handling server rejection.
  • After reconnecting, refresh the effective Session contract instead of relying on stale assumptions.
Capabilities are authoritative. A field appearing in the general API schema does not mean that every Session supports it. Unsupported content is rejected rather than silently ignored.

Create a configured Session

The following request creates a manually started hotel experience with two grounded characters. It is intentionally compact; Streaming World Sessions contains the complete request, response, validation, and error schemas.
Create Session
Keep the returned Session id, pass the opaque client connection descriptors to the Vivix client, and use the returned capabilities as the effective feature contract. Then move to Streaming Control to start and steer the world.

Continue with Streaming Control

Start the world, steer it with Events, and react to its realtime lifecycle.