---
title: "Creates a new approval rule in the specified Octopus Deploy space."
method: POST
path: "/{spaceId}/approvalrules"
tags: ["ApprovalRules"]
---

# Creates a new approval rule in the specified Octopus Deploy space.

`POST /{spaceId}/approvalrules`

## Path parameters

- `spaceId` string, required

## Request body

- CreateApprovalRuleCommand
  - `AllowSelfApproval` boolean — Whether deployment creators are allowed to approve their own deployments
  - `ApprovingTeamIds` string[] — The teams who are authorized to approve
  - `ApprovingUserIds` string[] — The users who are authorized to approve
  - `Description` string
  - `IdScopes` ApprovalRuleIdScopeResource[]
    - `EnvironmentIds` string[], required — IDs of Environments to include in the scope
    - `Id` string
    - `ProjectId` string, required — ID of Project to include in the scope
  - `IsDisabled` boolean — Whether this approval rule is disabled
  - `MinimumApproversRequired` integer — Set a number of minimum approvers required to authorize the deployment
  - `Name` string, required
  - `ScopingStrategy` string
  - `SpaceId` string, required
  - `TagScopes` ApprovalRuleTagScopeResource[]
    - `EnvironmentTags` string[], required — Canonical IDs or Names of Environment tags to include in the scope
    - `Id` string
    - `ProjectTags` string[], required — Canonical IDs or Names of Project tags to include in the scope
  - `TenantApprovalStrategy` string

## Response `201`

Created

- ApprovalRuleResource
  - `AllowSelfApproval` boolean
  - `ApprovingTeamIds` string[]
  - `ApprovingUserIds` string[]
  - `Description` string
  - `Id` string, required
  - `IdScopes` ApprovalRuleIdScopeResource[]
    - `EnvironmentIds` string[], required — IDs of Environments to include in the scope
    - `Id` string
    - `ProjectId` string, required — ID of Project to include in the scope
  - `IsDisabled` boolean
  - `MinimumApproversRequired` integer
  - `Name` string, required
  - `ScopingStrategy` string
  - `SpaceId` string, required
  - `TagScopes` ApprovalRuleTagScopeResource[]
    - `EnvironmentTags` string[], required — Canonical IDs or Names of Environment tags to include in the scope
    - `Id` string
    - `ProjectTags` string[], required — Canonical IDs or Names of Project tags to include in the scope
  - `TenantApprovalStrategy` string

## 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.

## Changes

- **2026-08-27** `63b4166a0686` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/octopus/apis/octopus-server-api/changes/:spaceId/approvalrules/post.md)

---

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