Skip to content

Create a Pipeline Run
Stable

Request

Triggers a new run of the specified Pipeline.

Creates a Pipeline Run for pipeline_id; the run starts in PENDING status and progresses through the scheduler before executing its Stages against their targeted devices.

About Pipeline Runs

Each time a Pipeline is executed it produces a Pipeline Run, which moves through PENDING → QUEUED → PROCESSING → RUNNING → WAITING → COMPLETE, then SUCCESS or FAILURE — or ends as CANCELLED, TIMEOUT (default 21 days), or INVALID (zero stages). Each Pipeline Run in turn produces one Stage Run per stage, which produces Target Runs for each targeted device.

Common Use Cases

  • Kicking off a configured Pipeline (e.g. a multi-step device provisioning or update flow) on demand
  • Re-running a Pipeline after fixing its Stages, Target Lists, or Operation Lists

Workflow

  1. Configure the Pipeline's Stages, Target Lists, and Operation Lists
  2. Create a Pipeline Run to execute the pipeline
  3. Track the run's status (and its Stage Runs / Target Runs) through to SUCCESS or FAILURE
Security
pipelines_SCAPIAuthToken
Path
pipeline_idstringrequired

ID of the Pipeline

Bodyapplication/jsonrequired
object(pipelines_PipelineRun_POST)
cURL
curl -i -X POST \
  'https://api.esper.io/_mock/openapi/pipelines/v0/pipelines/{pipeline_id}/runs/' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{}'

Responses

Created Pipeline Run

Bodyapplication/json
codeinteger
messagestring
contentobject(pipelines_PipelineRun)
Response
{ "code": 0, "message": "string", "content": { "id": "string", "enterprise_id": "string", "run_number": 0, "pipeline_id": "string", "pipeline_name": "string", "status": "pending", "status_meta": {}, "created_by": 0, "updated_by": 0, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "started_at": "2019-08-24T14:15:22Z", "ended_at": "2019-08-24T14:15:22Z" } }