REST API
Web
Derived from the source of github.com/awee-ai/api/cmd/web.
Awee Web API · v1.0.0 · 7 endpoints
Extension
Lists every extension the bridge knows about
ext.DispatchHandler.Clients
Takes no parameters and no request body.
Responses
200 OKOK
connectedbooleanrequiredReflects whether a live SSE stream is currently open for it.
connected_atstring (date-time)Is when the current connection was established.
helloHelloInfoIs the handshake the extension sends when it connects, announcing who it is and what it can do so the server can route work it supports.
helloHelloInfoactionsstring[]Lists the step types this extension build can execute.
browserstringNames the browser the extension runs in.
messagesMessageType[]Advertises the envelope types the extension understands, so this side can feature-detect the config/sequence flow and fall back to inline run against an older extension.
rolestringIdentifies the peer kind, "extension" for the browser extension.
versionstringIs the extension build version.
idstringrequiredIs the client id the extension registered under.
last_seenstring (date-time)Is the last time the extension connected, disconnected, or sent a message.
500 Internal Server Errorthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
[
{
"connected": true,
"connected_at": "2024-01-15T09:30:00Z",
"hello": {
"actions": [
"string"
],
"browser": "string",
"messages": [
"string"
],
"role": "string",
"version": "string"
},
"id": "string",
"last_seen": "2024-01-15T09:30:00Z"
}
]Upgrades the request to an SSE stream and pushes every Message queued for this client until the connection drops
The client identifies itself with the client_id query parameter.
ext.Handler.Events
Query parameters
client_idstringResponses
200 OKOK
400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequiredNo request body.
"string"Accepts one inbound Message from the extension and routes it by type to the broker and backend
It replies 200 with an empty ack body on success so the extension knows the message landed. Unknown or push-only types are rejected with 400. The envelope id rides along to the backend so a dispatcher can correlate result and error replies to the push that caused them.
ext.Handler.Messages
Query parameters
client_idstringBody
application/jsonrequiredconfigLibrarySyncIs a server push of the canonical fragment set.
configLibrarySyncreplacebooleanSwaps the whole library for Workflows (pruning fragments no longer shipped) instead of the default merge-by-id.
workflowsWorkflow[]Are the fragments to install in the extension's library.
workflowsWorkflow[]conditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
idstringUniquely names the workflow.
namestringIs the human-readable title shown in the extension UI.
optionsWorkflowOptionsCarries run-wide defaults for a workflow.
optionsWorkflowOptionsconcurrencystringIs the contention policy when another run already holds the target tab, one of "queue" (default), "parallel", or "reject".
continue_on_errorbooleanKeeps the run going past a failed step instead of stopping at the first failure.
default_timeout_msinteger (int64)Is the per-step timeout in milliseconds for steps that do not set their own.
stepsStep[]Are the actions to perform, in order.
stepsStep[]argsunknown[]Are the arguments passed to Fn.
attributestringNames the DOM attribute an extraction step reads.
body_paramsobjectOverrides or adds form fields on the re-issued request of a captureDownload step.
body_paramsobject*stringany additional propertyconditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
continue_onContinueConditionHolds a step until a user gate is cleared or a page condition is met.
continue_onContinueConditionmanualbooleanPauses the run for an explicit user continue.
selectorstringResumes when a matching element appears.
textstringResumes when this text is present on the page.
timeout_msinteger (int64)Bounds the hold, in milliseconds.
url_includesstringResumes when the page URL contains this substring.
filenamestringRenames a captured file (captureDownload).
fnstringNames the page function an eval step invokes.
formatstringNames the shape extraction steps return their data in.
idstringUniquely names the step within its workflow, echoed on its StepResult.
labelstringIs a human-readable description shown in run progress UIs.
optionalbooleanLets the run continue when this step fails.
outputstringChooses where a captured file goes, the transport or disk.
promptstringIs the text shown at a user gate asking for manual input.
selectorSelectorPicks the DOM node(s) a step acts on, by CSS or an explicit path, optionally narrowed to specific indexes or expanded to all matches.
selectorSelectorallbooleanExpands the step to act on every match instead of the first.
cssstringIs a CSS selector.
indexinteger (int64)Narrows a multi-match selector to a single position.
indexesinteger (int64)[]Narrows a multi-match selector to these positions.
pathstringIs an explicit DOM path, used when CSS cannot express the target.
storestringNames a slot the step's data is saved under, readable by later steps and returned on the WorkflowResult.
timeout_msinteger (int64)Overrides the workflow's default step timeout, in milliseconds.
typestringIs the action to perform (click, fill, select, captureDownload, ...).
urlstringIs the address for navigation steps.
valuestringIs the input for value-taking steps such as fill and select.
waitWaitConfigMakes a step block until a page condition holds.
waitWaitConfigabsentbooleanFlips the wait to expect the selector to disappear rather than appear.
delay_msinteger (int64)Is a fixed pause in milliseconds, applied on top of any condition.
selectorstringWaits for a matching element to appear (or disappear, see Absent).
textstringWaits for this text to be present on the page.
timeout_msinteger (int64)Bounds the wait, in milliseconds.
url_includesstringWaits for the page URL to contain this substring.
targetTargetConfigLocates the page a workflow runs against and controls how the tab hosting it is managed.
targetTargetConfigactivatebooleanBrings the target tab to the foreground.
match_urlstringIs a substring an existing tab's URL must contain for the run to reuse that tab instead of opening URL.
reloadbooleanForces a page reload on a reused tab before the first step runs.
reuse_tabbooleanReuses a matching open tab instead of opening a new one.
urlstringIs the address to open when no existing tab matches.
errorstringIs the failure description on an error message, set alongside the ID of the push that failed.
eventRunEventIs a progress signal streamed during a run so the server can follow along step by step.
eventRunEventmessagestringIs free-form detail, set on gate and error events.
resultStepResultIs the outcome of a single step, reported back by the extension.
resultStepResultdataunknownIs the step's extracted output, if any.
errorstringDescribes the failure when OK is false.
fileCapturedFileIs a file a step produced, inlined in a StepResult.
fileCapturedFiledatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
sizeinteger (int64)Is the byte length of Data.
finished_atinteger (int64)Is when the step ended, in Unix milliseconds.
formatstringNames the shape Data is in.
okbooleanReports whether the step succeeded.
skippedbooleanIs true when the step's condition was not met, so it neither ran nor failed.
started_atinteger (int64)Is when the step began, in Unix milliseconds.
step_idstringIs the id of the step this result belongs to.
typestringEchoes the step's action type.
run_idstringIs the run instance these events belong to, distinct from WorkflowID so the same workflow fired twice yields two tellable streams.
sequence_idstringAnd SequenceIndex are set when the run is a fragment of a sequence, tying its events to the whole job and its position in it.
sequence_indexinteger (int64)step_idstringAnd StepIndex identify the step a step-scoped event refers to.
step_indexinteger (int64)typestringIs one of the run lifecycle markers (workflow:start, step:end, user:gate, and so on).
workflow_idstringIs the workflow the event belongs to.
workflow_resultWorkflowResultIs the terminal outcome of a whole workflow run.
workflow_resultWorkflowResulterrorstringDescribes what stopped the run when OK is false.
finished_atinteger (int64)Is when the run ended, in Unix milliseconds.
okbooleanReports whether the run succeeded.
started_atinteger (int64)Is when the run began, in Unix milliseconds.
stepsStepResult[]Holds each step's result, in run order.
stepsStepResult[]dataunknownIs the step's extracted output, if any.
errorstringDescribes the failure when OK is false.
fileCapturedFileIs a file a step produced, inlined in a StepResult.
fileCapturedFiledatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
sizeinteger (int64)Is the byte length of Data.
finished_atinteger (int64)Is when the step ended, in Unix milliseconds.
formatstringNames the shape Data is in.
okbooleanReports whether the step succeeded.
skippedbooleanIs true when the step's condition was not met, so it neither ran nor failed.
started_atinteger (int64)Is when the step began, in Unix milliseconds.
step_idstringIs the id of the step this result belongs to.
typestringEchoes the step's action type.
storedobjectHolds the values the workflow's store steps captured, keyed by store name, so a sequence chains one fragment's output into the next and a caller can read them.
workflow_idstringIs the id of the workflow this result belongs to.
fileFilePayloadIs a file uploaded out of band via the messages endpoint rather than inlined in a result, for payloads too large to ride along a StepResult.
fileFilePayloaddatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
run_idstringTies a captured file to the run that produced it; SequenceID ties it to the sequence that drove the fragment, set only for a sequence run.
sequence_idstringsizeinteger (int64)Is the byte length of Data.
step_idstringIs the step that captured the file.
workflow_idstringIs the workflow whose step produced the file.
helloHelloInfoIs the handshake the extension sends when it connects, announcing who it is and what it can do so the server can route work it supports.
helloHelloInfoactionsstring[]Lists the step types this extension build can execute.
browserstringNames the browser the extension runs in.
messagesMessageType[]Advertises the envelope types the extension understands, so this side can feature-detect the config/sequence flow and fall back to inline run against an older extension.
rolestringIdentifies the peer kind, "extension" for the browser extension.
versionstringIs the extension build version.
idstringCorrelates a push with its reply.
resultWorkflowResultIs the terminal outcome of a whole workflow run.
resultWorkflowResulterrorstringDescribes what stopped the run when OK is false.
finished_atinteger (int64)Is when the run ended, in Unix milliseconds.
okbooleanReports whether the run succeeded.
started_atinteger (int64)Is when the run began, in Unix milliseconds.
stepsStepResult[]Holds each step's result, in run order.
stepsStepResult[]dataunknownIs the step's extracted output, if any.
errorstringDescribes the failure when OK is false.
fileCapturedFileIs a file a step produced, inlined in a StepResult.
fileCapturedFiledatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
sizeinteger (int64)Is the byte length of Data.
finished_atinteger (int64)Is when the step ended, in Unix milliseconds.
formatstringNames the shape Data is in.
okbooleanReports whether the step succeeded.
skippedbooleanIs true when the step's condition was not met, so it neither ran nor failed.
started_atinteger (int64)Is when the step began, in Unix milliseconds.
step_idstringIs the id of the step this result belongs to.
typestringEchoes the step's action type.
storedobjectHolds the values the workflow's store steps captured, keyed by store name, so a sequence chains one fragment's output into the next and a caller can read them.
workflow_idstringIs the id of the workflow this result belongs to.
sequenceRunSequenceIs an ordered list of fragment references run as one logical job.
sequenceRunSequenceidstringIs the sequence/run id (falls back to the Message id).
optionsSequenceOptionsTunes how a sequence handles a fragment failure.
optionsSequenceOptionscontinue_on_errorbooleanKeeps the sequence going after a fragment fails instead of stopping at the first failure.
refsSequenceRef[]Are the library fragments to run, in order.
refsSequenceRef[]variablesobjectApply to this fragment only, merged over the sequence-wide bag.
variablesobject*stringany additional propertyworkflow_idstringIs the id of the library fragment to run.
sequence_resultSequenceResultIs the outcome of a whole sequence, each fragment's result in run order plus the combined ok/error.
sequence_resultSequenceResulterrorstringDescribes what stopped the sequence when OK is false.
finished_atinteger (int64)Is when the sequence ended, in Unix milliseconds.
okbooleanReports whether every fragment succeeded.
sequence_idstringIs the id of the sequence these results belong to.
started_atinteger (int64)Is when the sequence began, in Unix milliseconds.
workflowsWorkflowResult[]Holds each fragment's result, in run order.
workflowsWorkflowResult[]errorstringDescribes what stopped the run when OK is false.
finished_atinteger (int64)Is when the run ended, in Unix milliseconds.
okbooleanReports whether the run succeeded.
started_atinteger (int64)Is when the run began, in Unix milliseconds.
stepsStepResult[]Holds each step's result, in run order.
stepsStepResult[]dataunknownIs the step's extracted output, if any.
errorstringDescribes the failure when OK is false.
fileCapturedFileIs a file a step produced, inlined in a StepResult.
fileCapturedFiledatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
sizeinteger (int64)Is the byte length of Data.
finished_atinteger (int64)Is when the step ended, in Unix milliseconds.
formatstringNames the shape Data is in.
okbooleanReports whether the step succeeded.
skippedbooleanIs true when the step's condition was not met, so it neither ran nor failed.
started_atinteger (int64)Is when the step began, in Unix milliseconds.
step_idstringIs the id of the step this result belongs to.
typestringEchoes the step's action type.
storedobjectHolds the values the workflow's store steps captured, keyed by store name, so a sequence chains one fragment's output into the next and a caller can read them.
workflow_idstringIs the id of the workflow this result belongs to.
typeMessageTyperequiredNames the payload an envelope carries.
variablesobjectAre per-run values injected by this side, overriding the extension's stored defaults.
variablesobject*stringany additional propertyworkflowWorkflowIs one automation run the extension should perform against a page.
workflowWorkflowconditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
idstringUniquely names the workflow.
namestringIs the human-readable title shown in the extension UI.
optionsWorkflowOptionsCarries run-wide defaults for a workflow.
optionsWorkflowOptionsconcurrencystringIs the contention policy when another run already holds the target tab, one of "queue" (default), "parallel", or "reject".
continue_on_errorbooleanKeeps the run going past a failed step instead of stopping at the first failure.
default_timeout_msinteger (int64)Is the per-step timeout in milliseconds for steps that do not set their own.
stepsStep[]Are the actions to perform, in order.
stepsStep[]argsunknown[]Are the arguments passed to Fn.
attributestringNames the DOM attribute an extraction step reads.
body_paramsobjectOverrides or adds form fields on the re-issued request of a captureDownload step.
body_paramsobject*stringany additional propertyconditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
continue_onContinueConditionHolds a step until a user gate is cleared or a page condition is met.
continue_onContinueConditionmanualbooleanPauses the run for an explicit user continue.
selectorstringResumes when a matching element appears.
textstringResumes when this text is present on the page.
timeout_msinteger (int64)Bounds the hold, in milliseconds.
url_includesstringResumes when the page URL contains this substring.
filenamestringRenames a captured file (captureDownload).
fnstringNames the page function an eval step invokes.
formatstringNames the shape extraction steps return their data in.
idstringUniquely names the step within its workflow, echoed on its StepResult.
labelstringIs a human-readable description shown in run progress UIs.
optionalbooleanLets the run continue when this step fails.
outputstringChooses where a captured file goes, the transport or disk.
promptstringIs the text shown at a user gate asking for manual input.
selectorSelectorPicks the DOM node(s) a step acts on, by CSS or an explicit path, optionally narrowed to specific indexes or expanded to all matches.
selectorSelectorallbooleanExpands the step to act on every match instead of the first.
cssstringIs a CSS selector.
indexinteger (int64)Narrows a multi-match selector to a single position.
indexesinteger (int64)[]Narrows a multi-match selector to these positions.
pathstringIs an explicit DOM path, used when CSS cannot express the target.
storestringNames a slot the step's data is saved under, readable by later steps and returned on the WorkflowResult.
timeout_msinteger (int64)Overrides the workflow's default step timeout, in milliseconds.
typestringIs the action to perform (click, fill, select, captureDownload, ...).
urlstringIs the address for navigation steps.
valuestringIs the input for value-taking steps such as fill and select.
waitWaitConfigMakes a step block until a page condition holds.
waitWaitConfigabsentbooleanFlips the wait to expect the selector to disappear rather than appear.
delay_msinteger (int64)Is a fixed pause in milliseconds, applied on top of any condition.
selectorstringWaits for a matching element to appear (or disappear, see Absent).
textstringWaits for this text to be present on the page.
timeout_msinteger (int64)Bounds the wait, in milliseconds.
url_includesstringWaits for the page URL to contain this substring.
targetTargetConfigLocates the page a workflow runs against and controls how the tab hosting it is managed.
targetTargetConfigactivatebooleanBrings the target tab to the foreground.
match_urlstringIs a substring an existing tab's URL must contain for the run to reuse that tab instead of opening URL.
reloadbooleanForces a page reload on a reused tab before the first step runs.
reuse_tabbooleanReuses a matching open tab instead of opening a new one.
urlstringIs the address to open when no existing tab matches.
Responses
200 OKOK
*stringany additional property400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequired500 Internal Server Errorthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"config": {
"replace": true,
"workflows": [
{
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"id": "string",
"name": "string",
"options": {
"concurrency": "string",
"continue_on_error": true,
"default_timeout_ms": 0
},
"steps": [
{
"args": [
null
],
"attribute": "string",
"body_params": {
"key": "string"
},
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"continue_on": {
"manual": true,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
},
"filename": "string",
"fn": "string",
"format": "string",
"id": "string",
"label": "string",
"optional": true,
"output": "string",
"prompt": "string",
"selector": {
"all": true,
"css": "string",
"index": 0,
"indexes": [
0
],
"path": "string"
},
"store": "string",
"timeout_ms": 0,
"type": "string",
"url": "string",
"value": "string",
"wait": {
"absent": true,
"delay_ms": 0,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
}
}
],
"target": {
"activate": true,
"match_url": "string",
"reload": true,
"reuse_tab": true,
"url": "string"
}
}
]
},
"error": "string",
"event": {
"message": "string",
"result": {
"data": null,
"error": "string",
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"size": 0
},
"finished_at": 0,
"format": "string",
"ok": true,
"skipped": true,
"started_at": 0,
"step_id": "string",
"type": "string"
},
"run_id": "string",
"sequence_id": "string",
"sequence_index": 0,
"step_id": "string",
"step_index": 0,
"type": "string",
"workflow_id": "string",
"workflow_result": {
"error": "string",
"finished_at": 0,
"ok": true,
"started_at": 0,
"steps": [
{
"data": null,
"error": "string",
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"size": 0
},
"finished_at": 0,
"format": "string",
"ok": true,
"skipped": true,
"started_at": 0,
"step_id": "string",
"type": "string"
}
],
"stored": {},
"workflow_id": "string"
}
},
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"run_id": "string",
"sequence_id": "string",
"size": 0,
"step_id": "string",
"workflow_id": "string"
},
"hello": {
"actions": [
"string"
],
"browser": "string",
"messages": [
"string"
],
"role": "string",
"version": "string"
},
"id": "string",
"result": {
"error": "string",
"finished_at": 0,
"ok": true,
"started_at": 0,
"steps": [
{
"data": null,
"error": "string",
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"size": 0
},
"finished_at": 0,
"format": "string",
"ok": true,
"skipped": true,
"started_at": 0,
"step_id": "string",
"type": "string"
}
],
"stored": {},
"workflow_id": "string"
},
"sequence": {
"id": "string",
"options": {
"continue_on_error": true
},
"refs": [
{
"variables": {
"key": "string"
},
"workflow_id": "string"
}
]
},
"sequence_result": {
"error": "string",
"finished_at": 0,
"ok": true,
"sequence_id": "string",
"started_at": 0,
"workflows": [
{
"error": "string",
"finished_at": 0,
"ok": true,
"started_at": 0,
"steps": [
{
"data": null,
"error": "string",
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"size": 0
},
"finished_at": 0,
"format": "string",
"ok": true,
"skipped": true,
"started_at": 0,
"step_id": "string",
"type": "string"
}
],
"stored": {},
"workflow_id": "string"
}
]
},
"type": "string",
"variables": {
"key": "string"
},
"workflow": {
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"id": "string",
"name": "string",
"options": {
"concurrency": "string",
"continue_on_error": true,
"default_timeout_ms": 0
},
"steps": [
{
"args": [
null
],
"attribute": "string",
"body_params": {
"key": "string"
},
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"continue_on": {
"manual": true,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
},
"filename": "string",
"fn": "string",
"format": "string",
"id": "string",
"label": "string",
"optional": true,
"output": "string",
"prompt": "string",
"selector": {
"all": true,
"css": "string",
"index": 0,
"indexes": [
0
],
"path": "string"
},
"store": "string",
"timeout_ms": 0,
"type": "string",
"url": "string",
"value": "string",
"wait": {
"absent": true,
"delay_ms": 0,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
}
}
],
"target": {
"activate": true,
"match_url": "string",
"reload": true,
"reuse_tab": true,
"url": "string"
}
}
}{
"key": "string"
}Runs one inline workflow and replies with its terminal result
ext.DispatchHandler.Run
Body
application/jsonrequiredclient_idstringNames the target extension.
timeout_msinteger (int64)Bounds the dispatch, in milliseconds.
variablesobjectAre per-run values overriding the extension's stored defaults.
variablesobject*stringany additional propertyworkflowWorkflowrequiredIs one automation run the extension should perform against a page.
workflowWorkflowrequiredconditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
idstringUniquely names the workflow.
namestringIs the human-readable title shown in the extension UI.
optionsWorkflowOptionsCarries run-wide defaults for a workflow.
optionsWorkflowOptionsconcurrencystringIs the contention policy when another run already holds the target tab, one of "queue" (default), "parallel", or "reject".
continue_on_errorbooleanKeeps the run going past a failed step instead of stopping at the first failure.
default_timeout_msinteger (int64)Is the per-step timeout in milliseconds for steps that do not set their own.
stepsStep[]Are the actions to perform, in order.
stepsStep[]argsunknown[]Are the arguments passed to Fn.
attributestringNames the DOM attribute an extraction step reads.
body_paramsobjectOverrides or adds form fields on the re-issued request of a captureDownload step.
body_paramsobject*stringany additional propertyconditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
continue_onContinueConditionHolds a step until a user gate is cleared or a page condition is met.
continue_onContinueConditionmanualbooleanPauses the run for an explicit user continue.
selectorstringResumes when a matching element appears.
textstringResumes when this text is present on the page.
timeout_msinteger (int64)Bounds the hold, in milliseconds.
url_includesstringResumes when the page URL contains this substring.
filenamestringRenames a captured file (captureDownload).
fnstringNames the page function an eval step invokes.
formatstringNames the shape extraction steps return their data in.
idstringUniquely names the step within its workflow, echoed on its StepResult.
labelstringIs a human-readable description shown in run progress UIs.
optionalbooleanLets the run continue when this step fails.
outputstringChooses where a captured file goes, the transport or disk.
promptstringIs the text shown at a user gate asking for manual input.
selectorSelectorPicks the DOM node(s) a step acts on, by CSS or an explicit path, optionally narrowed to specific indexes or expanded to all matches.
selectorSelectorallbooleanExpands the step to act on every match instead of the first.
cssstringIs a CSS selector.
indexinteger (int64)Narrows a multi-match selector to a single position.
indexesinteger (int64)[]Narrows a multi-match selector to these positions.
pathstringIs an explicit DOM path, used when CSS cannot express the target.
storestringNames a slot the step's data is saved under, readable by later steps and returned on the WorkflowResult.
timeout_msinteger (int64)Overrides the workflow's default step timeout, in milliseconds.
typestringIs the action to perform (click, fill, select, captureDownload, ...).
urlstringIs the address for navigation steps.
valuestringIs the input for value-taking steps such as fill and select.
waitWaitConfigMakes a step block until a page condition holds.
waitWaitConfigabsentbooleanFlips the wait to expect the selector to disappear rather than appear.
delay_msinteger (int64)Is a fixed pause in milliseconds, applied on top of any condition.
selectorstringWaits for a matching element to appear (or disappear, see Absent).
textstringWaits for this text to be present on the page.
timeout_msinteger (int64)Bounds the wait, in milliseconds.
url_includesstringWaits for the page URL to contain this substring.
targetTargetConfigLocates the page a workflow runs against and controls how the tab hosting it is managed.
targetTargetConfigactivatebooleanBrings the target tab to the foreground.
match_urlstringIs a substring an existing tab's URL must contain for the run to reuse that tab instead of opening URL.
reloadbooleanForces a page reload on a reused tab before the first step runs.
reuse_tabbooleanReuses a matching open tab instead of opening a new one.
urlstringIs the address to open when no existing tab matches.
Responses
200 OKOK
errorstringDescribes what stopped the run when OK is false.
finished_atinteger (int64)Is when the run ended, in Unix milliseconds.
okbooleanReports whether the run succeeded.
started_atinteger (int64)Is when the run began, in Unix milliseconds.
stepsStepResult[]Holds each step's result, in run order.
stepsStepResult[]dataunknownIs the step's extracted output, if any.
errorstringDescribes the failure when OK is false.
fileCapturedFileIs a file a step produced, inlined in a StepResult.
fileCapturedFiledatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
sizeinteger (int64)Is the byte length of Data.
finished_atinteger (int64)Is when the step ended, in Unix milliseconds.
formatstringNames the shape Data is in.
okbooleanReports whether the step succeeded.
skippedbooleanIs true when the step's condition was not met, so it neither ran nor failed.
started_atinteger (int64)Is when the step began, in Unix milliseconds.
step_idstringIs the id of the step this result belongs to.
typestringEchoes the step's action type.
storedobjectHolds the values the workflow's store steps captured, keyed by store name, so a sequence chains one fragment's output into the next and a caller can read them.
workflow_idstringIs the id of the workflow this result belongs to.
400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequired409 Conflictthe request could not be completed
errorstringrequired500 Internal Server Errorthe request could not be completed
errorstringrequired504 Gateway Timeoutthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"client_id": "string",
"timeout_ms": 0,
"variables": {
"key": "string"
},
"workflow": {
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"id": "string",
"name": "string",
"options": {
"concurrency": "string",
"continue_on_error": true,
"default_timeout_ms": 0
},
"steps": [
{
"args": [
null
],
"attribute": "string",
"body_params": {
"key": "string"
},
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"continue_on": {
"manual": true,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
},
"filename": "string",
"fn": "string",
"format": "string",
"id": "string",
"label": "string",
"optional": true,
"output": "string",
"prompt": "string",
"selector": {
"all": true,
"css": "string",
"index": 0,
"indexes": [
0
],
"path": "string"
},
"store": "string",
"timeout_ms": 0,
"type": "string",
"url": "string",
"value": "string",
"wait": {
"absent": true,
"delay_ms": 0,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
}
}
],
"target": {
"activate": true,
"match_url": "string",
"reload": true,
"reuse_tab": true,
"url": "string"
}
}
}{
"error": "string",
"finished_at": 0,
"ok": true,
"started_at": 0,
"steps": [
{
"data": null,
"error": "string",
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"size": 0
},
"finished_at": 0,
"format": "string",
"ok": true,
"skipped": true,
"started_at": 0,
"step_id": "string",
"type": "string"
}
],
"stored": {},
"workflow_id": "string"
}Runs an ordered list of library fragment references as one job and replies with the per-fragment results
ext.DispatchHandler.Sequence
Body
application/jsonrequiredclient_idstringNames the target extension.
optionsSequenceOptionsTunes how a sequence handles a fragment failure.
optionsSequenceOptionscontinue_on_errorbooleanKeeps the sequence going after a fragment fails instead of stopping at the first failure.
refsSequenceRef[]Are the library fragments to run, in order.
refsSequenceRef[]variablesobjectApply to this fragment only, merged over the sequence-wide bag.
variablesobject*stringany additional propertyworkflow_idstringIs the id of the library fragment to run.
timeout_msinteger (int64)Bounds the dispatch, in milliseconds.
variablesobjectAre sequence-wide values, overridable per ref.
variablesobject*stringany additional propertyResponses
200 OKOK
errorstringDescribes what stopped the sequence when OK is false.
finished_atinteger (int64)Is when the sequence ended, in Unix milliseconds.
okbooleanReports whether every fragment succeeded.
sequence_idstringIs the id of the sequence these results belong to.
started_atinteger (int64)Is when the sequence began, in Unix milliseconds.
workflowsWorkflowResult[]Holds each fragment's result, in run order.
workflowsWorkflowResult[]errorstringDescribes what stopped the run when OK is false.
finished_atinteger (int64)Is when the run ended, in Unix milliseconds.
okbooleanReports whether the run succeeded.
started_atinteger (int64)Is when the run began, in Unix milliseconds.
stepsStepResult[]Holds each step's result, in run order.
stepsStepResult[]dataunknownIs the step's extracted output, if any.
errorstringDescribes the failure when OK is false.
fileCapturedFileIs a file a step produced, inlined in a StepResult.
fileCapturedFiledatastring (byte)Is the raw file content.
filenamestringIs the file's name, after any step-level rename.
mimestringIs the file's content type.
sizeinteger (int64)Is the byte length of Data.
finished_atinteger (int64)Is when the step ended, in Unix milliseconds.
formatstringNames the shape Data is in.
okbooleanReports whether the step succeeded.
skippedbooleanIs true when the step's condition was not met, so it neither ran nor failed.
started_atinteger (int64)Is when the step began, in Unix milliseconds.
step_idstringIs the id of the step this result belongs to.
typestringEchoes the step's action type.
storedobjectHolds the values the workflow's store steps captured, keyed by store name, so a sequence chains one fragment's output into the next and a caller can read them.
workflow_idstringIs the id of the workflow this result belongs to.
400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequired409 Conflictthe request could not be completed
errorstringrequired500 Internal Server Errorthe request could not be completed
errorstringrequired504 Gateway Timeoutthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"client_id": "string",
"options": {
"continue_on_error": true
},
"refs": [
{
"variables": {
"key": "string"
},
"workflow_id": "string"
}
],
"timeout_ms": 0,
"variables": {
"key": "string"
}
}{
"error": "string",
"finished_at": 0,
"ok": true,
"sequence_id": "string",
"started_at": 0,
"workflows": [
{
"error": "string",
"finished_at": 0,
"ok": true,
"started_at": 0,
"steps": [
{
"data": null,
"error": "string",
"file": {
"data": "aGVsbG8=",
"filename": "string",
"mime": "string",
"size": 0
},
"finished_at": 0,
"format": "string",
"ok": true,
"skipped": true,
"started_at": 0,
"step_id": "string",
"type": "string"
}
],
"stored": {},
"workflow_id": "string"
}
]
}Pushes the fragment library to the extension and waits for its ack
ext.DispatchHandler.Sync
Body
application/jsonrequiredclient_idstringNames the target extension.
replacebooleanSwaps the whole library instead of the default merge-by-id.
timeout_msinteger (int64)Bounds the dispatch, in milliseconds.
workflowsWorkflow[]Are the fragments to install in the extension's library.
workflowsWorkflow[]conditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
idstringUniquely names the workflow.
namestringIs the human-readable title shown in the extension UI.
optionsWorkflowOptionsCarries run-wide defaults for a workflow.
optionsWorkflowOptionsconcurrencystringIs the contention policy when another run already holds the target tab, one of "queue" (default), "parallel", or "reject".
continue_on_errorbooleanKeeps the run going past a failed step instead of stopping at the first failure.
default_timeout_msinteger (int64)Is the per-step timeout in milliseconds for steps that do not set their own.
stepsStep[]Are the actions to perform, in order.
stepsStep[]argsunknown[]Are the arguments passed to Fn.
attributestringNames the DOM attribute an extraction step reads.
body_paramsobjectOverrides or adds form fields on the re-issued request of a captureDownload step.
body_paramsobject*stringany additional propertyconditionConditionGates whether a workflow or step runs.
conditionConditionmatchstringDecides how the set predicates combine, "any" or "all".
negatebooleanInverts the combined result.
selectorstringHolds when a matching element exists on the page.
textstringHolds when the page (or the selected element) contains this text.
url_includesstringHolds when the page URL contains this substring.
continue_onContinueConditionHolds a step until a user gate is cleared or a page condition is met.
continue_onContinueConditionmanualbooleanPauses the run for an explicit user continue.
selectorstringResumes when a matching element appears.
textstringResumes when this text is present on the page.
timeout_msinteger (int64)Bounds the hold, in milliseconds.
url_includesstringResumes when the page URL contains this substring.
filenamestringRenames a captured file (captureDownload).
fnstringNames the page function an eval step invokes.
formatstringNames the shape extraction steps return their data in.
idstringUniquely names the step within its workflow, echoed on its StepResult.
labelstringIs a human-readable description shown in run progress UIs.
optionalbooleanLets the run continue when this step fails.
outputstringChooses where a captured file goes, the transport or disk.
promptstringIs the text shown at a user gate asking for manual input.
selectorSelectorPicks the DOM node(s) a step acts on, by CSS or an explicit path, optionally narrowed to specific indexes or expanded to all matches.
selectorSelectorallbooleanExpands the step to act on every match instead of the first.
cssstringIs a CSS selector.
indexinteger (int64)Narrows a multi-match selector to a single position.
indexesinteger (int64)[]Narrows a multi-match selector to these positions.
pathstringIs an explicit DOM path, used when CSS cannot express the target.
storestringNames a slot the step's data is saved under, readable by later steps and returned on the WorkflowResult.
timeout_msinteger (int64)Overrides the workflow's default step timeout, in milliseconds.
typestringIs the action to perform (click, fill, select, captureDownload, ...).
urlstringIs the address for navigation steps.
valuestringIs the input for value-taking steps such as fill and select.
waitWaitConfigMakes a step block until a page condition holds.
waitWaitConfigabsentbooleanFlips the wait to expect the selector to disappear rather than appear.
delay_msinteger (int64)Is a fixed pause in milliseconds, applied on top of any condition.
selectorstringWaits for a matching element to appear (or disappear, see Absent).
textstringWaits for this text to be present on the page.
timeout_msinteger (int64)Bounds the wait, in milliseconds.
url_includesstringWaits for the page URL to contain this substring.
targetTargetConfigLocates the page a workflow runs against and controls how the tab hosting it is managed.
targetTargetConfigactivatebooleanBrings the target tab to the foreground.
match_urlstringIs a substring an existing tab's URL must contain for the run to reuse that tab instead of opening URL.
reloadbooleanForces a page reload on a reused tab before the first step runs.
reuse_tabbooleanReuses a matching open tab instead of opening a new one.
urlstringIs the address to open when no existing tab matches.
Responses
200 OKOK
*stringany additional property400 Bad Requestthe request could not be completed
errorstringrequired403 Forbiddenthe request could not be completed
errorstringrequired409 Conflictthe request could not be completed
errorstringrequired500 Internal Server Errorthe request could not be completed
errorstringrequired504 Gateway Timeoutthe request could not be completed
errorstringrequiredDefaultthe request could not be completed
errorstringrequired{
"client_id": "string",
"replace": true,
"timeout_ms": 0,
"workflows": [
{
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"id": "string",
"name": "string",
"options": {
"concurrency": "string",
"continue_on_error": true,
"default_timeout_ms": 0
},
"steps": [
{
"args": [
null
],
"attribute": "string",
"body_params": {
"key": "string"
},
"condition": {
"match": "string",
"negate": true,
"selector": "string",
"text": "string",
"url_includes": "string"
},
"continue_on": {
"manual": true,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
},
"filename": "string",
"fn": "string",
"format": "string",
"id": "string",
"label": "string",
"optional": true,
"output": "string",
"prompt": "string",
"selector": {
"all": true,
"css": "string",
"index": 0,
"indexes": [
0
],
"path": "string"
},
"store": "string",
"timeout_ms": 0,
"type": "string",
"url": "string",
"value": "string",
"wait": {
"absent": true,
"delay_ms": 0,
"selector": "string",
"text": "string",
"timeout_ms": 0,
"url_includes": "string"
}
}
],
"target": {
"activate": true,
"match_url": "string",
"reload": true,
"reuse_tab": true,
"url": "string"
}
}
]
}{
"key": "string"
}