Create a Channel
POST /api
Also reachable at /api, /api.
Path Parameters
spaceIdstring (required)
Request Body
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of object
Custom fields (FieldName plus a human-facing Description) that become mandatory when creating a release in this channel.DescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestring
Maximum length 1000.GitReferenceRulesarray of string
Git reference patterns (e.g. ‘refs/heads/main’, ‘refs/heads/feature/*’) restricting which branches or tags can create releases in this channel. Only valid for version-controlled (Config-as-Code) projects.GitResourceRulesarray of object
Rules restricting which Git refs may be used for external Git dependencies referenced by deployment steps. Each rule targets step Git dependencies via GitDependencyActions (DeploymentActionSlug plus GitDependencyName) and lists the allowed Git reference patterns in Rules.GitDependencyActionsarray of objectIdstringRulesarray of string
IsDefaultbooleanLifecycleIdstring
The lifecycle for this channel. Must be null for ephemeral environment channels.Namestring (required)
Minimum length 1.ParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel. Required for ephemeral environment channels.ProjectIdstring (required)Rulesarray of object
Version rules restricting which package versions may be used when creating a release in this channel. Each rule targets step packages via ActionPackages (DeploymentAction is the step name or ID, PackageReference the package reference name or ID) and constrains versions with a NuGet-style VersionRange (e.g. ‘[1.0,2.0)’) and/or a Tag regex matched against the package’s pre-release tag (e.g. ‘^$’ for stable versions only). Leave each rule’s Id blank; the server assigns it.ActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstring (required)TenantTagsarray of string
Canonical tenant tag names in ‘TagSet/Tag’ format restricting which tenants can deploy releases from this channel.Typestring
Response
201 — Created
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Request
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"IsDefault": true,
"LifecycleId": "string",
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Example Response
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Get a list of Channels
GET /api
Also reachable at /api, /api.
Lists all of the channels in the supplied Octopus Deploy Space. The results will be sorted alphabetically by name.
Path Parameters
spaceIdstring (required)
Query Parameters
idsarray of string
A set of Channel IDs to retrieve Channels for. Example: Channel-101,Channel-201.
Response
200 — List of all of the channels in the supplied Octopus Deploy Space. The results will be sorted alphabetically by name.
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Response
[
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}
]Perform Channel version rule test against provided Package version
GET /api
Also reachable at /api, /api.
Path Parameters
spaceIdstring (required)
The ID of the space containing the resource(s).
Query Parameters
actionsarray of string
A list of step names to find a package step which the feed type will determine which version format should be used.feedIdstring
A feed ID to determine which version format should be used.feedTypeenum
A feed type to determine which version format should be used.
Allowed values:None,NuGet,Docker,Maven,OctopusProject,GitHub,Helm,OciRegistry,AwsElasticContainerRegistry,BuiltIn,S3,AzureContainerRegistry,GoogleContainerRegistry,ArtifactoryGeneric,Npm,GcsStorage,PyPi.preReleaseTagstring
A regular expression to test the version pre-release tag against.projectIdstring
A deployment process ID in which to search for the steps referenced by the ‘Actions’ parameter.versionstring (required)
The version to test.versionRangestring
A version range to test the version against.
Response
200 — Result of testing Channel version rules
Errorsarray of stringSatisfiesPreReleaseTagbooleanSatisfiesVersionRangeboolean
Example Response
{
"Errors": [
"string"
],
"SatisfiesPreReleaseTag": true,
"SatisfiesVersionRange": true
}Perform Channel version rule test against provided Package version
POST /api
Path Parameters
spaceIdstring (required)
The ID of the space containing the resource(s).
Query Parameters
actionsarray of string
A list of step names to find a package step which the feed type will determine which version format should be used.feedIdstring
A feed ID to determine which version format should be used.feedTypeenum
A feed type to determine which version format should be used.
Allowed values:None,NuGet,Docker,Maven,OctopusProject,GitHub,Helm,OciRegistry,AwsElasticContainerRegistry,BuiltIn,S3,AzureContainerRegistry,GoogleContainerRegistry,ArtifactoryGeneric,Npm,GcsStorage,PyPi.preReleaseTagstring
A regular expression to test the version pre-release tag against.projectIdstring
A deployment process ID in which to search for the steps referenced by the ‘Actions’ parameter.versionstring (required)
The version to test.versionRangestring
A version range to test the version against.
Response
200 — Result of testing Channel version rules
Errorsarray of stringSatisfiesPreReleaseTagbooleanSatisfiesVersionRangeboolean
Example Response
{
"Errors": [
"string"
],
"SatisfiesPreReleaseTag": true,
"SatisfiesVersionRange": true
}Perform Channel version rule test against provided Package version
POST /api
Also reachable at /api.
Path Parameters
spaceIdentifierstring (required)
Identifier (ID or slug) of the space.
Query Parameters
actionsarray of string
A list of step names to find a package step which the feed type will determine which version format should be used.feedIdstring
A feed ID to determine which version format should be used.feedTypeenum
A feed type to determine which version format should be used.
Allowed values:None,NuGet,Docker,Maven,OctopusProject,GitHub,Helm,OciRegistry,AwsElasticContainerRegistry,BuiltIn,S3,AzureContainerRegistry,GoogleContainerRegistry,ArtifactoryGeneric,Npm,GcsStorage,PyPi.preReleaseTagstring
A regular expression to test the version pre-release tag against.projectIdstring
A deployment process ID in which to search for the steps referenced by the ‘Actions’ parameter.versionstring (required)
The version to test.versionRangestring
A version range to test the version against.
Response
200 — Result of testing Channel version rules
Errorsarray of stringSatisfiesPreReleaseTagbooleanSatisfiesVersionRangeboolean
Example Response
{
"Errors": [
"string"
],
"SatisfiesPreReleaseTag": true,
"SatisfiesVersionRange": true
}Test Channel version rules
GET /api
Also reachable at /api, /api.
Path Parameters
spaceIdstring (required)
Query Parameters
deploymentProcessIdstringfeedIdstringfeedTypeenum
Allowed values:None,NuGet,Docker,Maven,OctopusProject,GitHub,Helm,OciRegistry,AwsElasticContainerRegistry,BuiltIn,S3,AzureContainerRegistry,GoogleContainerRegistry,ArtifactoryGeneric,Npm,GcsStorage,PyPi.preReleaseTagPatternstringstepNamestringversionstring (required)versionRangestringversionTagRegexstring
Response
200 — The result of testing the Channel version rules
Errorsarray of stringSatisfiesPreReleaseTagbooleanSatisfiesVersionRangebooleanSatisfiesVersionTagRegexboolean
Whether the version satisfies the rule’s version-tag regex. Defaults to true (no regex, or a legacy caller, counts as satisfied).
Example Response
{
"Errors": [
"string"
],
"SatisfiesPreReleaseTag": true,
"SatisfiesVersionRange": true,
"SatisfiesVersionTagRegex": true
}Test Channel version rules
POST /api
Path Parameters
spaceIdstring (required)
Query Parameters
deploymentProcessIdstringfeedIdstringfeedTypeenum
Allowed values:None,NuGet,Docker,Maven,OctopusProject,GitHub,Helm,OciRegistry,AwsElasticContainerRegistry,BuiltIn,S3,AzureContainerRegistry,GoogleContainerRegistry,ArtifactoryGeneric,Npm,GcsStorage,PyPi.preReleaseTagPatternstringstepNamestringversionstring (required)versionRangestringversionTagRegexstring
Response
200 — The result of testing the Channel version rules
Errorsarray of stringSatisfiesPreReleaseTagbooleanSatisfiesVersionRangebooleanSatisfiesVersionTagRegexboolean
Whether the version satisfies the rule’s version-tag regex. Defaults to true (no regex, or a legacy caller, counts as satisfied).
Example Response
{
"Errors": [
"string"
],
"SatisfiesPreReleaseTag": true,
"SatisfiesVersionRange": true,
"SatisfiesVersionTagRegex": true
}Test Channel version rules
POST /api
Also reachable at /api.
Path Parameters
spaceIdentifierstring (required)
Identifier (ID or slug) of the space.
Query Parameters
deploymentProcessIdstringfeedIdstringfeedTypeenum
Allowed values:None,NuGet,Docker,Maven,OctopusProject,GitHub,Helm,OciRegistry,AwsElasticContainerRegistry,BuiltIn,S3,AzureContainerRegistry,GoogleContainerRegistry,ArtifactoryGeneric,Npm,GcsStorage,PyPi.preReleaseTagPatternstringstepNamestringversionstring (required)versionRangestringversionTagRegexstring
Response
200 — The result of testing the Channel version rules
Errorsarray of stringSatisfiesPreReleaseTagbooleanSatisfiesVersionRangebooleanSatisfiesVersionTagRegexboolean
Whether the version satisfies the rule’s version-tag regex. Defaults to true (no regex, or a legacy caller, counts as satisfied).
Example Response
{
"Errors": [
"string"
],
"SatisfiesPreReleaseTag": true,
"SatisfiesVersionRange": true,
"SatisfiesVersionTagRegex": true
}Update an existing Channel
PUT /api
Also reachable at /api, /api.
Path Parameters
idstring (required)
Gets or sets a unique identifier for this resource.spaceIdstring (required)
Request Body
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of object
Custom fields (FieldName plus a human-facing Description) that become mandatory when creating a release in this channel. Omit to keep the current definitions; an empty list clears them.DescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestring
Maximum length 1000.GitReferenceRulesarray of string
Git reference patterns (e.g. ‘refs/heads/main’, ‘refs/heads/feature/*’) restricting which branches or tags can create releases in this channel. Only valid for version-controlled (Config-as-Code) projects. Omit to keep the current rules; an empty list clears them.GitResourceRulesarray of object
Rules restricting which Git refs may be used for external Git dependencies referenced by deployment steps. Each rule targets step Git dependencies via GitDependencyActions (DeploymentActionSlug plus GitDependencyName) and lists the allowed Git reference patterns in Rules. Omit to keep the current rules; an empty list clears them.GitDependencyActionsarray of objectIdstringRulesarray of string
Idstring (required)
Gets or sets a unique identifier for this resource.IsDefaultbooleanLifecycleIdstring
The lifecycle for this channel. Must be null for ephemeral environment channels.Namestring (required)
Minimum length 1.ParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel. Required for ephemeral environment channels.ProjectIdstring (required)Rulesarray of object
Version rules restricting which package versions may be used when creating a release in this channel. Each rule targets step packages via ActionPackages (DeploymentAction is the step name or ID, PackageReference the package reference name or ID) and constrains versions with a NuGet-style VersionRange (e.g. ‘[1.0,2.0)’) and/or a Tag regex matched against the package’s pre-release tag (e.g. ‘^$’ for stable versions only). Keep each existing rule’s Id; leave it blank on new rules. Omit to keep the current rules; an empty list clears them.ActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstring (required)TenantTagsarray of string
Canonical tenant tag names in ‘TagSet/Tag’ format restricting which tenants can deploy releases from this channel. Omit to keep the current tags; an empty collection clears them.
Response
200 — Confirms the Channel was modified, containing the updated Channel
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Request
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LifecycleId": "string",
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
]
}Example Response
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Delete a ChannelResource by ID
DELETE /api
Also reachable at /api, /api.
Deletes an existing channel.
Path Parameters
idstring (required)
ID of the ChannelResource to delete.spaceIdstring (required)
The ID of the space containing the resource(s).
Response
200 — Success
Get a list of ChannelResources for the given ProjectResource
GET /api
Also reachable at /api, /api.
Lists all the channels for the given project
Path Parameters
projectIdstring (required)
ID of the Project.spaceIdstring (required)
Query Parameters
partialNamestring
A partial or complete name to limit the set of retrieved Tenants to. This will perform a “contains” style match against the supplied name or name-fragment.skipinteger
Number of items to skip. Defaults to zero. Minimum0.takeinteger
Number of items to take. Defaults to 30. Minimum0.
Response
200 — List of all the channels for the given project
Idstring
Gets or sets a unique identifier for this resource.ItemTypestringItemsarray of objectAutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectIdstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectSlugstringSpaceIdstringTenantTagsarray of stringTypestring
ItemsPerPageintegerLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LastPageNumberintegerLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NumberOfPagesintegerTotalResultsinteger
Example Response
{
"Id": "string",
"ItemType": "string",
"Items": [
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}
],
"ItemsPerPage": 0,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LastPageNumber": 0,
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"NumberOfPages": 0,
"TotalResults": 0
}Create a Channel
POST /api
Also reachable at /api, /api.
Path Parameters
projectIdstring (required)spaceIdstring (required)
Request Body
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of object
Custom fields (FieldName plus a human-facing Description) that become mandatory when creating a release in this channel.DescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestring
Maximum length 1000.GitReferenceRulesarray of string
Git reference patterns (e.g. ‘refs/heads/main’, ‘refs/heads/feature/*’) restricting which branches or tags can create releases in this channel. Only valid for version-controlled (Config-as-Code) projects.GitResourceRulesarray of object
Rules restricting which Git refs may be used for external Git dependencies referenced by deployment steps. Each rule targets step Git dependencies via GitDependencyActions (DeploymentActionSlug plus GitDependencyName) and lists the allowed Git reference patterns in Rules.GitDependencyActionsarray of objectIdstringRulesarray of string
IsDefaultbooleanLifecycleIdstring
The lifecycle for this channel. Must be null for ephemeral environment channels.Namestring (required)
Minimum length 1.ParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel. Required for ephemeral environment channels.ProjectIdstring (required)Rulesarray of object
Version rules restricting which package versions may be used when creating a release in this channel. Each rule targets step packages via ActionPackages (DeploymentAction is the step name or ID, PackageReference the package reference name or ID) and constrains versions with a NuGet-style VersionRange (e.g. ‘[1.0,2.0)’) and/or a Tag regex matched against the package’s pre-release tag (e.g. ‘^$’ for stable versions only). Leave each rule’s Id blank; the server assigns it.ActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstring (required)TenantTagsarray of string
Canonical tenant tag names in ‘TagSet/Tag’ format restricting which tenants can deploy releases from this channel.Typestring
Response
200 — The newly-created Channel
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Request
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"IsDefault": true,
"LifecycleId": "string",
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Example Response
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Determine if a git reference satisfies the rules of a channel
GET /api
Also reachable at /api.
Path Parameters
channelIdstring (required)projectIdstring (required)spaceIdstring (required)
Query Parameters
gitReferencestring (required)
Response
200 — Represents the result of testing Channel git protection rules.
Errorsarray of stringSatisfiesGitReferenceRulesboolean
Example Response
{
"Errors": [
"string"
],
"SatisfiesGitReferenceRules": true
}Determine if a git reference satisfies a channel’s Git resource rules
GET /api
Also reachable at /api.
Path Parameters
channelIdstring (required)projectIdstring (required)spaceIdstring (required)
Query Parameters
deploymentActionSlugstring (required)gitDependencyNamestring (required)gitReferencestring (required)
Response
200 — Represents the result of testing Channel Git resource rules.
Errorsarray of stringSatisfiesGitResourceRulesboolean
Example Response
{
"Errors": [
"string"
],
"SatisfiesGitResourceRules": true
}Get a Channel by ID
GET /api
Also reachable at /api, /api.
Path Parameters
idstring (required)
ID or name of a space channel, or the slug of a templated Channel to load.projectIdstring (required)
ID of the Project.spaceIdstring (required)
Response
200 — The channel matching the supplied Id
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Response
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Update an existing Channel
PUT /api
Also reachable at /api, /api.
Path Parameters
idstring (required)
Gets or sets a unique identifier for this resource.projectIdstring (required)spaceIdstring (required)
Request Body
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of object
Custom fields (FieldName plus a human-facing Description) that become mandatory when creating a release in this channel. Omit to keep the current definitions; an empty list clears them.DescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestring
Maximum length 1000.GitReferenceRulesarray of string
Git reference patterns (e.g. ‘refs/heads/main’, ‘refs/heads/feature/*’) restricting which branches or tags can create releases in this channel. Only valid for version-controlled (Config-as-Code) projects. Omit to keep the current rules; an empty list clears them.GitResourceRulesarray of object
Rules restricting which Git refs may be used for external Git dependencies referenced by deployment steps. Each rule targets step Git dependencies via GitDependencyActions (DeploymentActionSlug plus GitDependencyName) and lists the allowed Git reference patterns in Rules. Omit to keep the current rules; an empty list clears them.GitDependencyActionsarray of objectIdstringRulesarray of string
Idstring (required)
Gets or sets a unique identifier for this resource.IsDefaultbooleanLifecycleIdstring
The lifecycle for this channel. Must be null for ephemeral environment channels.Namestring (required)
Minimum length 1.ParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel. Required for ephemeral environment channels.ProjectIdstring (required)Rulesarray of object
Version rules restricting which package versions may be used when creating a release in this channel. Each rule targets step packages via ActionPackages (DeploymentAction is the step name or ID, PackageReference the package reference name or ID) and constrains versions with a NuGet-style VersionRange (e.g. ‘[1.0,2.0)’) and/or a Tag regex matched against the package’s pre-release tag (e.g. ‘^$’ for stable versions only). Keep each existing rule’s Id; leave it blank on new rules. Omit to keep the current rules; an empty list clears them.ActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstring (required)TenantTagsarray of string
Canonical tenant tag names in ‘TagSet/Tag’ format restricting which tenants can deploy releases from this channel. Omit to keep the current tags; an empty collection clears them.
Response
200 — Confirms the Channel was modified, containing the updated Channel
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Request
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LifecycleId": "string",
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
]
}Example Response
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}Delete a ChannelResource by ID
DELETE /api
Also reachable at /api, /api.
Deletes an existing channel.
Path Parameters
idstring (required)
ID of the ChannelResource to delete.projectIdstring (required)
The ID of the project.spaceIdstring (required)
The ID of the space containing the resource(s).
Response
200 — Success
Delete a ChannelResource by ID
DELETE /api
Also reachable at /api, /api.
Deletes an existing channel.
Path Parameters
idstring (required)
ID of the ChannelResource to delete.projectIdstring (required)
The ID of the project.spaceIdstring (required)
The ID of the space containing the resource(s).
Response
200 — Confirmation that the Channel has been deleted
Example Response
{}Get a list of Channels
GET /api
Also reachable at /api, /api.
Deprecated. This endpoint may be removed in a future release.
Lists all of the Channels in the supplied Octopus Deploy Space, from all projects, sorted by name.
Path Parameters
spaceIdstring (required)
Query Parameters
idsarray of string
Comma separated list of Ids.partialNamestring
A partial or complete name to search on. This will perform a “contains” style match against the supplied name or name-fragment.skipinteger
Number of items to skip. Defaults to zero. Minimum0.takeinteger
Number of items to take. Defaults to 30. Minimum0.
Response
200 — List of all the Channels in the supplied Octopus Deploy Space, from all projects, sorted by name.
Idstring
Gets or sets a unique identifier for this resource.ItemTypestringItemsarray of objectAutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectIdstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectSlugstringSpaceIdstringTenantTagsarray of stringTypestring
ItemsPerPageintegerLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LastPageNumberintegerLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NumberOfPagesintegerTotalResultsinteger
Example Response
{
"Id": "string",
"ItemType": "string",
"Items": [
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}
],
"ItemsPerPage": 0,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LastPageNumber": 0,
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"NumberOfPages": 0,
"TotalResults": 0
}Get a Channel by ID
GET /api
Also reachable at /api, /api.
Deprecated. This endpoint may be removed in a future release.
Path Parameters
idstring (required)
ID of the Channel to load.spaceIdstring (required)
Response
200 — Success
AutomaticEphemeralEnvironmentDeploymentsbooleanCustomFieldDefinitionsarray of objectDescriptionstringFieldNamestring
DescriptionstringEphemeralEnvironmentNameTemplatestringGitReferenceRulesarray of stringGitResourceRulesarray of objectGitDependencyActionsarray of objectIdstringRulesarray of string
Idstring
Gets or sets a unique identifier for this resource.IsDefaultbooleanLastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.LifecycleIdstringLinksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.NamestringParentEnvironmentIdstring
The parent environment for all ephemeral environments created in this channel.ProjectIdstringRulesarray of objectActionPackagesarray of objectIdstring
Gets or sets a unique identifier for this resource.LastModifiedBystring
Gets or sets the username of the user who last modified this resource.LastModifiedOnstring
Gets or sets the date/time that this resource was last modified. Formatdate-time.Linksobject
Gets or sets a dictionary of links to other related resources. These links can be used to navigate the resources on the server.TagstringVersionRangestringVersionTagRegexstringVersioningStrategystring
SlugstringSpaceIdstringTenantTagsarray of stringTypestring
Example Response
{
"AutomaticEphemeralEnvironmentDeployments": true,
"CustomFieldDefinitions": [
{
"Description": "string",
"FieldName": "string"
}
],
"Description": "string",
"EphemeralEnvironmentNameTemplate": "string",
"GitReferenceRules": [
"string"
],
"GitResourceRules": [
{
"GitDependencyActions": [
{}
],
"Id": "string",
"Rules": [
"string"
]
}
],
"Id": "string",
"IsDefault": true,
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"LifecycleId": "string",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Name": "string",
"ParentEnvironmentId": "string",
"ProjectId": "string",
"Rules": [
{
"ActionPackages": [
{}
],
"Id": "string",
"LastModifiedBy": "string",
"LastModifiedOn": "2020-01-01T00:00:00.000Z",
"Links": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"Tag": "string",
"VersionRange": "string",
"VersionTagRegex": "string",
"VersioningStrategy": "string"
}
],
"Slug": "string",
"SpaceId": "string",
"TenantTags": [
"string"
],
"Type": "string"
}