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

# Get pipeline



## OpenAPI

````yaml /api-reference/openapi.json get /pipelines/{id}
openapi: 3.0.3
info:
  title: FileFeed API
  version: '2026-05-25'
  description: >-
    Official FileFeed REST API for connections, pipelines, schemas, pipeline
    runs, webhooks, outbound uploads, documents, files, and notifications.
    Date-based API versioning is controlled by the `FileFeed-Version` request
    header (default `2024-09-01`; latest `2026-05-25`); this document describes
    the `2026-05-25` shape.
servers:
  - url: https://api.sftpsync.io
security:
  - ApiKeyAuth: []
tags:
  - name: Connections
  - name: Pipelines
  - name: Schemas
  - name: Pipeline Runs
  - name: Webhooks
  - name: Outbound Uploads
  - name: Documents
  - name: Files
  - name: Notifications
  - name: Clients (deprecated)
paths:
  /pipelines/{id}:
    get:
      tags:
        - Pipelines
      summary: Get pipeline
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Pipeline
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Pipeline'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    Pipeline:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        direction:
          type: string
          enum:
            - inbound
            - outbound
          default: inbound
          description: >-
            Pipeline direction. Outbound pipelines accept data via the Outbound
            Uploads API.
        mappings:
          $ref: '#/components/schemas/PipelineMappings'
        isActive:
          type: boolean
        clientId:
          type: string
          description: Connection id this pipeline is bound to.
        schemaId:
          type: string
        webhooks:
          type: array
          description: >-
            Webhooks linked to this pipeline. Present and non-empty only when
            the pipeline has associated webhooks.
          items:
            type: object
            properties:
              id:
                type: string
              name:
                type: string
              url:
                type: string
                format: uri
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - id
        - name
        - mappings
        - isActive
        - clientId
        - schemaId
        - createdAt
        - updatedAt
    PipelineMappings:
      type: object
      description: >-
        The mapping definition the API expects. Field mappings live under
        `fieldMappings`; not a bare array.
      properties:
        fieldMappings:
          type: array
          items:
            $ref: '#/components/schemas/FieldMapping'
        options:
          type: object
          additionalProperties: true
          description: 'Parsing hints: delimiter, skipHeaderRow, detectTypes, validateData.'
        validations:
          type: object
          additionalProperties: true
          description: Optional per-target validation overrides, keyed by target column.
      required:
        - fieldMappings
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
        statusCode:
          type: integer
        error:
          type: string
    FieldMapping:
      type: object
      description: >-
        One field mapping. Either sourced ({ source, target, transform? } —
        copies a column from the input), static ({ target, value } — writes a
        literal constant into the target on every row; omit `source`), or
        aggregated ({ sources, target, delimiter? } — joins several input
        columns into one target, in order, joined by `delimiter`, skipping empty
        values; a `transform`, if set, runs on the joined result). Aggregated
        mappings are in limited availability and must be enabled for your
        workspace — a request that uses them on a workspace without the feature
        is rejected with 400.
      properties:
        source:
          type: string
          description: Source column name. Omit for a static or aggregated mapping.
        target:
          type: string
          description: Target field/column name.
        transform:
          type: string
          description: >-
            Optional transform key (sourced and aggregated mappings; not applied
            to static values).
        value:
          type: string
          description: >-
            Static literal written to `target` on every row. Presence marks the
            mapping static. Provide instead of `source`/`sources`.
        sources:
          type: array
          items:
            type: string
          description: >-
            Source columns to combine into `target`, joined by `delimiter` (in
            order; empty values are skipped). Provide instead of `source`.
            Presence marks the mapping aggregated. Limited availability —
            requires the field-aggregation feature.
        delimiter:
          type: string
          default: ' '
          description: >-
            Separator used to join `sources` (default a single space). An
            explicit empty string concatenates with no separator. Only used with
            `sources`.
      required:
        - target
  responses:
    NotFound:
      description: Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````