Release pipelines (beta)

This feature is in beta

To use this feature, pass in a header including the LD-API-Version key with value set to beta. Use this header with each call. To learn more, read Beta resources.

Resources that are in beta are still undergoing testing and development. They may change without notice, including becoming backwards incompatible.

Release pipelines track the progression of a feature flag across a series of phases, where each phase consists of one or more environments. When you add a flag to a release pipeline, you create a "release" to track that flag's progress through the pipeline.

You can use release pipelines to ensure that you correctly roll out the flag in each environment before moving on to the next. You can also use them to view the status of ongoing releases across all flags within a project, enforcing a standardized process and ensuring they are following best practices. To learn more, read Release pipelines.

With the release pipelines API, you can view, create, and delete release pipelines.

With the related releases API, you can view and update the active releases for a given flag.

To add a feature flag to an existing release pipeline, use the Update feature flag endpoint.

Get all release pipelines

Get all release pipelines for a project.

Filtering release pipelines

LaunchDarkly supports the following fields for filters:

  • query is a string that matches against the release pipeline key, name, and description. It is not case sensitive. For example: ?filter=query:examplePipeline.
Request
path Parameters
projectKey
required
string <string>

The project key

query Parameters
filter
string <string>

A comma-separated list of filters. Each filter is of the form field:value. Read the endpoint description for a full list of available filter fields.

limit
integer <int64>

The maximum number of items to return. Defaults to 20.

offset
integer <int64>

Where to start in the list. Defaults to 0. Use this with pagination. For example, an offset of 10 skips the first ten items and then returns the next items in the list, up to the query limit.

Responses
200

Release pipeline collection

404

Invalid resource identifier

get/api/v2/projects/{projectKey}/release-pipelines
Request samples
Response samples
application/json
{
  • "items": [
    ],
  • "totalCount": 1
}

Create a release pipeline

Creates a new release pipeline.

The first release pipeline you create is automatically set as the default release pipeline for your project. To change the default release pipeline, use the Update project API to set the defaultReleasePipelineKey.

You can create up to 20 release pipelines per project.

Request
path Parameters
projectKey
required
string <string>

The project key

Request Body schema: application/json
required
description
string

The release pipeline description

key
required
string

The unique identifier of this release pipeline

name
required
string

The name of the release pipeline

required
Array of objects (CreatePhaseInput)

A logical grouping of one or more environments that share attributes for rolling out changes

tags
Array of strings

A list of tags for this release pipeline

Responses
201

Release pipeline response

400

Invalid request

403

Forbidden

404

Invalid resource identifier

409

Status conflict

post/api/v2/projects/{projectKey}/release-pipelines
Request samples
application/json
{
  • "description": "Standard pipeline to roll out to production",
  • "key": "standard-pipeline",
  • "name": "Standard Pipeline",
  • "phases": [
    ],
  • "tags": [
    ]
}
Response samples
application/json
{
  • "createdAt": "1684262711507",
  • "description": "Standard pipeline to roll out to production",
  • "key": "standard-pipeline",
  • "name": "Standard Pipeline",
  • "phases": [
    ],
  • "tags": [
    ],
  • "_version": 1,
  • "_access": {
    }
}

Get release pipeline by key

Get a release pipeline by key

Request
path Parameters
projectKey
required
string <string>

The project key

pipelineKey
required
string <string>

The release pipeline key

Responses
200

Release pipeline response

404

Invalid resource identifier

get/api/v2/projects/{projectKey}/release-pipelines/{pipelineKey}
Request samples
Response samples
application/json
{
  • "createdAt": "1684262711507",
  • "description": "Standard pipeline to roll out to production",
  • "key": "standard-pipeline",
  • "name": "Standard Pipeline",
  • "phases": [
    ],
  • "tags": [
    ],
  • "_version": 1,
  • "_access": {
    }
}

Update a release pipeline

Updates a release pipeline. Updating a release pipeline uses a JSON patch representation of the desired changes. To learn more, read Updates.

Request
path Parameters
projectKey
required
string <string>

The project key

pipelineKey
required
string <string>

The release pipeline key

Responses
200

Release pipeline response

400

Invalid request

403

Forbidden

404

Invalid resource identifier

patch/api/v2/projects/{projectKey}/release-pipelines/{pipelineKey}
Request samples
Response samples
application/json
{
  • "createdAt": "1684262711507",
  • "description": "Standard pipeline to roll out to production",
  • "key": "standard-pipeline",
  • "name": "Standard Pipeline",
  • "phases": [
    ],
  • "tags": [
    ],
  • "_version": 1,
  • "_access": {
    }
}

Delete release pipeline

Deletes a release pipeline.

You cannot delete the default release pipeline.

If you want to delete a release pipeline that is currently the default, create a second release pipeline and set it as the default. Then delete the first release pipeline. To change the default release pipeline, use the Update project API to set the defaultReleasePipelineKey.

Request
path Parameters
projectKey
required
string <string>

The project key

pipelineKey
required
string <string>

The release pipeline key

Responses
204

Action succeeded

403

Forbidden

404

Invalid resource identifier

delete/api/v2/projects/{projectKey}/release-pipelines/{pipelineKey}
Request samples
Response samples
application/json
{
  • "code": "forbidden",
  • "message": "Forbidden. Access to the requested resource was denied."
}