Skip to main content
POST
/
companies
/
{company_id}
/
roles
curl -X POST https://api.companyflow.com/companies/{company_id}/roles \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Senior Developer",
    "description": "Senior-level software development position",
    "permissions_cache": ["employees:read", "employees:write"]
  }'
{
  "success": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "company_id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "Senior Developer",
    "description": "Senior-level software development position",
    "is_system_role": false,
    "permissions_cache": ["employees:read", "employees:write"],
    "created_at": "2024-01-15T10:30:00Z",
    "updated_at": "2024-01-15T10:30:00Z"
  }
}
Create a new role within a company. Requires Super Admin or HR Manager permissions.

Path Parameters

company_id
string
required
The unique identifier of the company

Request Body

name
string
required
Name of the role. Must be between 2 and 50 characters.Example: "Senior Developer"
description
string
Optional description of the role.Example: "Senior-level software development position"
permissions_cache
string[]
Optional array of cached permission strings.Example: ["employees:read", "employees:write"]

Response

success
boolean
Indicates if the request was successful
data
object
The created role object
curl -X POST https://api.companyflow.com/companies/{company_id}/roles \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Senior Developer",
    "description": "Senior-level software development position",
    "permissions_cache": ["employees:read", "employees:write"]
  }'
{
  "success": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "company_id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "Senior Developer",
    "description": "Senior-level software development position",
    "is_system_role": false,
    "permissions_cache": ["employees:read", "employees:write"],
    "created_at": "2024-01-15T10:30:00Z",
    "updated_at": "2024-01-15T10:30:00Z"
  }
}

Build docs developers (and LLMs) love