---
title: "Get a pipeline run"
method: GET
path: "/pipeline_runs/{pipeline_run_id}"
tags: ["Pipeline Runs"]
---

# Get a pipeline run

`GET /pipeline_runs/{pipeline_run_id}`

## Request

- Base URL: `https://app.getorchestra.io/api/engine/public`
- URL: `https://app.getorchestra.io/api/engine/public/pipeline_runs/{pipeline_run_id}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://app.getorchestra.io/oauth/authorize`
    - Token URL: `https://app.getorchestra.io/oauth/token` scopes: `orchestra:read`

Retrieve a single [pipeline run](/docs/core-concepts/pipelines/pipeline-runs) by ID, including its status, however long ago it ran.

## Path parameters

- `pipeline_run_id` string, uuid4, required

## Headers

- `X-Orchestra-Account-Id` string, uuid4, nullable

## Response `200`

Successful Response

- PipelineRunResponse: Full details of a single pipeline run execution.
  - `id` string, uuid4, required
  - `pipelineId` string, uuid4, required
  - `pipelineName` string, required
  - `accountId` string, uuid4, required
  - `envId` string, uuid4, nullable
  - `envName` string, nullable
  - `runStatus` 'QUEUED' | 'CREATED' | 'RUNNING' | 'SUCCEEDED' | 'WARNING' | 'FAILED' | 'SKIPPED' | 'CANCELLING' | 'CANCELLED', required
  - `hasAnomalies` boolean, nullable
  - `anomalySummary` AnomalySummary: How many anomalies a pipeline run carries at each level. An anomaly row's level is implied by the ids it carries, so the counts are grouped out of the rows rather than stored: see `get_anomaly_summaries_for_pipeline_runs`.
    - `pipeline` integer, required
    - `task` integer, required
    - `operation` integer, required
  - `anomalies` object, nullable
  - `triggeredBy` TriggeredByApiModel[]
    - `triggerType` 'MANUAL' | 'RESTART_ALL' | 'RESTART_FROM_FAILED' | 'RESTART_FROM_SELECTED' | 'SCHEDULED' | 'SENSOR' | 'TRIGGER_EVENT' | 'WEBHOOK', required
    - `integration` 'AIRBYTE_CLOUD' | 'AIRBYTE_SERVER' | 'AIRFLOW' | 'ARCH' | 'ALTERYX_SERVER' | 'ANTHROPIC' | 'AWS_EC2' | 'AWS_ECS' | 'AWS_EMR' | 'AWS_EKS' | 'AWS_FIREHOSE' | 'AWS_GLUE' | 'AWS_LAMBDA' | 'AWS_RDS' | 'AWS_REDSHIFT' | 'AWS_S3' | 'AWS_BATCH' | 'AWS_BEDROCK' | 'AWS_SAGEMAKER' | 'AWS_SECRETS_MANAGER' | 'AWS_SES' | 'AWS_STEP_FUNCTIONS' | 'AZURE' | 'AZURE_CONTAINER_APPS' | 'AZURE_DATA_FACTORY' | 'AZURE_DATA_LAKE_STORAGE' | 'AZURE_KEY_VAULT' | 'AZURE_KUBERNETES_SERVICE' | 'AZURE_LOGIC_APPS' | 'AZURE_SYNAPSE_ANALYTICS' | 'AZURE_VM' | 'BAUPLAN' | 'BOOMI' | 'CDATA' | 'CENSUS' | 'CLICKHOUSE' | 'COALESCE' | 'COUNT' | 'DATADOG' | 'DATABRICKS' | 'DATAPROC' | 'DATAZEN' | 'DBT' | 'DBT_CORE' | 'DLT' | 'DOMO' | 'DREMIO' | 'DUCKDB' | 'EMAIL' | 'ESTUARY' | 'ETLEAP' | 'FABRIC' | 'FABRIC_SYNAPSE' | 'FIVETRAN' | 'FORTRA' | 'GCP_BIG_QUERY' | 'GCP_CLOUD_RUN' | 'GCP_CLOUD_FUNCTIONS' | 'GCP_CLOUD_STORAGE' | 'GCP_DATAFLOW' | 'GCP_DATAFORM' | 'GCP_DATASTREAM' | 'GCP_LOOKER' | 'GKE' | 'GITHUB_ACTIONS' | 'GOOGLE_CLOUD' | 'HEVO' | 'HEX' | 'HIGHTOUCH' | 'HTTP' | 'HUBSPOT' | 'INFORMATICA_IICS' | 'INFORMATICA_POWERCENTER' | 'KAFKA' | 'KEBOOLA' | 'KLEENE' | 'LIGHTDASH' | 'LINUX_SSH' | 'MARIADB' | 'MATILLION' | 'MATILLION_ETL' | 'METAPLANE' | 'MICROSOFT_TEAMS' | 'MICROSTRATEGY' | 'MONGODB' | 'MOTHERDUCK' | 'MYSQL' | 'N8N' | 'NIMBLE' | 'NOTION' | 'OMNI' | 'OPEN_AI' | 'ORCHESTRA' | 'PARADIME' | 'PAGER_DUTY' | 'PINECONE' | 'PORTABLE' | 'POSTGRES' | 'POWER_AUTOMATE' | 'POWER_BI' | 'PREFECT_CLOUD' | 'PYTHON' | 'QLIK' | 'QLIK_REPLICATE' | 'QUICKBOOKS' | 'RENDER' | 'RIVERY' | 'RUDDERSTACK' | 'SALESFORCE' | 'SAP' | 'SFTP' | 'SHAREPOINT' | 'SIGMA' | 'SISENSE' | 'SLACK' | 'SNOWFLAKE' | 'SNOWPLOW' | 'SODA' | 'SQL_MESH' | 'SQL_SERVER' | 'STITCH' | 'STREAMKAP' | 'TABLEAU_CLOUD' | 'TALEND_CLOUD' | 'THOUGHTSPOT' | 'TOBIKO_CLOUD' | 'TYPESAFE' | 'WEAVIATE' | 'WEBHOOK' | 'WELD' | 'WINDOWS_SSH'
    - `scheduleName` string, nullable
    - `scheduleCron` string, nullable
    - `scheduleTimezone` string, nullable
    - `pipelineName` string, nullable
    - `pipelineId` string, uuid4, nullable
    - `pipelineRunId` string, uuid4, nullable
    - `userId` string, uuid4, nullable
    - `runTaskIds` string[], nullable
    - `runOperationIds` string[], nullable
    - `continueDownstreamRun` boolean, nullable
    - `sensorName` string, nullable
    - `sensorRunId` string, uuid4, nullable
    - `wildcardParent` boolean, nullable: When trigger_type is TRIGGER_EVENT, whether this hop matched only a wildcard (*) parent dependency edge.
  - `childPipelineRuns` ChildPipelineRunApiModel[]
    - `pipelineId` string, uuid4, required
    - `pipelineRunId` string, uuid4, required
    - `pipelineName` string, required
  - `message` string, required
  - `pipelineVersionNumber` integer, nullable
  - `createdAt` string, required
  - `updatedAt` string, required
  - `completedAt` string, nullable
  - `startedAt` string, nullable
  - `branch` string, nullable
  - `commit` string, nullable
  - `gitLink` string, nullable
  - `data` PipelineRunModel
    - `version` 'v1', required: Pipeline schema version. Currently only 'v1' is supported.
    - `name` string, required: Unique identifier for this pipeline (max 100 chars). Used in UI and API.
    - `pipeline` object, required: Dictionary mapping user-chosen IDs to task group or standalone task definitions. IDs must be unique across the entire pipeline and are referenced in dependsOn arrays. Task groups (recommended) are the primary mechanism for building DAGs -- dependencies between groups define execution order.
    - `schedule` ScheduleModel[], nullable: List of cron schedules that trigger this pipeline. Triggers use OR-logic -- any single trigger firing starts a pipeline run.
      - `name` string, nullable
      - `cron` string, required
      - `timezone` string, nullable
      - `environment` union
        - string, uuid4
        - string
      - `branch` string, nullable
      - `exclude` string[], nullable
      - `runInputs` object, nullable
    - `sensors` object, nullable: Dictionary of sensor definitions that trigger this pipeline. Triggers use OR-logic -- any single trigger firing starts a pipeline run.
    - `triggerEvents` TriggerEventModel[], nullable: List of pipeline completion events that trigger this pipeline. Triggers use OR-logic -- any single trigger firing starts a pipeline run.
      - `type` 'pipeline', required: Event type. Currently only 'pipeline' is supported.
      - `pipelineId` union, required: UUID of the pipeline whose completion triggers this pipeline. If 'ANY', triggers on any pipeline completion.
        - string, uuid4
        - '*'
      - `statuses` PipelineRunStatus[], nullable: List of pipeline run statuses that trigger this pipeline. Available values: SUCCEEDED, FAILED, WARNING, CANCELLED. If omitted, triggers on SUCCEEDED and WARNING only.
      - `runInputs` object, nullable: Input values to pass to the triggered pipeline run.
    - `webhook` WebhookModel
      - `enabled` boolean
      - `operationMetadata` object, nullable
      - `runInputs` object, nullable: Pipeline input values for runs triggered by webhook. Values can read the JSON body the webhook was sent with as ${{ outputs.payload }}.
    - `configuration` ConfigurationModel
      - `retries` union
        - string
        - integer
      - `retryDelay` integer, nullable
      - `timeout` integer, nullable
      - `concurrency` ConcurrencyModel
        - `maxActive` union
          - string
          - integer
        - `onLimit` union
          - 'SKIP' | 'QUEUE' | 'QUEUE_LATEST'
          - string
    - `inputs` object, nullable: Declared inputs that can be passed when triggering the pipeline. Reference in tasks using ${{ inputs.<name> }}. Non-optional inputs without defaults must appear in all trigger runInputs.
    - `meta` object, nullable
    - `alerts` AlertModel[], nullable
      - `name` string, required
      - `statuses` AlertLevelTypes[], required
      - `destinations` AlertDestinationModel[], required
        - `integration` 'EMAIL' | 'DATADOG' | 'MICROSOFT_TEAMS' | 'PAGER_DUTY' | 'SLACK' | 'WEBHOOK', required
        - `destination` string, nullable
        - `connectionId` string, nullable
        - `parameters` union
          - BaseDatadogNotificationParametersModel
            - `priority` integer, nullable
          - WebhookAlertParametersModel
            - `body` union
              - …
      - `customMessage` string, nullable
      - `maxLiveAlerts` union
        - string
        - integer
    - `anomalies` union[], nullable
      - union
        - PipelineDurationAboveBaselineAnomalyModel: Fires when a pipeline run takes longer than its baseline.
          - `destinations` AlertDestinationModel[]
            - `integration` 'EMAIL' | 'DATADOG' | 'MICROSOFT_TEAMS' | 'PAGER_DUTY' | 'SLACK' | 'WEBHOOK', required
            - `destination` string, nullable
            - `connectionId` string, nullable
            - `parameters` union
              - …
          - `minBaselineSeconds` integer: Skip whatever is monitored when its baseline is shorter than this
          - `percentageAboveBaseline` integer
          - `type` 'pipeline_duration_above_baseline'
        - PipelineDurationBelowBaselineAnomalyModel: Fires when a pipeline run finishes faster than its baseline. Unlike its above-baseline sibling `type` has no default, so a block that omits it is unambiguously above-baseline in the generated JSON schema as well as to pydantic.
          - `destinations` AlertDestinationModel[]
            - `integration` 'EMAIL' | 'DATADOG' | 'MICROSOFT_TEAMS' | 'PAGER_DUTY' | 'SLACK' | 'WEBHOOK', required
            - `destination` string, nullable
            - `connectionId` string, nullable
            - `parameters` union
              - …
          - `minBaselineSeconds` integer: Skip whatever is monitored when its baseline is shorter than this
          - `percentageBelowBaseline` integer
          - `type` 'pipeline_duration_below_baseline', required
    - `environment` object

## Other responses

- `422`: Validation Error

## Changes

- **2026-11-03** `daf2c16b3057`: 2 warning
  - added the new `LIGHTDASH_CLEAR_RESULTS_CACHE` enum value to the `data/anyOf[subschema #1: PipelineRunModel]/pipeline/additionalProperties/anyOf[subschema #1: TaskGroupModel]/tasks/additionalProperties/integrationJob` response property for the response status `200`
  - added the new `LIGHTDASH_CLEAR_RESULTS_CACHE` enum value to the `data/anyOf[subschema #1: PipelineRunModel]/pipeline/additionalProperties/anyOf[subschema #2: TaskModel]/integrationJob` response property for the response status `200`
- **2026-11-03** `e45165e7e223`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/getorchestra/apis/orchestra-api/changes/pipeline_runs/:pipeline_run_id/get.md)

---

[API](https://skmtc.dev/getorchestra/apis/orchestra-api.md) - [All operations](https://skmtc.dev/getorchestra/apis/orchestra-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getorchestra/apis/orchestra-api/revisions/daf2c16b3057?raw)
