> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mage.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Data pipeline containing execution settings, resources, block information, and block dependencies.

## Pipeline object

<ResponseExample>
  ```json Response theme={"system"}
  {
    "blocks": [
      {
        "all_upstream_blocks_executed": true,
        "color": null,
        "configuration": {},
        "downstream_blocks": [],
        "executor_config": null,
        "executor_type": "local_python",
        "has_callback": null,
        "name": "load_titanic",
        "language": "python",
        "status": "executed",
        "type": "data_loader",
        "upstream_blocks": [],
        "uuid": "load_titanic",
        "content": "...",
        "metadata": {}
      }
    ],
    "description": null,
    "extensions": {},
    "name": "example_pipeline",
    "schedules": [
      {
        "created_at": "2023-03-14T23:24:17.814478+00:00",
        "id": 59,
        "name": "dry haze",
        "pipeline_uuid": "aged_night",
        "schedule_interval": null,
        "schedule_type": "api",
        "start_time": "2023-03-14T23:25:00+00:00",
        "status": "inactive",
        "updated_at": "2023-03-14T23:25:27.351528+00:00"
      }
    ],
    "type": "python",
    "uuid": "example_pipeline",
    "variables": {
      "env": "prod"
    },
    "widgets": []
  }
  ```
</ResponseExample>

<ResponseField name="blocks" type="array of objects">
  Array of block objects. See the [blocks](/api-reference/blocks/overview) section for more details.
</ResponseField>

<ResponseField name="description" type="string">
  Description for the pipeline.
</ResponseField>

<ResponseField name="extensions" type="array of objects">
  Array of extension block objects. Same shape as `blocks`.
</ResponseField>

<ResponseField name="name" type="string" required>
  Human friendly name of the pipeline.
</ResponseField>

<ResponseField name="schedules" type="array of objects" required>
  Array of trigger objects.

  <Expandable title="properties">
    <ResponseField name="created_at" type="string" required>
      Date and time the trigger was created.
    </ResponseField>

    <ResponseField name="id" type="integer" required>
      Trigger ID.
    </ResponseField>

    <ResponseField name="name" type="string" required>
      Name of trigger.
    </ResponseField>

    <ResponseField name="pipeline_uuid" type="string" required>
      Pipeline UUID the trigger belongs to.
    </ResponseField>

    <ResponseField name="schedule_interval" type="string">
      `@once`, `@hourly`, `@daily`, `@weekly`, `@monthly`
    </ResponseField>

    <ResponseField name="schedule_type" type="string" required>
      Trigger type: `api`, `event`, `time`
    </ResponseField>

    <ResponseField name="start_time" type="datetime">
      Date and time when the trigger should start running.
    </ResponseField>

    <ResponseField name="status" type="string" required>
      `active`, `inactive`
    </ResponseField>

    <ResponseField name="updated_at" type="datetime" required>
      Date and time the trigger was last updated.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="type" type="string" required>
  The type of the pipeline:
  `integration`, `pyspark`, `python`, `streaming`
  Note that `python` is a standard (batch) pipeline with a python backend, while `pyspark` is a batch pipeline with a spark backend.
</ResponseField>

<ResponseField name="uuid" type="string" required>
  Unique identifier for the pipeline.
</ResponseField>

<ResponseField name="variables" type="object">
  Object containing variables for the pipeline.

  <Expandable title="properties" defaultOpen="true">
    <ResponseField name="[key]" type="string">
      The property name is user defined.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="widgets" type="array of objects">
  Array of widget block objects. Same shape as `blocks`.
</ResponseField>
