> For the complete documentation index, see [llms.txt](https://docs.codemash.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.codemash.io/cloud/membership/policies.md).

# Policies

Reusable permission sets attached to roles.

A **policy** is a reusable set of permissions — allow/deny statements over modules and actions. Policies are attached to roles; a user's effective permissions are the union of the policies on all their roles.

<figure><img src="https://760328771-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LwSkuCpTNI_AerL8J2a%2Fuploads%2Fgit-blob-e92e8ad12a719f654e72143ae4bfbbaa761f1331%2Fmembership-policies.jpg?alt=media" alt=""><figcaption><p>Membership → Policies.</p></figcaption></figure>

## What you can do here

The screen has two tabs: **Custom Policies** (yours — create, edit, delete) and **System Policies** (built-in, read-only). **Add New** opens the [create screen](/cloud/membership/policies/new.md), where a policy is written as a JSON **policy document** — name, description, and permission statements in one place. The same policy can be attached to many roles, so a change in one place updates every role that uses it.

## Use it from code

[Membership → Policies](/sdks-and-cli/membership/policies.md).

## API reference

Endpoints: [Membership → Policies](/api-reference/membership/policies.md).
