Share via


Definitions - Update

Update a release definition.

PUT https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/definitions?api-version=5.0

URI Parameters

Name In Required Type Description
organization
path True

string

The name of the Azure DevOps organization.

project
path True

string

Project ID or project name

api-version
query True

string

Version of the API to use. This should be set to '5.0' to use this version of the api.

Request Body

Name Type Description
_links

ReferenceLinks

Gets the links to related resources, APIs, and views for the release definition.

artifacts

Artifact[]

Gets or sets the list of artifacts.

comment

string

Gets or sets comment.

createdBy

IdentityRef

Gets or sets the identity who created.

createdOn

string (date-time)

Gets date on which it got created.

description

string

Gets or sets the description.

environments

ReleaseDefinitionEnvironment[]

Gets or sets the list of environments.

id

integer (int32)

Gets the unique identifier of release definition.

isDeleted

boolean

Whether release definition is deleted.

lastRelease

ReleaseReference

Gets the reference of last release.

modifiedBy

IdentityRef

Gets or sets the identity who modified.

modifiedOn

string (date-time)

Gets date on which it got modified.

name

string

Gets or sets the name of the release definition.

path

string

Gets or sets the path of the release definition.

projectReference

ProjectReference

Gets or sets project reference.

properties

PropertiesCollection

Gets or sets properties.

releaseNameFormat

string

Gets or sets the release name format.

revision

integer (int32)

Gets the revision number.

source

ReleaseDefinitionSource

Gets or sets source of release definition.

tags

string[]

Gets or sets list of tags.

triggers

ReleaseTriggerBase[]

Gets or sets the list of triggers.

url

string

Gets the REST API url to access the release definition.

variableGroups

integer[] (int32)

Gets or sets the list of variable groups.

variables

<string,  ConfigurationVariableValue>

Gets or sets the dictionary of variables.

Responses

Name Type Description
200 OK

ReleaseDefinition

successful operation

Security

oauth2

Type: oauth2
Flow: accessCode
Authorization URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Scopes

Name Description
vso.release_execute Grants the ability to read and update release artifacts, including releases, release definitions and release envrionment, and the ability to queue a new release.

Definitions

Name Description
ApprovalExecutionOrder
ApprovalOptions
Artifact
ArtifactSourceReference
AuthorizationHeader
Condition
ConditionType

Gets or sets the condition type.

ConfigurationVariableValue
DataSourceBindingBase

Represents binding of data source for the service endpoint request.

Demand
DeployPhase
DeployPhaseTypes
EnvironmentExecutionPolicy

Defines policy on environment queuing at Release Management side queue. We will send to Environment Runner [creating pre-deploy and other steps] only when the policies mentioned are satisfied.

EnvironmentOptions
EnvironmentRetentionPolicy
EnvironmentTrigger
EnvironmentTriggerType
IdentityRef
ProcessParameters
ProjectReference
PropertiesCollection

The class represents a property bag as a collection of key-value pairs. Values of all primitive types (any type with a TypeCode != TypeCode.Object) except for DBNull are accepted. Values of type Byte[], Int32, Double, DateType and String preserve their type, other primitives are retuned as a String. Byte[] expected as base64 encoded string.

ReferenceLinks

The class to represent a collection of REST reference links.

ReleaseDefinition
ReleaseDefinitionApprovals
ReleaseDefinitionApprovalStep
ReleaseDefinitionDeployStep
ReleaseDefinitionEnvironment
ReleaseDefinitionGate
ReleaseDefinitionGatesOptions
ReleaseDefinitionGatesStep
ReleaseDefinitionShallowReference
ReleaseDefinitionSource

Gets or sets source of release definition.

ReleaseReason

Gets reason for release.

ReleaseReference
ReleaseSchedule
ReleaseShallowReference
ReleaseTriggerBase
ReleaseTriggerType
ScheduleDays

Days of the week to release

TaskInputDefinitionBase
TaskInputValidation
TaskSourceDefinitionBase
WorkflowTask

ApprovalExecutionOrder

Value Description
afterGatesAlways
afterSuccessfulGates
beforeGates

ApprovalOptions

Name Type Description
autoTriggeredAndPreviousEnvironmentApprovedCanBeSkipped

boolean

enforceIdentityRevalidation

boolean

executionOrder

ApprovalExecutionOrder

releaseCreatorCanBeApprover

boolean

requiredApproverCount

integer (int32)

timeoutInMinutes

integer (int32)

Artifact

Name Type Description
alias

string

Gets or sets alias.

definitionReference

<string,  ArtifactSourceReference>

Gets or sets definition reference. e.g. {"project":{"id":"fed755ea-49c5-4399-acea-fd5b5aa90a6c","name":"myProject"},"definition":{"id":"1","name":"mybuildDefinition"},"connection":{"id":"1","name":"myConnection"}}

isPrimary

boolean

Gets or sets as artifact is primary or not.

isRetained

boolean

type

string

Gets or sets type. It can have value as 'Build', 'Jenkins', 'GitHub', 'Nuget', 'Team Build (external)', 'ExternalTFSBuild', 'Git', 'TFVC', 'ExternalTfsXamlBuild'.

ArtifactSourceReference

Name Type Description
id

string

name

string

AuthorizationHeader

Name Type Description
name

string

value

string

Condition

Name Type Description
conditionType

ConditionType

Gets or sets the condition type.

name

string

Gets or sets the name of the condition. e.g. 'ReleaseStarted'.

value

string

Gets or set value of the condition.

ConditionType

Gets or sets the condition type.

Value Description
artifact

The condition type is artifact.

environmentState

The condition type is environment state.

event

The condition type is event.

undefined

The condition type is undefined.

ConfigurationVariableValue

Name Type Description
allowOverride

boolean

Gets or sets if a variable can be overridden at deployment time or not.

isSecret

boolean

Gets or sets as variable is secret or not.

value

string

Gets or sets value of the configuration variable.

DataSourceBindingBase

Represents binding of data source for the service endpoint request.

Name Type Description
callbackContextTemplate

string

Pagination format supported by this data source(ContinuationToken/SkipTop).

callbackRequiredTemplate

string

Subsequent calls needed?

dataSourceName

string

Gets or sets the name of the data source.

endpointId

string

Gets or sets the endpoint Id.

endpointUrl

string

Gets or sets the url of the service endpoint.

headers

AuthorizationHeader[]

Gets or sets the authorization headers.

initialContextTemplate

string

Defines the initial value of the query params

parameters

object

Gets or sets the parameters for the data source.

resultSelector

string

Gets or sets the result selector.

resultTemplate

string

Gets or sets the result template.

target

string

Gets or sets the target of the data source.

Demand

Name Type Description
name

string

value

string

DeployPhase

Name Type Description
name

string

phaseType

DeployPhaseTypes

rank

integer (int32)

refName

string

workflowTasks

WorkflowTask[]

DeployPhaseTypes

Value Description
agentBasedDeployment
deploymentGates

Phase type which contains tasks which acts as Gates for the deployment to go forward.

machineGroupBasedDeployment
runOnServer
undefined

EnvironmentExecutionPolicy

Defines policy on environment queuing at Release Management side queue. We will send to Environment Runner [creating pre-deploy and other steps] only when the policies mentioned are satisfied.

Name Type Description
concurrencyCount

integer (int32)

This policy decides, how many environments would be with Environment Runner.

queueDepthCount

integer (int32)

Queue depth in the EnvironmentQueue table, this table keeps the environment entries till Environment Runner is free [as per it's policy] to take another environment for running.

EnvironmentOptions

Name Type Description
autoLinkWorkItems

boolean

badgeEnabled

boolean

emailNotificationType

string

emailRecipients

string

enableAccessToken

boolean

publishDeploymentStatus

boolean

pullRequestDeploymentEnabled

boolean

skipArtifactsDownload

boolean

timeoutInMinutes

integer (int32)

EnvironmentRetentionPolicy

Name Type Description
daysToKeep

integer (int32)

releasesToKeep

integer (int32)

retainBuild

boolean

EnvironmentTrigger

Name Type Description
definitionEnvironmentId

integer (int32)

releaseDefinitionId

integer (int32)

triggerContent

string

triggerType

EnvironmentTriggerType

EnvironmentTriggerType

Value Description
deploymentGroupRedeploy
rollbackRedeploy
undefined

IdentityRef

Name Type Description
_links

ReferenceLinks

This field contains zero or more interesting links about the graph subject. These links may be invoked to obtain additional relationships or more detailed information about this graph subject.

descriptor

string

The descriptor is the primary way to reference the graph subject while the system is running. This field will uniquely identify the same graph subject across both Accounts and Organizations.

directoryAlias

string

displayName

string

This is the non-unique display name of the graph subject. To change this field, you must alter its value in the source provider.

id

string

imageUrl

string

inactive

boolean

isAadIdentity

boolean

isContainer

boolean

isDeletedInOrigin

boolean

profileUrl

string

uniqueName

string

url

string

This url is the full route to the source resource of this graph subject.

ProcessParameters

Name Type Description
dataSourceBindings

DataSourceBindingBase[]

Represents binding of data source for the service endpoint request.

inputs

TaskInputDefinitionBase[]

sourceDefinitions

TaskSourceDefinitionBase[]

ProjectReference

Name Type Description
id

string (uuid)

Gets the unique identifier of this field.

name

string

Gets name of project.

PropertiesCollection

The class represents a property bag as a collection of key-value pairs. Values of all primitive types (any type with a TypeCode != TypeCode.Object) except for DBNull are accepted. Values of type Byte[], Int32, Double, DateType and String preserve their type, other primitives are retuned as a String. Byte[] expected as base64 encoded string.

Name Type Description
count

integer (int32)

The count of properties in the collection.

item

object

keys

string[]

The set of keys in the collection.

values

string[]

The set of values in the collection.

The class to represent a collection of REST reference links.

Name Type Description
links

object

The readonly view of the links. Because Reference links are readonly, we only want to expose them as read only.

ReleaseDefinition

Name Type Description
_links

ReferenceLinks

Gets the links to related resources, APIs, and views for the release definition.

artifacts

Artifact[]

Gets or sets the list of artifacts.

comment

string

Gets or sets comment.

createdBy

IdentityRef

Gets or sets the identity who created.

createdOn

string (date-time)

Gets date on which it got created.

description

string

Gets or sets the description.

environments

ReleaseDefinitionEnvironment[]

Gets or sets the list of environments.

id

integer (int32)

Gets the unique identifier of release definition.

isDeleted

boolean

Whether release definition is deleted.

lastRelease

ReleaseReference

Gets the reference of last release.

modifiedBy

IdentityRef

Gets or sets the identity who modified.

modifiedOn

string (date-time)

Gets date on which it got modified.

name

string

Gets or sets the name of the release definition.

path

string

Gets or sets the path of the release definition.

projectReference

ProjectReference

Gets or sets project reference.

properties

PropertiesCollection

Gets or sets properties.

releaseNameFormat

string

Gets or sets the release name format.

revision

integer (int32)

Gets the revision number.

source

ReleaseDefinitionSource

Gets or sets source of release definition.

tags

string[]

Gets or sets list of tags.

triggers

ReleaseTriggerBase[]

Gets or sets the list of triggers.

url

string

Gets the REST API url to access the release definition.

variableGroups

integer[] (int32)

Gets or sets the list of variable groups.

variables

<string,  ConfigurationVariableValue>

Gets or sets the dictionary of variables.

ReleaseDefinitionApprovals

Name Type Description
approvalOptions

ApprovalOptions

approvals

ReleaseDefinitionApprovalStep[]

ReleaseDefinitionApprovalStep

Name Type Description
approver

IdentityRef

id

integer (int32)

isAutomated

boolean

isNotificationOn

boolean

rank

integer (int32)

ReleaseDefinitionDeployStep

Name Type Description
id

integer (int32)

tasks

WorkflowTask[]

The list of steps for this definition.

ReleaseDefinitionEnvironment

Name Type Description
badgeUrl

string

conditions

Condition[]

currentRelease

ReleaseShallowReference

demands

Demand[]

deployPhases

DeployPhase[]

deployStep

ReleaseDefinitionDeployStep

environmentOptions

EnvironmentOptions

environmentTriggers

EnvironmentTrigger[]

executionPolicy

EnvironmentExecutionPolicy

Defines policy on environment queuing at Release Management side queue. We will send to Environment Runner [creating pre-deploy and other steps] only when the policies mentioned are satisfied.

id

integer (int32)

name

string

owner

IdentityRef

postDeployApprovals

ReleaseDefinitionApprovals

postDeploymentGates

ReleaseDefinitionGatesStep

preDeployApprovals

ReleaseDefinitionApprovals

preDeploymentGates

ReleaseDefinitionGatesStep

processParameters

ProcessParameters

properties

PropertiesCollection

The class represents a property bag as a collection of key-value pairs. Values of all primitive types (any type with a TypeCode != TypeCode.Object) except for DBNull are accepted. Values of type Byte[], Int32, Double, DateType and String preserve their type, other primitives are retuned as a String. Byte[] expected as base64 encoded string.

queueId

integer (int32)

rank

integer (int32)

retentionPolicy

EnvironmentRetentionPolicy

schedules

ReleaseSchedule[]

variableGroups

integer[] (int32)

variables

<string,  ConfigurationVariableValue>

ReleaseDefinitionGate

Name Type Description
tasks

WorkflowTask[]

ReleaseDefinitionGatesOptions

Name Type Description
isEnabled

boolean

minimumSuccessDuration

integer (int32)

samplingInterval

integer (int32)

stabilizationTime

integer (int32)

timeout

integer (int32)

ReleaseDefinitionGatesStep

Name Type Description
gates

ReleaseDefinitionGate[]

gatesOptions

ReleaseDefinitionGatesOptions

id

integer (int32)

ReleaseDefinitionShallowReference

Name Type Description
_links

ReferenceLinks

Gets the links to related resources, APIs, and views for the release definition.

id

integer (int32)

Gets the unique identifier of release definition.

name

string

Gets or sets the name of the release definition.

path

string

Gets or sets the path of the release definition.

projectReference

ProjectReference

Gets or sets project reference.

url

string

Gets the REST API url to access the release definition.

ReleaseDefinitionSource

Gets or sets source of release definition.

Value Description
ibiza
portalExtensionApi
restApi
undefined
userInterface

ReleaseReason

Gets reason for release.

Value Description
continuousIntegration
manual
none
pullRequest
schedule

ReleaseReference

Name Type Description
_links

ReferenceLinks

Gets links to access the release.

artifacts

Artifact[]

Gets list of artifacts.

createdBy

IdentityRef

Gets the identity who created.

createdOn

string (date-time)

Gets date on which it got created.

description

string

Gets description.

id

integer (int32)

Gets the unique identifier of this field.

modifiedBy

IdentityRef

Gets the identity who modified.

name

string

Gets name of release.

reason

ReleaseReason

Gets reason for release.

releaseDefinition

ReleaseDefinitionShallowReference

Gets release definition shallow reference.

ReleaseSchedule

Name Type Description
daysToRelease

ScheduleDays

Days of the week to release

jobId

string (uuid)

Team Foundation Job Definition Job Id

startHours

integer (int32)

Local time zone hour to start

startMinutes

integer (int32)

Local time zone minute to start

timeZoneId

string

Time zone Id of release schedule, such as 'UTC'

ReleaseShallowReference

Name Type Description
_links

ReferenceLinks

Gets the links to related resources, APIs, and views for the release.

id

integer (int32)

Gets the unique identifier of release.

name

string

Gets or sets the name of the release.

url

string

Gets the REST API url to access the release.

ReleaseTriggerBase

Name Type Description
triggerType

ReleaseTriggerType

ReleaseTriggerType

Value Description
artifactSource
containerImage
package
pullRequest
schedule
sourceRepo
undefined

ScheduleDays

Days of the week to release

Value Description
all
friday
monday
none
saturday
sunday
thursday
tuesday
wednesday

TaskInputDefinitionBase

Name Type Description
aliases

string[]

defaultValue

string

groupName

string

helpMarkDown

string

label

string

name

string

options

object

properties

object

required

boolean

type

string

validation

TaskInputValidation

visibleRule

string

TaskInputValidation

Name Type Description
expression

string

Conditional expression

message

string

Message explaining how user can correct if validation fails

TaskSourceDefinitionBase

Name Type Description
authKey

string

endpoint

string

keySelector

string

selector

string

target

string

WorkflowTask

Name Type Description
alwaysRun

boolean

condition

string

continueOnError

boolean

definitionType

string

enabled

boolean

environment

object

inputs

object

name

string

overrideInputs

object

refName

string

taskId

string (uuid)

timeoutInMinutes

integer (int32)

version

string