GET

/v1/schemas/worldlabs/world/marble/v1/media-assets:prepare_upload?kind=output

kind outputactivity worldhash 0618d082…extracted Nov 10, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

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

Response body

2 properties · 2 required · 3 $defs
propertytypedescriptionconstraints
media_asset*MediaAssetThe created media asset
upload_info*UploadUrlInfoUpload URL information

Types

3 $defs

MediaAssetobject

A user-uploaded media asset stored in managed storage.

created_at*stringCreation timestampformat: date-time
extensionstringFile extension without dotnullable
file_name*stringFile name
kind*enumHigh-level media typeimage | video
media_asset_id*stringServer-generated media asset identifier
metadataobjectOptional application-specific metadatanullable
updated_atstringLast update timestampformat: date-time · nullable

MediaAssetKindenum

High-level media asset type.

image | video

UploadUrlInfoobject

Information required to upload raw bytes directly to storage.

curl_examplestringOptional curl example for conveniencenullable
required_headersobjectHeaders that MUST be included when uploading (e.g. Content-Type)nullable
upload_method*stringUpload method
upload_url*stringSigned URL for uploading bytes via PUT

Validate a payload

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