# AI3D API v2 model: worldlabs2-images-to-rgbd Estimate cameras and depth for one or more scene images. - AI3D provider: `worldlabs2` (World Labs Atlas / Marble 2 beta). - Provider task: `images2PosedRGBD`. - Task category: `image_to_rgbd`. - Availability: appears in `GET /v2/models` when `WORLDLABS2_ENABLED=true`. - Access: operator API keys only during beta. Customer keys and mobile tokens are rejected before submission. Customer prices and measured API usage are not yet available; the beta rate card must be verified before customer billing is enabled. Operator keys with `track_provider_cost` also cannot create new beta jobs until pricing is supported. ## Interactive example Try the Atlas nearby-view example at : pose a photograph with this model, then create a nearby view with worldlabs2-generate. An eligible AI3D operator key is required; each stage may consume beta credits. ## Submit and poll Send `POST https://api.ai3d.dev/v2/jobs` with an AI3D operator bearer key and a stable `Idempotency-Key`. Never send the World Labs provider credential to a client. This uses the new beta credential, independently of the existing `worldlabs` and `worldlabs-draft` models. ```json { "model": "worldlabs2-images-to-rgbd", "input": { "targetResolution": [ 1280, 720 ] }, "image_url": "https://example.com/scene.jpg" } ``` Poll the returned authenticated job URL until `succeeded` or `failed`, then download the job's archived artifacts. The worker persists the beta operation ID and deduplicates transport retries by AI3D job ID. It never uses blocking `wait=true` submissions. ## Inputs and outputs Task fields use the provider's camelCase spellings inside `input`. Only `worldlabs2-images-to-rgbd` accepts a top-level `image_url`; alternatively provide its `input.frames` array, with one `imageAsset` per frame. Other tasks receive cameras, frames, or `splatAsset` in `input`. `source_job_id`, `model_url`, and `video_url` are not accepted for these tasks. Each asset is either `{"assetId":"asset_..."}` from the same beta project or `{"url":"https://..."}` with a public HTTPS URL. Inline base64, provider webhook fields, and unknown settings are rejected. Input settings retain the common 16 KiB limit. At most 32 frames or target views are accepted for generate, inpaint and splat requests. Chisel accepts up to 128 target cameras within its weighted view limit (3 per context frame, 1 per source frame and 1 per target camera, 128 in total), but the 16 KiB input limit is reached first, at about 80 prompt-only target cameras; explicit splat-to-mesh camera lists accept up to 512, subject to that JSON size limit. A failed job's `error` names World Labs' stable reason when it gives one, for example `Atlas beta task failed: CONTENT_POLICY`, `THROTTLED`, `EXECUTION_FAILED`, `EXECUTION_TIMEOUT` or `INVALID_INPUT`. The `atlas-response.json` artifact preserves cameras, depth ranges, resolved prompts, seeds when returned, and durable beta asset IDs. Expiring read URLs are omitted beside asset IDs. Downloaded files are archived separately with `source_path` links such as `frames[0].depth.depthAsset.url`; depth, confidence, mask, image, and mesh outputs retain their roles. JSON references can be reused in another beta job while the assets remain in the provider project. AI3D archives do not depend on the provider's retention window. Publishing a pose job also publishes its normalized image output, which derives from the source photograph. For the quickstart workflow, pose an image with `worldlabs2-images-to-rgbd`, download `atlas-response.json`, copy its first frame to `worldlabs2-generate`'s `contextFrames`, and provide a target camera copied from that frame with a modest positional move. Camera coordinates default to `rub` (Three.js/OpenGL), positions use the scene's approximate metric scale, and quaternions use XYZW order. `returnDepth=true` on view generation needs cameras with different positions. Chisel targets must be 1280 x 720; Chisel depth output requires at least two target cameras. Depth files use either linear EXR (`depthAsset`) or inverted log-depth PNG (`logDepthAsset`, `zMin`, `zMax`). ## Provider reference - https://atlas-beta.worldlabs.ai/docs/api-reference/images2-posed-rgbd - https://atlas-beta.worldlabs.ai/docs/web-quickstart - https://atlas-beta.worldlabs.ai/docs/cameras-and-posed-images - https://atlas-beta.worldlabs.ai/docs/billing