GET

/v1/schemas/worldlabs/world/marble/v1/worlds:generate

kind inputactivity worldhash 541541ee…extracted Nov 10, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
4a3ed614672e0b640de378db458907865a4e9c05499482f1e2a79fba5977eebe
{
  "fetchedAt": 1794287457,
  "extractorVersion": "2",
  "verifiedAt": null
}

Request body

6 properties · 1 required · 10 $defs
propertytypedescriptionconstraints
world_prompt*WorldTextPrompt | ImagePrompt | MultiImagePrompt | …The prompt specifying how to generate the world
display_namestringOptional human-readable title for the world (max 64 characters). Stored as world metadata and returned in world responses; does not affect generation. If omitted, World Labs may generate a title from the prompt.length ≤ 64 · nullable
modelenum | enumThe model to use for generation. marble-1.1-plus includes dynamic world sizing. Legacy names ('Marble 0.1-plus', etc.) still work but are deprecated and will be removed in a future release.default: "marble-1.1"
permissionPermissionThe permission for the world
seedintegerRandom seed for generation0 ≤ n ≤ 4294967295 · nullable
tagsstring[]Optional tags for the world (max 10 tags, each up to 32 characters)items ≤ 10 · nullable

Types

10 $defs

DataBase64Referenceobject

Reference to content via base64-encoded data.

data_base64*stringBase64-encoded content data
extensionstringFile extension without dot (e.g., 'jpg', 'png')nullable
sourceconst"data_base64" · default: "data_base64"

ImagePromptobject

Image-to-world generation.

disable_recaptionbooleanIf True, use text_prompt as-is without recaptioningnullable
image_prompt*MediaAssetReference | UriReference | DataBase64ReferenceImage content for world generation
is_panoenumHow to treat the image input as a panorama. `auto` detects valid equirectangular panoramas, `true` always uses the image as a panorama, and `false` treats it as a standard image.auto | true | false
text_promptstringOptional text guidance (auto-generated if not provided)nullable
typeconst"image" · default: "image"

MediaAssetReferenceobject

Reference to a previously uploaded MediaAsset.

media_asset_id*stringID of a MediaAsset resource previously created and marked READY
sourceconst"media_asset" · default: "media_asset"

MultiImagePrompt-Inputobject

Multi-image-to-world generation.

disable_recaptionbooleanIf True, use text_prompt as-is without recaptioningnullable
multi_image_prompt*SphericallyLocatedContent-Input[]List of images with optional spherical locations
reconstruct_imagesbooleanWhether to use reconstruction mode (allows up to 8 images, otherwise 4)default: false
text_promptstringOptional text guidance (auto-generated if not provided)nullable
typeconst"multi-image" · default: "multi-image"

PanoDetectionModeenum

auto | true | false

Permissionobject

Access control permissions for a resource.

allow_id_accessbooleandefault: false
allowed_readersstring[]
allowed_writersstring[]
publicbooleandefault: false

SphericallyLocatedContent-Inputobject

Content with a preferred location on the sphere.

azimuthnumberAzimuth angle in degreesnullable
content*MediaAssetReference | UriReference | DataBase64ReferenceThe content at this location

UriReferenceobject

Reference to content via a publicly accessible URL.

sourceconst"uri" · default: "uri"
uri*stringPublicly accessible URL pointing to the media

VideoPrompt-Inputobject

Video-to-world generation.

disable_recaptionbooleanIf True, use text_prompt as-is without recaptioningnullable
text_promptstringOptional text guidance (auto-generated if not provided)nullable
typeconst"video" · default: "video"
video_prompt*MediaAssetReference | UriReference | DataBase64ReferenceVideo content for world generation

WorldTextPrompt-Inputobject

Text-to-world generation.

disable_recaptionbooleanIf True, use text_prompt as-is without recaptioningnullable
text_promptstringOptional text guidance (auto-generated if not provided)nullable
typeconst"text" · default: "text"

Validate a payload

before you spend tokens
shell
$ curl -X POST https://modelschemas.com/v1/validate \
    -d '{"provider":"worldlabs","endpointId":"marble/v1/worlds:generate","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}