Skip to main content
POST
Create a new organization team role

Headers

Authorization
string

For non-platform customers - value must be Bearer <token> where <token> is api key prefixed with cal_

x-cal-secret-key
string

For platform customers - OAuth client secret key

x-cal-client-id
string

For platform customers - OAuth client ID

Path Parameters

orgId
number
required
teamId
number
required

Body

application/json
name
string
required

Name of the role

Minimum string length: 1
color
string

Color for the role (hex code)

description
string

Description of the role

permissions
enum<string>[]

Permissions for this role (format: resource.action). On update, this field replaces the entire permission set for the role (full replace). Use granular permission endpoints for one-by-one changes.

Available options:
role.create,
role.read,
role.update,
role.delete,
eventType.create,
eventType.read,
eventType.update,
eventType.delete,
team.read,
team.update,
team.delete,
team.invite,
team.remove,
team.listMembers,
team.listMembersPrivate,
team.changeMemberRole,
team.impersonate,
booking.read,
booking.readTeamBookings,
booking.readRecordings,
booking.update,
booking.updateTeamBookings,
booking.readTeamAuditLogs,
insights.read,
workflow.create,
workflow.read,
workflow.update,
workflow.delete,
routingForm.create,
routingForm.read,
routingForm.update,
routingForm.delete,
routingForm.readTeamAuditLogs,
routingForm.readResponsePii,
webhook.create,
webhook.read,
webhook.update,
webhook.delete,
featureOptIn.read,
featureOptIn.update
Example:

Response

201 - application/json
status
enum<string>
required
Available options:
success,
error
Example:

"success"

data
object
required