---
title: "Create an organization custom role"
method: POST
path: "/organization/{organizationId}/customRole"
tags: ["Organization Custom Role"]
---

# Create an organization custom role

`POST /organization/{organizationId}/customRole`

## Request

- Base URL: `https://api.qovery.com`
- URL: `https://api.qovery.com/organization/{organizationId}/customRole`
- Auth: one of:
  - API key in header `Authorization`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/qovery/apis/qovery-api/docs/organization/:organizationId/customRole/post.ts> (a function with typed inputs; its response is checked against the schema)

Create an organization custom role

## Path parameters

- `organizationId` string, uuid, required

## Request body

- OrganizationCustomRoleCreateRequest
  - `name` string, required
  - `description` string

## Response `201`

Organization custom role created

- OrganizationCustomRole
  - `id` string
  - `name` string
  - `description` string
  - `cluster_permissions` object[]
    - `cluster_id` string, uuid
    - `cluster_name` string
    - `permission` 'VIEWER' | 'ENV_CREATOR' | 'ADMIN': Indicates the permission for a target cluster, from the lowest to the highest: - `VIEWER` user has only read access on target cluster - `ENV_CREATOR` user can deploy on the cluster - `ADMIN` user can modify the cluster settings
  - `project_permissions` object[]
    - `project_id` string, uuid
    - `project_name` string
    - `is_admin` boolean: If `is_admin` is `true`, the user is: - automatically `MANAGER` for each environment type - allowed to manage project deployment rules - able to delete the project Note that `permissions` can then be ignored for this project
    - `permissions` object[]
      - `environment_type` 'DEVELOPMENT' | 'PREVIEW' | 'PRODUCTION' | 'STAGING'
      - `permission` 'NO_ACCESS' | 'VIEWER' | 'DEPLOYER' | 'MANAGER': Indicates the permission for a target project and a given environment type, from the lowest to the highest: - `NO_ACCESS` user has no access - `VIEWER` user can access the environment (and applications / containers / databases / variables) - `DEPLOYER` user can deploy the environment (dependent on the required cluster permission `ENV_CREATOR`) - `MANAGER` user can create an environment (and applications / containers / databases / variables)

## Other responses

- `400`: Bad request
- `401`: Access token is missing or invalid
- `403`: Access forbidden

---

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