Skip to main content
POST
Estimate a Factory run

Authorizations

Authorization
string
header
required

A sfc_at_… access token from simforge login, or an sfk_… API key. An operation's security lists the scopes the credential must hold.

Body

application/json
lookIds
string[]
required

Looks from GET /api/v1/factory/looks, each once.

Required array length: 1 - 12 elements
Pattern: ^[a-z0-9][a-z0-9-]{0,63}$
scenarioIds
string[]

The scenarios to make clips of, in this workspace. Exactly one of scenarioIds and datasetId.

Required array length: 1 - 500 elements
Required string length: 1 - 128
datasetId
string

Every scenario of this dataset (one this workspace owns, at most 500). Exactly one of scenarioIds and datasetId.

Required string length: 1 - 128
mode
enum<string>
default:positions

positions: the generator sees the layout and the look. simulator: also each camera's first Helios frame.

Available options:
positions,
simulator
seedsPerLook
integer
default:1

Clips per scenario and look, each on its own seed.

Required range: 1 <= x <= 10
cameras
enum<string>[]

The Alpamayo 4-camera rig, the only rig offered: every clip has all four cameras.

Available options:
camera_cross_left_120fov,
camera_front_wide_120fov,
camera_cross_right_120fov,
camera_front_tele_30fov

Response

The quote.

scenarios
integer
required
Required range: x >= 0
looks
integer
required
Required range: x >= 0
seedsPerLook
integer
required
clips
integer
required

scenarios × looks × seedsPerLook.

Required range: x >= 0
clipSeconds
enum<number>
required
Available options:
20
cameras
integer
required
cameraSeconds
integer
required

clips × cameras × 20 s: what a fully accepted run is priced on.

Required range: x >= 0
centsPerCameraSecond
integer
required
Required range: x >= 0
costCents
integer
required

The most the run can charge (every clip accepted). Flagged and rejected clips are free.

Required range: x >= 0
etaSeconds
integer
required

A rough wall-clock estimate from now; queues and cold starts move it.

Required range: x >= 0
allowed
boolean
required

Whether the same request to POST /api/v1/factory/runs would be admitted now (with a maxCostCents at least costCents).

refusal
object | null
required
warnings
object[]
required

What the run would do differently while still making its clips (a scenario authored shorter than 20 s is simulated on to 20 s: simulated_past_authored_end; a longer one takes its first 20 s: scenario_clip_window).