---
title: "Modify a Lifecycle."
method: PUT
path: "/lifecycles/{id}"
tags: ["Lifecycles"]
---

# Modify a Lifecycle.

`PUT /lifecycles/{id}`

## Path parameters

- `id` string, required

## Request body

- ModifyLifecycleCommand
  - `Description` string — A description of the Lifecycle
  - `Id` string, required — The Id of the Lifecycle to modify.
  - `Name` string, required — The name of the Lifecycle.
  - `Phases` PhaseResource[] — The complete list of promotion phases in order; existing phases not resubmitted are deleted. Each phase lists environments deployed to automatically (AutomaticDeploymentTargets) or manually (OptionalDeploymentTargets); an environment may appear in only one phase, and at most one phase may list no environments, meaning all remaining environments. MinimumEnvironmentsBeforePromotion is how many of the phase's environments must be deployed before a release can progress (0 means all). IsOptionalPhase allows skipping the phase, but not every phase may be optional. Per-phase retention policies override the lifecycle-level ones.
    - `AutomaticDeploymentTargets` string[]
    - `Id` string
    - `IsOptionalPhase` boolean
    - `IsPriorityPhase` boolean
    - `MinimumEnvironmentsBeforePromotion` integer
    - `Name` string
    - `OptionalDeploymentTargets` string[]
    - `ReleaseRetentionPolicy` RetentionPeriod
      - `QuantityToKeep` integer
      - `ShouldKeepForever` boolean
      - `Strategy` string
      - `Unit` 'Days' | 'Items'
    - `TentacleRetentionPolicy` RetentionPeriod
      - `QuantityToKeep` integer
      - `ShouldKeepForever` boolean
      - `Strategy` string
      - `Unit` 'Days' | 'Items'
  - `ReleaseRetentionPolicy` RetentionPeriod
    - `QuantityToKeep` integer
    - `ShouldKeepForever` boolean
    - `Strategy` string
    - `Unit` 'Days' | 'Items'
  - `Slug` string — The slug of the Lifecycle
  - `SpaceId` string, required — The id of the Space for the Lifecycle.
  - `TentacleRetentionPolicy` RetentionPeriod
    - `QuantityToKeep` integer
    - `ShouldKeepForever` boolean
    - `Strategy` string
    - `Unit` 'Days' | 'Items'

## Response `200`

Contains a Lifecycle resource which represents changes to the Lifecycle.

- LifecycleResource
  - `Description` string
  - `Id` string — Gets or sets a unique identifier for this resource.
  - `LastModifiedBy` string — Gets or sets the username of the user who last modified this resource.
  - `LastModifiedOn` string, date-time — Gets or sets the date/time that this resource was last modified.
  - `Links` object — Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.
  - `Name` string
  - `Phases` PhaseResource[]
    - `AutomaticDeploymentTargets` string[]
    - `Id` string
    - `IsOptionalPhase` boolean
    - `IsPriorityPhase` boolean
    - `MinimumEnvironmentsBeforePromotion` integer
    - `Name` string
    - `OptionalDeploymentTargets` string[]
    - `ReleaseRetentionPolicy` RetentionPeriod
      - `QuantityToKeep` integer
      - `ShouldKeepForever` boolean
      - `Strategy` string
      - `Unit` 'Days' | 'Items'
    - `TentacleRetentionPolicy` RetentionPeriod
      - `QuantityToKeep` integer
      - `ShouldKeepForever` boolean
      - `Strategy` string
      - `Unit` 'Days' | 'Items'
  - `ReleaseRetentionPolicy` RetentionPeriod
    - `QuantityToKeep` integer
    - `ShouldKeepForever` boolean
    - `Strategy` string
    - `Unit` 'Days' | 'Items'
  - `Slug` string
  - `SpaceId` string
  - `TentacleRetentionPolicy` RetentionPeriod
    - `QuantityToKeep` integer
    - `ShouldKeepForever` boolean
    - `Strategy` string
    - `Unit` 'Days' | 'Items'

## Other responses

- `400` — Bad request. Either the payload was not structurally valid or business rules did not permit the operation.
- `404` — Not found. One or more of the entities involved in the operation was not found.

---

[API](https://skmtc.net/octopus/apis/octopus-server-api.md) · [All operations](https://skmtc.net/octopus/apis/octopus-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/octopus/octopus-server-api/revisions/b296c3a60aa5/schema)
