---
title: "Create a new policy and attach sockets to them"
method: POST
path: "/policies"
---

# Create a new policy and attach sockets to them

`POST /policies`

## Request

- Base URL: `https://api.border0.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.border0.com/policies`
- Auth: API key in header `Authorization`

## Request body

- V1CreatePolicyRequest
  - `description` string
  - `expiry` integer: Unix seconds
  - `name` string, required
  - `org_wide` boolean
  - `policy_data` object, required
  - `socket_ids` string[]
  - `tag_rules` object[]
  - `version` string

## Response `200`

OK

- SerializerPolicy[]
  - `created_at` string
  - `deleted` boolean
  - `description` string
  - `expires` boolean
  - `expires_at` string
  - `id` string
  - `messages` SerializerMessage[]
    - `level` string
    - `text` string
    - `type` string
  - `name` string
  - `org_id` string
  - `org_wide` boolean
  - `policy_data` DatatypesJSONMap
  - `read_only` boolean
  - `socket_ids` string[]
  - `tag_rules` object[]
  - `version` string

## Other responses

- `204`: No Content
- `401`: Unauthorized
- `404`: Not Found
- `500`: Internal Server Error

---

[API](https://skmtc.dev/border0/apis/border0-api.md) - [All operations](https://skmtc.dev/border0/apis/border0-api/llms.txt) - [OpenAPI document](https://skmtc.dev/border0/apis/border0-api/revisions/f0ccef7418d8?raw)
