Skip to main content

pipelines

19 operation(s). All run through POST /syteops/v1/manage/dispatch (reads may use the documented GET form).

activity​

The Log view activity feed, newest first. per_page 1-100 (default 25), page 1-10000; out-of-range values return 422. Rows carry only id, created_at, event, status, actor, post and an allowlisted meta; never a review link or token.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
per_pageintegerno
pageintegerno
eventstringno
post_idintegernoRecord id, digits only.

Returns

data: {items[]: {id,created_at,event,status,actor_id,actor_name,post_id,post_title,meta}, total, page, per_page}

Request

{
"resource": "pipelines",
"action": "activity",
"params": {
"per_page": 0,
"page": 0,
"event": "string",
"post_id": 0
}
}

clear_runs​

Clear ALL run history and mirrored activity (confirm:true). The lasting deletion records are kept, and a runs_cleared record with the count is written.

🔴 Destructive
Access: SyteOps Admin or API key, plus confirm: true.

Parameters

ParameterTypeRequiredDescription
confirmbooleanno

Returns

data: {deleted}

Request

{
"resource": "pipelines",
"action": "clear_runs",
"params": {
"confirm": true
},
"confirm": true
}

create_recipe​

Create a pipeline recipe. Refuses with 409 recipe_exists when a recipe with that id (default: the slug of name) already exists; use update_recipe to change an existing one.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
idstringno
namestringyes
priorityintegerno
stagesobjectno
triggerobjectno
policyobjectno

Returns

data: recipe object

Request

{
"resource": "pipelines",
"action": "create_recipe",
"params": {
"id": "string",
"name": "string",
"priority": 0,
"stages": {},
"trigger": {},
"policy": {}
}
}

dashboard_stats​

Run-history counters shown on the pipelines dashboard.

Access: SyteOps Admin or API key.

Parameters

No parameters.

Returns

data: {total, last7, changed, errors}

Request

{
"resource": "pipelines",
"action": "dashboard_stats",
"params": {}
}

delete_recipe​

Delete a pipeline recipe (the default recipe cannot be deleted).

🔴 Destructive
Access: SyteOps Admin or API key, plus confirm: true.

Parameters

ParameterTypeRequiredDescription
idstringyes
confirmbooleanno

Returns

data: {id, deleted: true}

Request

{
"resource": "pipelines",
"action": "delete_recipe",
"params": {
"id": "string",
"confirm": true
},
"confirm": true
}

delete_run​

Delete ONE run-history row (confirm:true). Leaves a lasting run_deleted record. 404 not_found when the row is gone; 409 deletion_record_protected for a deletion-record row, which is never removed.

🔴 Destructive
Access: SyteOps Admin or API key, plus confirm: true.

Parameters

ParameterTypeRequiredDescription
run_idintegeryesRecord id, digits only.
confirmbooleanno

Returns

data: {run_id, deleted: true}

Request

{
"resource": "pipelines",
"action": "delete_run",
"params": {
"run_id": 0,
"confirm": true
},
"confirm": true
}

engine_get​

Read the stored engine choice for each capability (or one), the engine that is running for it, and the engines that can fill it. An unknown capability is 422.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
capabilitystringno

Returns

data.capabilities[]: {capability, label, choice, effective, engines[]: {id, label, priority}}

Request

{
"resource": "pipelines",
"action": "engine_get",
"params": {
"capability": "string"
}
}

engine_set​

Choose the engine for a capability; an empty engine clears the choice. An unknown capability is 422 unknown_capability; an engine that does not fill it is 422 invalid_engine; seo and geo follow their integration toggles and are 409 engine_follows_integration (set or clear).

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
capabilitystringyes
enginestringyesAn engine id from stages_list, or an empty string to clear.

Returns

data: {capability, engine, previous}

Request

{
"resource": "pipelines",
"action": "engine_set",
"params": {
"capability": "string",
"engine": "string"
}
}

geo_toggle​

Turn GEO generation on or off, the same switch as the provider card. Turning it off while LLMS Amplifier is the GEO engine is 409 amplifier_owns_geo.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
enabledbooleanyes

Returns

data: {enabled}

Request

{
"resource": "pipelines",
"action": "geo_toggle",
"params": {
"enabled": true
}
}

get_recipe​

Get one recipe by id.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
idstringyes

Returns

data: recipe object

Request

{
"resource": "pipelines",
"action": "get_recipe",
"params": {
"id": "string"
}
}

get_run​

Get one run-history row by id (includes decoded per-stage results).

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
idintegeryesRecord id, digits only.

Returns

data: {id,source,post_id,recipe_id,status,...,stages}

Request

{
"resource": "pipelines",
"action": "get_run",
"params": {
"id": 0
}
}

list_recipes​

List all configured pipeline recipes.

Access: SyteOps Admin or API key.

Parameters

No parameters.

Returns

data.recipes[]: array of recipe objects

Request

{
"resource": "pipelines",
"action": "list_recipes",
"params": {}
}

list_runs​

List pipeline run-history ledger rows (paginated; filter by post/recipe/status).

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
per_pageintegerno
pageintegerno
post_idintegernoRecord id, digits only.
recipe_idstringno
statusstringno

Returns

data: {items[]: {id,source,post_id,recipe_id,status,trigger_kind,is_dry_run,changed,duration_ms,content_hash,message,created_at}, total, page, per_page}

Request

{
"resource": "pipelines",
"action": "list_runs",
"params": {
"per_page": 0,
"page": 0,
"post_id": 0,
"recipe_id": "string",
"status": "string"
}
}

llms_amplifier_set​

Turn LLMS Amplifier on or off as the GEO engine. Enabling returns 409 plugin_not_installed when the Amplifier plugin is absent.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
enabledbooleanyes

Returns

data: {enabled, engine}

Request

{
"resource": "pipelines",
"action": "llms_amplifier_set",
"params": {
"enabled": true
}
}

mode_get​

Read the Content Pipelines operating mode: setup or production. Setup still ingests and builds posts, but forces newly ingested posts to draft, writes no run-history rows, skips the workflow forward and the new-post reviewer email, holds social sends until production, and skips the 'Now live', schedule-change and held-source alert emails. The Review Portal stays fully usable: setup mode does NOT stop review.approve or calendar publishing.

Access: SyteOps Admin or API key.

Parameters

No parameters.

Returns

data: {mode: "setup"|"production"}

Request

{
"resource": "pipelines",
"action": "mode_get",
"params": {}
}

mode_set​

Switch the Content Pipelines mode. Production lets ingested posts take their source's configured status and turns on run history, the workflow forward, social sends and the pipeline emails. Setup still ingests and builds posts, but forces newly ingested posts to draft, writes no run-history rows, skips the workflow forward and the new-post reviewer email, holds social sends until production, and skips the 'Now live', schedule-change and held-source alert emails. The Review Portal stays fully usable: setup mode does NOT stop review.approve or calendar publishing. Needs confirm:true. Any other mode value is 422 invalid_mode.

🔴 Destructive
Access: SyteOps Admin or API key, plus confirm: true.

Parameters

ParameterTypeRequiredDescription
modestringyessetup or production.
confirmbooleanno

Returns

data: {mode, previous, pinned?: true when a site filter keeps a different mode running}

Request

{
"resource": "pipelines",
"action": "mode_set",
"params": {
"mode": "string",
"confirm": true
},
"confirm": true
}

run​

Run a recipe against one post now (inline; admin-initiated). force bypasses skip-unchanged. Returns 404 post_not_found for a missing, trashed or non-viewable post (and post_id 0), and 403 forbidden for a signed-in caller without edit_post on it; an API key skips only the edit_post check.

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
post_idintegeryesRecord id, digits only.
recipe_idstringno
dry_runbooleanno
forcebooleanno

Returns

data: {status,post_id,recipe,stages,run_id,changed}

Request

{
"resource": "pipelines",
"action": "run",
"params": {
"post_id": 0,
"recipe_id": "string",
"dry_run": true,
"force": true
}
}

stages_list​

List the registered stage engines with the capability each fills, its priority and whether it is available now.

Access: SyteOps Admin or API key.

Parameters

No parameters.

Returns

data.stages[]: {id, label, capability, priority, available}

Request

{
"resource": "pipelines",
"action": "stages_list",
"params": {}
}

update_recipe​

Update an existing pipeline recipe (merge-patch: omitted top-level keys are preserved, but a supplied trigger or policy replaces that whole sub-object — send the full sub-object to change one field).

Access: SyteOps Admin or API key.

Parameters

ParameterTypeRequiredDescription
idstringyes
namestringno
priorityintegerno
stagesobjectno
triggerobjectno
policyobjectno

Returns

data: recipe object

Request

{
"resource": "pipelines",
"action": "update_recipe",
"params": {
"id": "string",
"name": "string",
"priority": 0,
"stages": {},
"trigger": {},
"policy": {}
}
}