---
title: "Create organization role"
method: POST
path: "/organization/roles"
tags: ["Roles"]
---

# Create organization role

`POST /organization/roles`

Creates a custom role for the organization.

## Request body

- PublicCreateOrganizationRoleBody — Request payload for creating a custom role.
  - `role_name` string, required — Unique name for the role.
  - `permissions` string[], required — Permissions to grant to the role.
  - `description` string, nullable — Optional description of the role.

## Response `200`

Role created successfully.

- Role — Details about a role that can be assigned through the public Roles API.
  - `object` 'role', required — Always `role`.
  - `id` string, required — Identifier for the role.
  - `name` string, required — Unique name for the role.
  - `description` string, nullable, required — Optional description of the role.
  - `permissions` string[], required — Permissions granted by the role.
  - `resource_type` string, required — Resource type the role is bound to (for example `api.organization` or `api.project`).
  - `predefined_role` boolean, required — Whether the role is predefined and managed by OpenAI.

---

[API](https://skmtc.net/openai/apis/openai-api.md) · [All operations](https://skmtc.net/openai/apis/openai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openai/openai-api/versions/dcd35773a322/schema)
