Estimate cost
estimateWhat a piece would cost and whether it can launch, BEFORE anything is spent — the same verdict the human cockpit shows. Accepts the same arguments as project creation (idea, format, source, cast, production). $0, no LLM.
The answer has two parts: launch.ready says whether the REQUEST is complete and allowed (launch.blockers names what is missing); economics says what it costs and whether the wallet governs it: estimateUsd (typical) with estimateMinUsd/estimateMaxUsd (a band, not a quote — production charges what it actually spends), walletBalanceUsd, and reason, one of: guard_inactivo — billing is not active in this environment: no wallet governs the launch. · saldo_desconocido — the wallet balance could not be read; nothing is inferred from that. · pedido_sin_cotizar — not enough to price yet: the request needs an idea (prompt_seed or source) and a duration_profile (or the platform default). · alcanza — the wallet covers the estimated band. · casa_invita — first piece of this account: it is on the house; the band is informational. · excede_bienvenida — first piece of this account, but this request exceeds the welcome allowance; exits lists the adaptations that fit (shorter, no presenter). · operador_de_la_casa — this credential belongs to a platform operator: production is not charged to this wallet; the band is informational. · no_alcanza — the wallet does not cover the estimated band; exits lists the adaptations of the request that fit the balance (a shorter profile, no presenter), when there are any. economics.applies is true only when the wallet does not cover the request; estimateMaxUsd against walletBalanceUsd is what decides whether a real wallet covers the piece; hint restates the reason in words. WHERE THE LINE STOPS FOR FUNDS: the script (first station) is written and charged BEFORE any wallet check; the first station that checks the wallet is the studio build, then the final render — if the wallet does not cover a station the line stops there (the project status reports waitingForFunds with the station and the shortfall) and what was already produced stays paid. vocabulary in the answer glosses every typed value that is not English.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cast | No | The cast, as at creation. A presenter on screen (`face`, `on_camera` or `describe_face`) moves the price. | |
| source | No | The creator's OWN material. `kind=script` + `respect=strict`: the piece narrates the text verbatim (word-level control from the start); `kind=content`: an article or notes the Director adapts (`respect` guided|adaptive). Without it the Director writes from `prompt_seed`. | |
| material | No | The creator's own uploaded files that belong to this piece (footage, photos, a recorded voice). Each item names one file of the personal library by its `assetId`: the id alone, or an object with `asset_id` and a `purpose` (what the file is for in the piece). The files are stored with the piece; the answer says what the piece does with them (`direction`), and they are not part of the price. While a file is still being verified, the `handle` of its upload is accepted in place of the id, and the request is answered as not ready; a file that is not in the caller's library is answered as not usable. | |
| production | No | ||
| prompt_seed | No | The idea (the same field as at creation). Optional here: without an idea or a `source` the verdict says `no_idea` and there is no price yet. | |
| target_language | No | ||
| creative_referent | Yes | A referent id from Vixdeo's catalogue of formats. |