Skip to content
Proud to collaborate with Microsoft for Startups

cloudflare.pages.sync ​

Reconcile persisted Cloudflare Pages project state with the live provider — upsert projects and mark drift.

Overview ​

PropertyValue
Workflow typeLinear
LibraryApp-cloudflare
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
organization_uuiduuidYes—Organization UUID.
connection_uuiduuidYes—Cloudflare CloudConnection UUID.
project_namestringNo—Limit sync to one project; default all projects for the connection.
prune_missingbooleanNo—Soft-delete persisted projects no longer present on the provider; default false.

Output Schema ​

FieldTypeRequiredDefaultDescription
organization_uuiduuidYes—Organization UUID.
connection_uuiduuidYes—Cloudflare CloudConnection UUID.
project_namestringNo—Limit sync to one project; default all projects for the connection.
prune_missingbooleanNo—Soft-delete persisted projects no longer present on the provider; default false.
remote_projectslistNo—Scratch: raw provider project listing carried between states.
synced_countintegerNo—Projects upserted.
pruned_countintegerNo—Projects soft-deleted as drift.
statusstringNo—Result status.
failure_reasonstringNo—Engine-stamped human-readable failure reason
failed_at_statestringNo—Engine-stamped state when the workflow failed
failed_stepstringNo—Engine-stamped step name (DAG path)
failed_layerintegerNo—Engine-stamped layer index (DAG path)
errorstringNo—Engine-stamped exception message
error_typestringNo—Engine-stamped exception class name
failure_typestringNo—Engine-stamped failure category (atomic path)
failed_actionstringNo—Engine-stamped action method that raised (atomic path)

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—fetchInputs accepted
fetchedNoNo—reconcileRemote projects listed
failedNoYesNo—Sync failed
reconciledNoYesYes—Sync complete

State Diagram ​

Transitions ​

FromActionToDescription
pendingfetchfetched—
fetchedreconcilereconciled—
* (any state)failfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "cloudflare.pages.sync",
  "initial_data": {
    "organization_uuid": "value",
    "connection_uuid": "value"
  }
}