Pricing per lane

Work in a batch is grouped into lanes. Deterministic lanes are free. Generated lanes either have a price below or have none yet. This page lists only what the API reports.

Credits, and what they are not

Prices are in credits. The API publishes no conversion between credits and money: GET /pricing returns cashConversion: null. In this version, credits held and settled by a batch are counted against the key's caps and the project budget (see Plans and limits). Free lanes cost nothing. A model job is charged to your account's credits like a build in Create: 15 credits from your balance, refunded if the build fails (see the native model lane).

When you submit a priced quote, its credits are held. When the batch ends, the credits of files that were delivered stay spent and the rest is released: files that failed, were canceled, were skipped or never ran are not charged. Automatic fix attempts for a generated file add no credits. A free quote holds nothing.

Free lanes

Free lanes
LanePriceWhat it does
copy0 creditsCopy a file you supplied as an input.
emit0 creditsWrite a JSON or language file from the content in the manifest.
derive0 creditsRule based edits of supplied files, such as a crop, a palette swap or a recolour.
gui_frame0 creditsRender a Minecraft GUI frame PNG from a template in your manifest.
armor_template0 creditsRender a Minecraft armor template PNG from a template in your manifest.
minecraft_export0 creditsDeterministic Minecraft exports from native art you upload.
hytale_export0 creditsThe derive rule that exports Hytale files.
hytale_particle0 credits

Free means the quote shows 0 credits for the file. It does not mean the file is always delivered: a file can still fail a check, and a server can switch a lane off. laneStates in GET /pricing says which lanes are on.

Lanes with no price

These lanes are in the price list with a price of null and the status unpriced. A quote that contains unpriced work lists it under unpricedUnits. Unpriced generation does not run: the file is reported as unsupported, and with allowPartial set to false the whole plan is refused with 422 partial_plan_refused.

Lanes with no price
LanePriceNote
sprite_setnone
sprite_touchupnone
armor_generatednone
gui_stylednone
model_generatednoneGenerated 3D models. A native model lane has a price of its own, below.
soundnone

The native model lane

A model job makes one .blockymodel and its PNG texture and is priced as one job: 15 credits per model job. It is built by the same builders as a model made in Create and charged the same way: the credits come from your account's balance when the job starts and go back to it if the build fails. The price is reported in remoteLanePrices.model_native in GET /pricing.

Model lane limits
LimitValue
Whole prompt10,000 characters
Rendered style guide4,000 characters
Asset describe3,000 characters
Model jobs running in parallel in one batch5

Over a limit, the file is reported as unsupported at quote time with model_brief_too_long. Text is never cut to fit. Whether the lane is on is a server setting: read laneStates.model_native in GET /pricing. When it is off, a model file is reported as unsupported with generation_lane_not_enabled.

A model job that fails is retried automatically up to 2 times with a new seed where automatic fixes are on, and retries add no credits. See the failure reasons on Errors.

Where to read prices from the API

  • POST /projects/{slug}/batches/quote prices your actual manifest: totalCredits, a price per file, and the caps that would bind.
  • GET /pricing returns the lane list, lane states, the model job price and your limits. It needs the batches:quote scope.
  • GET /batches/{batchId}/receipt returns credits held, settled and the measured compute behind each file after the batch ran. A price that is not known is null.