API and agentsAPI reference
RecipeStep
object
editRevisionstringpattern^[0-9a-f]{32}$Opaque durable revision paired with this document state. Camera and derived writes do not change it.
lastChangedAtstringor nullformatdate-timeTime of the last accepted covered change, independent of camera and cache clocks.
lastChangedByA named actor has display and fixed SQL names. { deleted: true } explicitly identifies a deleted actor and carries no names or profile fields. Null explicitly means unknown. Never inferred from ownership.
One of:
object
namestringrequiredsqlNamestringrequired
No other keys.
object
deletedbooleanalwaystruerequired
No other keys.
or null
idstringrecipeIdstringordinalintegeroperationstringparametersobjectWhat the step means now — what its output was produced from. Non-scalar parameters are kept as sent.
summarystringOne line describing what this step does, composed from the operation and its active parameters — "500 m around stations". Served so every surface and every agent reads the same sentence rather than composing its own; it describes what the step means now, never a proposal awaiting a run.
proposedParametersobjector nullAn edit awaiting a successful run; null when there is none.
outputobjector nullThe output of the run this view describes: the caller's own latest output of the step when they have one, else the workflow owner's, each runner's output being their own dataset. The step's conditions, inputs and last success describe the same run. Shown when the caller reaches the dataset; one since deleted only to its runner and the workflow's owner. Null when neither has produced one or the caller does not reach it.
idstringnamestringor nullrunnerResourceOwnerThe person whose run produced it.
runIdstringor nullThe workflow run that produced it, when recorded.
jobIdstringor nullThe step's attempt that produced it, when recorded.
conditionstringThe first condition true of it, in the order broken, output missing, output unavailable, stale, never run, current — un-runnable before un-current, because offering a re-run that cannot succeed tells the user the wrong thing.
output_missing: the output of the run described was deleted.output_unavailable: that output exists but is outside the caller's reach (the workflow owner's, shown to a caller with no output of their own); it is named nowhere.One of
broken,output_missing,output_unavailable,stale,never_run,currentconditionsarray of stringEvery condition true of it. Conditions coexist: a step can have lost both an input and its output.
causesarray of StaleCausemissingInputsarrayWhat it lost, when it is broken — with the id and name it recorded, which is how the row explains itself after a deletion.
throughStepIdis set when the break arrived from a producer upstream rather than from this step's own input. Conditions are read within the caller's reach: an input the caller cannot reach is missing to them, named as written, and for a caller whose own space is not the workflow's SQL home it carriesmessage, the sentence a resource evaluation gives, the same for a hidden and a nonexistent dataset.(each item)objecttableIdstringtableNamestringthroughStepIdstringmessagestring
originobjector nullWhere a layer-authored step's SQL came from, including
substitutionNotewhen the layer aggregated and the step took the rows behind the cells instead. The map and layer it names are left out when the caller does not reach that map.inputsarrayThe tables this step read when it last published — from the parse of the SQL that ran, never a scan of its text. Only the ones the caller reaches, and, to the workflow's owner, ones since deleted.
(each item)objectidstringnamestring
readsarray of stringWhat the step would read on its next run: its pending definition's reads when it holds one, its active definition's otherwise — named inputs, or the tables its SQL names — before any run and whether or not those tables exist. Present tense;
inputsis the recorded past.latestAttemptIts most recent run, in one of the five job states. Read together with the condition and never instead of it.
One of:
or null
lastSuccessAtstringor nulltemplateResultobjector nullSet when the output this step's view describes is a template's bundled result that came with a copy of the template (its dataset's source is
template). No run of this workflow made it, solastSuccessAtis null and the output names no job or run. The step's first run replaces it, and this is null from then on.templatestringrequiredThe template's id.
versionintegerrequiredminimum1The version copied.
All of:
object
editRevisionstringrequiredpattern^[0-9a-f]{32}$Opaque durable revision paired with this document state. Camera and derived writes do not change it.
lastChangedAtstringor nullrequiredformatdate-timeTime of the last accepted covered change, independent of camera and cache clocks.
lastChangedByrequiredA named actor has display and fixed SQL names. { deleted: true } explicitly identifies a deleted actor and carries no names or profile fields. Null explicitly means unknown. Never inferred from ownership.
One of:
object
namestringrequiredsqlNamestringrequired
No other keys.
object
deletedbooleanalwaystruerequired
No other keys.
or null
7439201b