---
title: "Update pipeline"
method: POST
path: "/api/organizations/{organizationId}/pipelines/{pipelineId}"
tags: ["OrganizationPipelines"]
---

# Update pipeline

`POST /api/organizations/{organizationId}/pipelines/{pipelineId}`

## Request

- Base URL: `https://studio.edgeimpulse.com/v1`
- URL: `https://studio.edgeimpulse.com/v1/api/organizations/{organizationId}/pipelines/{pipelineId}`
- Auth: one of:
  - API key in header `x-api-key`
  - API key in cookie `jwt`
  - API key in header `x-jwt-token`
  - OAuth 2
    - Authorization code: `/v1/oauth/authorize`
    - Client credentials
    - Implicit: `/v1/oauth/authorize`
    - Password
    - Token URL: `/v1/oauth/token`
- TypeScript: <https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/docs/api/organizations/:organizationId/pipelines/:pipelineId/post.ts> (a function with typed inputs; its response is checked against the schema)

Update an organizational pipelines

## Path parameters

- `organizationId` integer, required
- `pipelineId` integer, required

## Request body

- OrganizationUpdatePipelineBody
  - `name` string, required
  - `description` string, required
  - `intervalStr` string: 15m for every 15 minutes, 2h for every 2 hours, 1d for every 1 day
  - `steps` OrganizationPipelineStep[], required
    - `name` string, required
    - `filter` string
    - `pathFilters` OrganizationCreateProjectPathFilter[]: Set of paths to apply the transformation to, used for creating transformation jobs on default datasets.
      - `dataset` string, required: Dataset name of files to transform
      - `filter` string, required: Path filter with wildcards, relative to the root of the dataset. For example, /folder/*.json will transform all JSON files in /folder (when operating on files)
    - `uploadType` 'project' | 'dataset'
    - `projectId` integer
    - `newProjectName` string
    - `projectApiKey` string
    - `projectHmacKey` string
    - `transformationBlockId` integer
    - `builtinTransformationBlock` object
    - `category` 'training' | 'validation' | 'testing' | 'split'
    - `outputDatasetName` string
    - `outputDatasetBucketId` integer
    - `outputDatasetBucketPath` string
    - `outputPathInDataset` string: Path within the selected dataset to upload transformed files into. Used only when uploading into a default (non-clinical) dataset.
    - `outputDatasetPathRule` 'no-subfolders' | 'subfolder-per-item' | 'use-full-path': Defines the folder structure for writing to the output dataset. Used only when uploading into a default (non-clinical) dataset.
    - `label` string
    - `transformationParallel` integer
    - `extraCliArguments` string
    - `parameters` object
  - `dataset` string
  - `projectId` integer
  - `emailRecipientUids` integer[], required
  - `notificationWebhook` string
  - `whenToEmail` 'always' | 'on_new_data' | 'never', required
  - `archived` boolean

## Response `200`

OK

- GenericApiResponse
  - `success` boolean, required: Whether the operation succeeded
  - `error` string: Optional error description (set if 'success' was false)

---

[API](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api.md) - [All operations](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/llms.txt) - [OpenAPI document](https://skmtc.dev/edgeimpulse/apis/edge-impulse-api/revisions/e2a976d38427?raw)
