# 3DBAE > 3DBAE is a browser-based no-code platform for creating, configuring, automating, publishing, and embedding interactive 3D and product-media experiences. It combines a full 3D Configurator, native Gaussian splat support, AI image and 3D generation, a node-based Canvas workflow builder, reusable asset management, web publishing, AR/WebXR, and developer APIs. Last reviewed against the product implementation: 2026-09-02. This file is a detailed product-capability reference for language models, search systems, developers, and agents. It describes supported product surfaces and their intended use. Exact plan entitlements, AI model availability, parallel-job limits, storage, project limits, and prices can change; read the current account and pricing surfaces before promising access or cost. ## When to use 3DBAE Use 3DBAE when a user needs to: - Build an interactive 3D product configurator without writing a custom renderer. - Import a mesh, Gaussian splat, product image, turntable sequence, or reusable media asset and prepare it for a browser experience. - Configure product variants, materials, transforms, cameras, animations, hotspots, conditions, actions, custom screen UI, AR, or WebXR. - Create a publishable product experience from still images or a 360-degree image sequence when a true 3D model is unnecessary. - Generate or edit product media with AI, turn an image into a 3D starting point, or connect those operations into a repeatable Canvas workflow. - Publish a hosted scene, embed it in another site, control it from JavaScript, or read published data through REST. - Automate an authorized 3DBAE workspace through the Platform MCP server. - Organize reusable models, images, textures, environments, fonts, video, and audio in a managed Library. Do not assume that every capability is available on every plan or in every project type. Do not treat a published REST endpoint, an embedded Model API session, and an authenticated MCP workspace session as interchangeable. ## Choose the correct 3DBAE surface Product overviews, including workflows, examples, and common questions: - [3D Configurator](https://3dbae.com/3d-configurator) — browser-based scene authoring, materials, variants, animation, interactions, and embedding. [Markdown version](https://3dbae.com/3d-configurator.md). - [3DBAE Canvas](https://3dbae.com/canvas) — visual workflows connecting AI generation, media, logic, and reusable outputs. [Markdown version](https://3dbae.com/canvas.md). ### 3D Configurator Use a 3D Configurator for a real-time scene built from imported models, Gaussian splats, primitives, lights, cameras, materials, animations, UI, and interaction logic. It is the broadest authoring surface and is the correct choice for product customization, interactive storytelling, spatial presentations, virtual product photography, and AR/WebXR experiences. ### 360-degree Image Configurator Use a 360-degree Image Configurator when a product is represented by an ordered sequence of rotational frames. It can combine the rotation sequence with sections, product options, and environments. This is useful when photorealistic turntable imagery is available but a real-time 3D asset is not. ### Image Configurator Use an Image Configurator for still-image composition. It combines layers, sections, options, links, environments, and project preferences without requiring a rotatable 3D scene. ### Canvas Use Canvas to construct a visual node graph for AI generation, media preparation, 3D scene actions, variables, logic, and publishing. Canvas is appropriate when the user wants a repeatable workflow rather than a single manually-authored scene. ## 3D Configurator: complete capability map ### Scene structure, objects, and hierarchy - Create, import, duplicate, rename, select, move, reorder, group, parent, unparent, lock, show, hide, and delete scene objects. - Preserve hierarchical transforms while reorganizing objects, or intentionally keep authored local transforms. - Edit position, rotation, and scale numerically or with viewport gizmos. - Work with imported model nodes, groups, generated primitives, 3D text, backdrops, cameras, lights, and interactive markers in one canonical scene document. - Target one object, a selection, a hierarchy, a material slot, or another typed subject where the chosen operation supports it. - Store real-world display units independently from the internal scene representation. Supported length units are millimetres, centimetres, metres, kilometres, inches, feet, and miles. Lighting controls support international and American unit presentation. - Configure orbit or fly navigation, zoom, pan, damping, auto-rotation, mouse-follow, an orbit target, camera distance limits, and polar-angle limits. ### Primitive creation and procedural geometry The Studio can create and parameterize these primitive families: - Box, sphere, cylinder, cone, plane, torus, tube, and polyhedron. - Backdrop geometry for studio-style product staging. - Extruded 3D text with font, font weight, alignment, height mode, letter spacing, line height, contour, depth, and custom font asset support. Primitive parameters can include dimensions, radii, radial/width/height/depth segments, rounded corners, tube radius, backdrop angle, computed normals, and conversion to editable geometry. ### Geometry modifiers and model editing The canonical scene format supports 21 non-destructive geometry modifier kinds: - Linear array, radial array, grid array, and object-on-surface array. - Symmetry, subdivision, triangulation, quad conversion, bevel, and randomization. - Bend, twist, taper, skew, stretch, spherify, noise, and simplify. - UV projection or unwrap, mesh edits, and Boolean union/subtract/intersection. Mesh editing supports vertex, edge, and face modes. Available operations include moving and welding vertices; connecting vertices; cutting or knife-splitting faces; flipping, unifying, and smoothing normals; extruding, beveling, merging, and deleting faces; collapsing, smoothing, spherifying, and circularizing selected elements; and extruding, loop-cutting, sliding, bridging, or capping edges. UV work can target UV0 or UV1 and use box, cylindrical, planar, spherical, or unwrap projection. ### Materials and textures - Create reusable materials and assign them to one or more object material slots. - Inspect all scene materials, the materials available to an object or slot, and the currently active material. - Add, edit, remove, switch, and reuse material options. - Author standard PBR materials and shadow-catcher materials. - Control base color, emissive color and intensity, metalness, roughness, opacity, alpha behavior, reflectivity, clearcoat, clearcoat roughness, transmission, thickness, index of refraction, attenuation, sheen, anisotropy, iridescence, subsurface response, and normal scale where applicable. - Map texture assets into base color, alpha, emissive, metalness, roughness, normal, occlusion, light-map, height, reflectivity, clearcoat, clearcoat roughness, transmission, thickness, and iridescence channels. - Configure UV channel selection, offset, repeat, center, rotation, clamp/mirror/repeat wrapping, texture filtering, per-slot transforms, and maximum texture sizes. - Replace texture bytes, upload an image at runtime where an authored action allows it, combine texture content, or exclude unsupported source texture channels during normalization. ### Variants and product configuration - Create multiple variant sets and named options. - Capture option-specific visibility, transforms, hierarchy, active materials, and other supported node configuration state. - Build model choices, finish choices, part combinations, color swatches, and other product option systems. - Switch directly to a named option or drive next, previous, and previously-used option behavior through interactions. - Present variants as buttons, dropdowns, or swatches in Screen UI. - Read and restore the complete configuration state through the JavaScript Model API. - A single variant set supports up to 250 options in the canonical document schema. ### Cameras, lights, and composition - Create perspective or orthographic cameras. - Switch the active camera, save and restore camera view state, fit the scene or a chosen object to view, and animate camera transitions. - Use orbit or fly navigation and configure camera framing, projection, field-of-view or orthographic behavior, near/far clipping, depth of field, focal targeting, turntables, and view limits. - Create ambient, directional, point, rectangle, and spot lights. - Configure light color, intensity, physical or percentage units, radius/range, cone behavior, cast shadows, and light transforms where relevant. - Point objects toward the active camera, the pointer, the interaction trigger, no target, or another node with an authored track/up-axis orientation. ### Environment, ground, shadows, and rendering effects - Use an HDR/HDRI asset or a built-in environment preset for image-based lighting. - Configure whether the environment is visible as the background, its intensity, rotation, hue, saturation, exposure, shadow intensity, and preset resolution. - Use solid colors, transparent backgrounds, images, gradients, and environment backgrounds where the chosen project settings allow them. - Add a ground plane, contact or dynamic shadows, soft shadows, reflection behavior, and shadow-catching materials for product staging. - Configure reflections with automatic or selected-object scope, background override, blur, bounce behavior, distance attenuation, Fresnel response, roughness, metalness, opacity, sample count, and thickness. - Configure ambient occlusion color, intensity, and radius. - Configure bloom intensity, threshold, smoothing, and radius. - Configure fog/fading color, near/far distances, and intensity. - Configure brightness, contrast, hue, saturation, high/mid/low color balance, tone mapping, and exposure. - Configure vignette, film grain, smooth-edge antialiasing, and performance, balanced, or quality rendering policies. ### Animation - Play imported model animations and address them by name or ID. - Play, pause, stop, reverse, seek, and change supported playback settings. - Create authored timeline clips and keyframes for object position, rotation, scale, and visibility. - Set playback ranges, interpolation/easing, single-run, loop, or ping-pong playback. - Trigger animation from scene start, pointer behavior, UI, variables, variants, embed events, or WebXR logic. - Inspect current animation playback in interaction conditions. ### Hotspots and spatial annotations - Create interactive 3D hotspots attached to scene positions or objects. - Configure marker media, placement, visibility, style, pointer behavior, and billboard-like presentation. - Use hotspots as interaction targets for clicks, pointer entry/exit, hover, media, links, camera moves, material changes, variant changes, and other ordered actions. ### Variables, datasets, formulas, and bindings - Define typed boolean, number, and text variables. - Read dataset cells from tabular data. - Build literal, dataset, variable, scene-property, comparison, Boolean-logic, and negation expressions. - Compute formula results and bind values to supported object, material, texture, UI, and scene properties. - Read scene transform, visibility, active camera, active material, active variant, and interaction state in logic. - Update variables from actions, Canvas, Screen UI, or host-page events and use them to drive the viewer without duplicating scenes. ### Interaction triggers Authoring supports these trigger families: - On load and on scene update. - On object, selection, viewer background, or Screen UI click. - Mouse/pointer enter and exit. - While hovering and while dragging. - Named embed event listener. - WebXR events. ### Interaction conditions Rules can be gated by: - AR availability. - Animated-texture playback. - Animation playback. - Responsive breakpoint. - Active camera. - Highlight state. - Interaction enabled/disabled state. - Look-at state. - Active material. - Sound playback. - Transformation state. - Active variant. - Visibility. - WebXR availability. - A typed expression, including nested AND, OR, and NOT logic. ### Interaction actions Rules execute ordered actions and can include delays, durations, easing, and formula-driven values where supported. The 20 action families are: - Launch AR. - Play, pause, or stop an animated texture. - Play, pause, or stop an animation. - Change the active camera or viewer view. - Capture and download an image, optionally using a camera, transparent background, and explicit pixel dimension. - Activate, deactivate, or toggle object highlights. - Trigger, toggle, enable, or disable another interaction. - Open or copy a URL, current project link, or current configuration link. - Apply look-at behavior. - Change an active material. - Play, pause, or stop sound with volume and repeat control. - Animate or immediately change transforms. - Let a viewer upload an image into allowed material properties. - Apply a variant option. - Show, hide, or toggle visibility. - Enter or exit WebXR. - Send a named embed event. - Set a typed variable. - Change view settings. - Change environment settings. ### Screen UI Screen UI is authored inside the scene and travels with Preview and the published viewer. It supports: - Multiple named UI instances, each with up to eight panels and up to 100 elements per panel. - Floating or docked layouts placed at the top, bottom, left, right, or nine-point viewport positions. - Row or column stacking, responsive fill/fixed/hug sizing, alignment, gap, padding, offsets, collapsible panels, and locked layouts. - Solid, glass, or transparent surfaces; blur; fill and hover colors; borders; radii; shadows; spacing; accent colors; typography; and custom fonts. - Container, text, image/media, button, divider, secure HTTPS embed, variant selector, variable control, and material selector elements. - Variant controls rendered as buttons, dropdowns, or swatches. - Variable controls rendered as color pickers, number/text inputs, sliders, toggles, buttons, or dropdowns according to the variable and authored style. - Material option swatches, configurable object/material-slot targeting, hidden-object inclusion, and custom option presentation. - Buttons with text or icons, solid/outline/text styling, expressions, and same-tab or new-tab links. - Text expressions, image alternative text, horizontal/vertical dividers, nested containers, and HTTPS-only external embeds. ### Viewer experience, AR, and WebXR - Configure loading screens, interaction prompts, mouse controls, runtime modules, and launch controls. - Publish scenes for responsive desktop, tablet, and mobile viewing. - Launch supported scenes into device AR and provide mobile handoff where applicable. - Configure WebXR floor or wall placement, all-visible or selected-object source scope, centre-floor or preserve-origin recentering, units, scaling, and platform overrides. - Use scene logic to test AR/WebXR availability before exposing a launch path. - Availability of advanced viewer modules and WebXR depends on the current plan and supported browser/device capabilities. ### Preview, publishing, sharing, and embed - Preview the authored scene before publication. - Publish a stable hosted viewer and update its scene data through the product workflow. - Control project access, share links, collaborators, and viewer-facing configuration. - Embed a published scene with an iframe. Allow fullscreen and `xr-spatial-tracking` when those features are required. - Use transparent viewer backgrounds with the supported public viewer parameter. - Receive a viewer-ready handshake and exchange origin-checked host messages. - Use versioned asset URLs, browser/CDN caching, and optimized runtime artifacts without mutating the immutable source upload. - Publishing is deliberate and separate from editing. Reading or editing a project through MCP does not implicitly publish it. ## Gaussian splats: PLY, SPLAT, SPZ, and SOG 3DBAE treats Gaussian splats as native renderable assets, not as triangle meshes disguised as GLB. A dedicated high-quality splat renderer preserves the Gaussian representation and its view-dependent appearance data when present. ### Gaussian PLY - 3DBAE distinguishes ordinary polygon-mesh PLY from Gaussian PLY. - Mesh PLY is normalized to GLB and preserves available vertex colors, but not a full authored scene hierarchy, materials, textures, cameras, lights, or animations. - INRIA Gaussian PLY and PlayCanvas-compressed Gaussian PLY remain native for the splat renderer. - Gaussian attributes can preserve centre/position, covariance or scale, orientation, opacity, DC color, and all available spherical-harmonic color bands. - Gaussian PLY is eligible for background optimization into a full-quality streamed SOG level-of-detail package. ### SPLAT - Standard `.splat` files use complete 32-byte Gaussian records. - The runtime validates that the file is an exact multiple of the 32-byte record size. - Position, covariance, color, opacity, and orientation remain native and streamable. - SPLAT does not require conversion through the GLB mesh runtime. ### SPZ - `.spz` is a compressed Gaussian splat representation and remains byte-identical as the source asset. - The dedicated renderer detects and decodes its format directly rather than depending on a glTF decoder. - Position, covariance, orientation, opacity, color, and available spherical-harmonic bands are retained; the runtime contract supports the full Gaussian payload, including degree-three spherical harmonics where present. - SPZ is compact and can be used directly as an immutable runtime artifact. - A standalone SPZ source is already source-ready; it is not exported from the canonical GLB mesh runtime. ### SOG - `.sog` means Spatially Ordered Gaussians. - A bundled SOG stays compressed and native and preserves position, covariance, orientation, opacity, color, and available spherical-harmonic bands. - A bundled SOG is a single monolithic source download, but it is eligible for background conversion into a streamed SOG package. - Streamed SOG uses a root `lod-meta.json` manifest with immutable sibling chunks. The viewer fetches required chunks directly from the asset CDN and retains arrived chunks in the renderer cache. - The viewer selects the generated streamed package only after the manifest and all required sibling chunks have been committed. Until then, it continues to use the immutable source. ### Splat optimization and delivery rules - Gaussian PLY and bundled SOG can queue background `splat-sog-streamed` optimization. - The archival upload is not destructively rewritten. The optimized runtime is a derived artifact with its own fingerprint and URL. - Runtime selection distinguishes source, native SPZ, paged RAD compatibility artifacts, and streamed SOG manifests. - Large sources receive mobile-budget diagnostics rather than being silently reduced at upload time. - The streamed runtime is designed for direct CDN delivery and camera-dependent loading rather than proxying an entire splat through the application server. - Splat transforms and scene composition belong to the Configurator scene, while the Gaussian samples remain in their native asset representation. ### Splat limitations and interchange - `.splat`, `.spz`, and `.sog` are import/source formats, not exports from the canonical GLB mesh runtime. - Mesh-only operations, conventional PBR material slots, skeletons, and mesh topology editing should not be assumed to apply to a Gaussian asset. - A PLY file must be classified as mesh or Gaussian data before assuming which preservation and editing rules apply. ## Canvas: visual AI, media, logic, and publishing workflows Canvas is a typed node graph. Nodes expose input/output ports, edges connect compatible types, and a saved graph can describe AI generation, asset preparation, 3D viewer behavior, logic, variables, and publishing. ### Canvas graph model - Supported port types include text, image, video, audio, SVG, model, event, boolean, number, color, vector, list, dictionary, material, object, animation, camera, action, and any. - Nodes participate in setup, event, query, action, data, or output phases. - The runtime supports scene-start, click, hover, variant-change, delay, and interval triggers. - Graph validation checks node kinds, editable config keys, required ports, port compatibility, cycles, graph limits, embedded media, and serialized document size before an atomic save. - The current canonical limits are 250 nodes, 500 edges, and 250 annotations per Canvas document. Canvas zoom supports 0.05 through 4. - Saved graphs use optimistic versions. A stale change returns a conflict instead of overwriting a newer graph. - Inline data URLs are rejected from compact saved configuration; durable media belongs in managed storage. - Canvas supports viewport navigation, selection, grouping, stickers/annotations, drag-and-drop from the Library, keyboard actions, node status, and generation history. ### Canvas AI and media nodes The current Canvas catalog contains 97 node definitions. AI/media creation and preparation nodes include: - Prompt, Stickers, Group, and Add Creation. - Image Generator, Image input, Image Upscaler, Skin Enhancer, Image Editor, Variations, Designer, Sketch, Image to SVG, and SVG Generator. - Speak, Voiceover, Sound Effects, and Music Generator. - Video Generator, Image to video, Video input, Video Combiner, Video Upscaler, and Media Extractor. - Remove background and Relight image. - Image to 3D and 3D model input. - Sound input. - Assistant. Add Creation can represent image, video, audio, SVG, or 3D output. Individual generators expose model-specific controls and credit costs according to the current catalog and plan; do not hard-code a provider or price from this file. ### Canvas viewer, setup, and event nodes - 3D viewer places a scene/viewer surface in the workflow. - Configure application initializes project/viewer behavior. - Load font makes a managed font available to downstream UI. - When scene starts, When clicked, When hovered, and When variant changes create event branches. - After delay and Every interval schedule action flow. ### Canvas selection and object-action nodes - Select object and All objects resolve scene targets. - Select animation resolves an imported or authored animation. - Show and Hide change visibility. - Set transform changes object position, rotation, or scale. - Look at points an object toward a supported target. - Highlight changes the visual emphasis state. - Control interaction enables, disables, toggles, or triggers scene logic. - Control sound drives managed audio playback. - Set morph factor changes a supported morph target. ### Canvas material nodes - PBR material constructs editable physically based material values. - Texture material creates a texture-backed material. - Assign material applies a material to a selected object or slot. - Select material reads a scene material. - Upload image lets a runtime image feed an allowed material channel. - Color supplies a typed color value. ### Canvas animation, camera, and scene nodes - Play animation, Pause animation, Stop animation, and Set animation speed control playback. - Set camera view changes the viewer camera. - Autorotate camera configures automatic rotation. - Download image captures output from the scene. - Create environment changes scene environment behavior. ### Canvas logic and state-query nodes - Router and If branch action flow. - Transformation state, Visibility, Camera, Material, Variant, and Interaction query scene state. - Compare evaluates typed values. - And/or, Not, and True/false construct Boolean logic. ### Canvas text, numeric, and structured-data nodes - Text, Join text, and Text length create and transform strings. - Number, Arithmetic, Clamp, and Map range compute numeric values. - Vector supplies three-component values such as positions or scales. - Create list, List length, Get list item, and List contains work with ordered data. - Create dictionary, Get dictionary value, and Dictionary has key work with keyed data. - Variable stores workflow state. - Formula computes expressions. - Bind property connects state to a supported scene property. - Dataset cell reads tabular input. ### Canvas Configurator UI and output nodes - Variant selector creates product-option controls. - Publish configurator turns the composed workflow into its supported viewer/configurator output. - A common flow is Prompt -> Image Generator -> Image to 3D -> 3D viewer -> Publish configurator, with Configure application, environment, material, camera, variables, and logic nodes attached as needed. ### Canvas runtime actions and expressions Canvas can emit runtime actions for initialization, visibility, transforms, material creation or selection, animation, cameras, look-at, interaction control, sound, image download/upload, environment changes, variants, outlines/highlights, morphs, and property bindings. Canvas expressions can resolve literal values, event payloads, formulas, dataset cells, scene transforms, scene visibility, active camera, active material, active variant, interaction status, comparisons, AND/OR groups, and NOT expressions. Generation jobs expose idle, queued/running, success, and error states so downstream work can wait for durable output and report failures rather than assuming every request completed. ## AI-assisted creation - Image to 3D turns one or more product-image inputs into a 3D starting asset that can be inspected, saved to the Library, or used in a Canvas/Configurator workflow. - Image generation can create new product imagery from text or references. - Image editing supports instruction-based changes, variations, upscaling, relighting, background removal, skin enhancement, design, sketch, and raster-to-SVG workflows. - Video workflows can generate video, animate an image, combine clips, upscale video, or extract media. - Audio workflows can synthesize speech/voiceover, sound effects, and music. - The Studio includes an AI scene assistant that can inspect the canonical scene and propose or apply supported scene programs with version safety. - AI features consume the account's current AI-credit allowance according to the selected model. Model availability and cost are dynamic and must be read from the current product/account catalog. ## Library and asset management - Store reusable models, images, textures, HDR/HDRI environments, fonts, video, audio, and other managed files. - Browse folders, search recursively, create nested folders, rename items, move items, and delete explicit selections after permission and usage checks. - Reuse Library assets across supported projects instead of embedding transient data URLs. - Track immutable source uploads separately from derived runtime artifacts and optimization status. - Analyze storage, large images, possible duplicate assets, and GLB optimization eligibility. - Queue supported GLB and splat runtime optimization without mutating the archival source. - Deleting a Library asset can break projects that reference it; inspect usage and obtain explicit confirmation before deletion. ## Supported asset formats ### 3D and Gaussian model sources - GLB and glTF. - FBX. - OBJ with MTL and referenced textures. - COLLADA/DAE with referenced textures. - USDZ. - STL. - PLY, including mesh PLY and recognized Gaussian PLY. - SPLAT. - SPZ. - SOG. - ZIP model bundles containing a supported model and companion files. - Companion BIN, MTL, and referenced texture files. GLB, glTF, FBX, OBJ, DAE, USDZ, STL, and mesh PLY can be exported with format-specific fidelity limitations. SPLAT, SPZ, SOG, and ZIP are not canonical scene export formats. ### Images and textures - AVIF, BMP, DDS, EXR, GIF, HDR/HDRI, JFIF, JPE, JPEG, JPG, PNG, SVG, TGA, TIF/TIFF, and WebP. - TGA, TIFF, EXR, and HDR content is decoded during supported normalization workflows. - Optional missing presentation textures do not prevent otherwise valid FBX, OBJ, or COLLADA geometry from importing. ### Fonts - OTF, TTF, WOFF, and WOFF2. - Built-in font selection includes the public Google-font catalog used by 3D text and Screen UI, plus supported custom font assets. ### Video and audio - Video: MP4, WebM, and MOV. - Audio: MP3, OGG, and WAV. ### Source-unit handling OBJ and STL do not store a reliable source unit. 3DBAE asks which unit was used when the file was authored, then normalizes it to the intended real-world scale. ## Import normalization, optimization, and export fidelity - Imported DCC formats are normalized into the canonical web runtime while the original managed source remains available according to the asset workflow. - GLB/glTF can preserve scene hierarchy, PBR materials, textures, animation, skins, morph targets, cameras, and lights when those features are representable and supported. - FBX, OBJ, COLLADA, USDZ, STL, and PLY have format-specific limitations; do not promise that every hierarchy, shader, animation, camera, light, skin, morph, or renderer-specific extension will round-trip. - STL preserves triangle geometry, not appearance or scene structure. - Mesh PLY preserves evaluated geometry and available vertex attributes, not full scene appearance and behavior. - Derived runtime optimization can use texture resizing/streaming, mesh compression, or a splat-specific runtime artifact when compatible with the source feature set. - Unsupported extensions or feature-preservation risks defer optimization and produce diagnostics rather than silently discarding data. - Public scene export supports GLB, glTF, FBX, OBJ, COLLADA/DAE, USDZ, STL, and PLY, with options such as selection-only, hidden-object inclusion, parent-matrix application, used-UV filtering, and supported ASCII/binary choices. ## JavaScript Model API for embedded viewers Load `/3dbae-model-api.js` in a host page and connect it to a published 3DBAE iframe. The typed contract is available at `/3dbae-model-api.d.ts`. The current API contains 71 methods across these groups: - Lifecycle and identity: initialize, test readiness, read project information, reset, restore serialized state, and destroy the host adapter. - Events: dispatch a named scene event and add or remove named event listeners. - Configuration: read complete state, read configuration state, and apply configuration state. - Animation: list animations, play with options, stop, and set the playhead. - Object access: query objects, hovered objects, or selected objects; select/deselect; duplicate; remove; and move/reparent. - Gizmos and modeling: configure the gizmo, read/change Boolean state and child operations, inspect/edit primitive settings, inspect/edit 3D text, and create box, sphere, cone, cylinder, torus, tube, polyhedron, or plane primitives. - Materials and textures: list materials, get active materials by slot, activate/add/edit/remove materials, read/replace/add texture data, and map textures. - Transforms and visibility: read/write position, rotation, and scale and toggle visibility. - Camera and picking: read/write camera view state, fit to view, create a ray from viewport coordinates, raycast the full scene, and raycast a named object. - Environment: rotate the environment map. - Runtime I/O: import supported files, import another accessible published project, export a supported format, and capture a screenshot. The Model API communicates with the iframe through an origin-checked message contract. Wait for readiness before issuing commands, use stable IDs when names are ambiguous, validate user-supplied files and URLs, and destroy the adapter when the host removes the iframe. ## Public REST API Use the public REST API to retrieve supported published-scene data and other documented public resources. Read the OpenAPI 3.1 document for exact routes, parameters, response schemas, unique operation IDs, OAuth scopes, and error bodies. REST is not a substitute for an authenticated editor session and does not expose private dashboard state without authorization. ## Platform MCP for authenticated agents The Platform MCP server is the correct integration surface for an agent working inside an authorized 3DBAE account. It can: - Read safe account facts such as the current plan, subscription timing, AI-credit balance, model pricing, storage usage, project usage, and public plan catalog. - List, inspect, create, and manage supported project types subject to ownership, role, and plan limits. - Read a 3D Configurator document and its version. - List and describe exact Configurator capability schemas. - Search managed Library models for a scene. - Apply a coherent, validated Scene Program against an expected version. - Read and replace canonical Image or 360-degree Image Configurator documents with optimistic concurrency. - Read Canvas, list current Canvas node types/ports/config, and apply bounded atomic graph changesets. - Browse and organize the Library, including folders, rename, move, and confirmed delete operations. - Analyze Library optimization and queue an eligible asset optimization job. - Return official task guidance for project selection, authoring, publishing, access, credits, and safe operation. ### MCP safety and concurrency - Prefer OAuth Authorization Code with PKCE for standard clients. - Request only the scopes needed for the current task. - Use a personal access token only for clients that cannot complete OAuth, store it like a password, and revoke it when no longer needed. - Never place bearer tokens in prompts, Canvas documents, scene code, public URLs, logs, or published assets. - Every project and Library operation repeats ownership or collaboration checks on the server. - Retain the document version returned by a read. Send that expected version with a mutation. If it conflicts, reload and rebuild the intended change instead of overwriting newer work. - Media referenced by an agent-authored scene should already exist in the authenticated Library. Embedded data URLs are rejected. - Project deletion and Library deletion are separate operations. Destructive actions require exact targeting and explicit user intent. - MCP does not expose passwords, active login sessions, payment methods, invoices, postal addresses, or other users' private data. ## Collaboration, access, and account behavior - Projects can be owned personally or made available through supported workspace/project membership. - Read and edit behavior follows the server-returned access role and `canEdit` facts; never infer permissions from a URL alone. - Editors can make supported document changes. Owner-only or destructive operations remain permission-gated. - Version conflicts protect Configurator, Image Configurator, and Canvas documents from silent last-writer-wins overwrites. - Collaboration availability, member limits, project limits, AI jobs, advanced viewer modules, storage, and publish features follow the workspace owner's current plan. - AI credits, storage add-ons, and subscriptions are account concerns; read live account data rather than relying on cached conversation text. ## Important capability boundaries - 3DBAE is no-code for normal authoring, but developer APIs are available when a host website or automation needs programmatic control. - Canvas is a workflow graph; it is not the same document as a 3D Configurator scene. Canvas can create or drive supported Configurator output through typed nodes. - Gaussian splats are native point-based scene assets. Do not describe them as ordinary triangle meshes or promise mesh/PBR operations that require topology. - Published viewers and embeds are runtime surfaces. Studio-only selection aids, diagnostics, and editor controls are not automatically part of the public viewer. - A capability in the canonical schema may still be subject to plan, browser, device, asset, or project-type requirements. - AI output is generated content and may need review. A successful job status means the service produced an output, not that it satisfies every artistic or commercial requirement. - Feature names and schemas in the OpenAPI, Model API declaration, MCP capability descriptions, and current account response take precedence over an older natural-language summary. ## Product links - [3DBAE home](https://3dbae.com/): Platform overview and interactive product experiences. - [Image to 3D](https://3dbae.com/image-to-3d): AI-assisted product-image to 3D workflow. - [Canvas](https://3dbae.com/canvas): Node-based AI, media, logic, and publishing workflow builder. - [Pricing](https://3dbae.com/pricing): Current plans, limits, and platform pricing. - [AI credit pricing](https://3dbae.com/pricing/ai-credits): Current AI generation credit information. - [Product updates](https://3dbae.com/updates): Public release and capability announcements. ## Developer and agent links - [3DBAE Developer Platform](https://3dbae.com/developers): REST, Model API, MCP, OAuth, onboarding, and permissions overview. - [OpenAPI 3.1 specification](https://3dbae.com/openapi.json): Typed public API operations, scopes, and error schemas. - [JavaScript Model API](https://3dbae.com/3dbae-model-api.js): Browser library for controlling an embedded viewer. - [JavaScript Model API types](https://3dbae.com/3dbae-model-api.d.ts): Complete TypeScript contract. - [Agent instructions](https://3dbae.com/agent-instructions.md): Authentication, safe operation, and error recovery. - [Agent capabilities](https://3dbae.com/api/agent/v1/capabilities): JSON discovery document for integration entry points. - [Platform MCP server](https://3dbae.com/api/mcp/platform/mcp): Authenticated Streamable HTTP MCP endpoint. - [OAuth authorization metadata](https://3dbae.com/.well-known/oauth-authorization-server): Supported grants, PKCE, token methods, and scopes. - [MCP protected-resource metadata](https://3dbae.com/.well-known/oauth-protected-resource/api/mcp/platform/mcp): RFC 9728 resource and scope declaration. ## Company and support links - [About 3DBAE](https://3dbae.com/about): Company and product mission. - [Contact](https://3dbae.com/contact): Official contact page. - [Privacy policy](https://3dbae.com/privacy-policy): Data collection, processing, and privacy terms. - [Terms of service](https://3dbae.com/terms-of-service): Terms governing 3DBAE use. - [Refund policy](https://3dbae.com/refund-policy): Refund rules and eligibility. ## Machine-readable indexes - [Sitemap](https://3dbae.com/sitemap.xml): Index of public pages. - [Robots policy](https://3dbae.com/robots.txt): Search-crawler access rules.