---
title: "Adds a policy"
method: POST
path: "/policies"
tags: ["policies"]
---

# Adds a policy

`POST /policies`

Adds a policy corresponding to the provided body in this request. A policy binds a role to specific members (groups or users) conditional on an attribute

## Request body

- NewPolicy
  - `entities` EntityId[], required — A list of entities for this policy
  - `role` string, required — Role for this policy
  - `condition` Condition
    - `attribute` string — Attribute of the request
    - `operator` 'StringEquals' | 'StartsWith' — operator of the condition
    - `values` Value[] — List of truth condition values

## Response `201`

Successfully added a policy

- Policy
  - `id` string — Unique id for this policy
  - `entities` EntityId[] — A list of entities for this policy
  - `role` string — Role for this policy
  - `condition` Condition
    - `attribute` string — Attribute of the request
    - `operator` 'StringEquals' | 'StartsWith' — operator of the condition
    - `values` Value[] — List of truth condition values

## Other responses

- `400` — Bad request. Invalid policy supplied
- `403` — Unauthorised request
- `500` — Failed to process the request due to an internal error

---

[API](https://skmtc.net/office-of-national-statistics/apis/permissions-api.md) · [All operations](https://skmtc.net/office-of-national-statistics/apis/permissions-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/office-of-national-statistics/permissions-api/revisions/c0050251683f/schema)
