Skip to content

Create a policy branch

Request

Early AccessIdentity Engine
OAuth 2.0 scope:
  • okta.policies.manage

Creates a new branch for a policy. It's created with a DRAFT status.

Each policy can only have one draft or staged branch at a time. This request fails with a 409 conflict error if a DRAFT or STAGED branch already exists for the policy.

Only applicable to ACCESS_POLICY type policies.

Path
policyIdstringrequired

id of the ACCESS_POLICY

Example:rst1d7xus97faIAgmti0
Bodyapplication/jsonrequired
descriptionstring, <= 1024 characters

Description of the policy branch

Example:"Testing stricter authentication requirements for Q2"
namestring, <= 255 charactersrequired

Name of the policy branch

Example:"Q2 Security Updates"
POST
/api/v1/policies/{policyId}/branches
curl -i -X POST \
  https://subdomain.okta.com/api/v1/policies/rst1d7xus97faIAgmti0/branches \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Q3 Authentication Improvements",
    "description": "Testing new authentication flow with enhanced verification"
  }'

Responses

Created

Bodyapplication/json
branchInformationobject(PolicyBranchInformation)

Information about the branch of the policy object, including its status

conditionsstring or null

Policy conditions aren't supported for ACCESS_POLICY. Conditions are applied at the rule level.

Default:null
createdstring, (date-time)read-only

Timestamp when the policy branch was created

descriptionstring

Description of the policy

idstringread-only

Identifier of the policy

lastUpdatedstring, (date-time)read-only

Timestamp when the policy branch was last modified

namestringrequired

Name of the policy

priorityinteger

Specifies the order in which this policy is evaluated in relation to the other policies

statusstring(LifecycleStatus)

Whether or not the policy is active. Use the activate query parameter to set the status of a policy.

Enum:"ACTIVE""INACTIVE"
systemboolean

Specifies whether Okta created the policy

Default:false
typestringrequired

Policy type. Branching is only supported for ACCESS_POLICY policies.

Value:"ACCESS_POLICY"
_embeddedobjectread-only
Response
{ "id": "rst4n0yza36jdLEp1wl2", "status": "ACTIVE", "name": "Q3 Authentication Improvements", "description": "Testing new authentication flow with enhanced verification", "priority": 1, "system": false, "type": "ACCESS_POLICY", "conditions": null, "created": "2026-05-06T12:30:00.000Z", "lastUpdated": "2026-05-06T12:30:00.000Z", "branchInformation": { "id": "rsb4n0yza36jdLEp1wl", "status": "DRAFT" }, "_links": { "self": {}, "rules": {}, "stage": {}, "promote": {} } }