Flow
This page gives you the core model for the Flows API before you dive into endpoint-by-endpoint details.
Mental Model
A Flow is an asynchronous, multi-step workflow that turns your input into a finished 3D asset. You pick a template and provide the input; the Flow handles the processing steps needed to generate or optimize the model.
Core Objects
Template
A template defines the pipeline type. Common examples:
model_generate_frompromptfor text to 3Dmodel_generate_fromimagefor image to 3Dmodel_optimizefor optimizing an existing 3D model
Inputs
Inputs are the data sent to the template, for example:
- text prompts
- image data
- 3D model data
Outputs
Outputs are produced after successful processing. Use asset_id to fetch a specific output asset.
Assets
Assets are downloadable artifacts (for example .glb output files) associated with a flow output.
Polling And Terminal States
After flow creation, poll GET /flows/{flow_id} until the flow reaches one of these terminal states:
completedfailedaborted
Only fetch output assets when the flow is completed.
For full state-by-state behavior, see Flow Lifecycle.
Recommended Client Flow
- Create a flow.
- Validate response and store
flow_id. - Poll status with a fixed interval (for example every 3 to 5 seconds).
- Stop polling on terminal state.
- If completed, list outputs and download by
asset_id. - If failed or aborted, inspect details and retry with corrected input when appropriate.
Where To Go Next
- Run a complete end-to-end example in Quickstart.
- Learn template selection and payload shapes in Templates.
- Review state transitions in Flow Lifecycle.
- Diagnose failures in Troubleshooting.