# Policies

> SDK methods for the Policies module, accessed via `soat.policies`. See the [Policies module docs](/docs/modules/policies) for permissions and data model, and each method's REST page for the full request/response schema.

# Policies

SDK methods for the Policies module, accessed via `soat.policies`. See the [Policies module docs](/docs/modules/policies) for permissions and data model, and each method's REST page for the full request/response schema.

### `soat.policies.listPolicies()`

List all policies

- Method: `GET`
- Path: `/api/v1/policies`

```ts
await soat.policies.listPolicies({
  query: { /* + optional */ },
});
```

→ [Request & response schema](/docs/api/policies/list-policies)

### `soat.policies.createPolicy()`

Create a policy

- Method: `POST`
- Path: `/api/v1/policies`

```ts
await soat.policies.createPolicy({
  body: { document, /* + optional */ },
});
```

→ [Request & response schema](/docs/api/policies/create-policy)

### `soat.policies.getPolicy()`

Get a policy

- Method: `GET`
- Path: `/api/v1/policies/{policy_id}`

```ts
await soat.policies.getPolicy({
  path: { policy_id },
});
```

→ [Request & response schema](/docs/api/policies/get-policy)

### `soat.policies.updatePolicy()`

Update a policy

- Method: `PUT`
- Path: `/api/v1/policies/{policy_id}`

```ts
await soat.policies.updatePolicy({
  path: { policy_id },
  body: { document, /* + optional */ },
});
```

→ [Request & response schema](/docs/api/policies/update-policy)

### `soat.policies.deletePolicy()`

Delete a policy

- Method: `DELETE`
- Path: `/api/v1/policies/{policy_id}`

```ts
await soat.policies.deletePolicy({
  path: { policy_id },
});
```

→ [Request & response schema](/docs/api/policies/delete-policy)
