curl --request PATCH \
--url https://api.cal.com/v2/organizations/{orgId}/teams/{teamId}/roles/{roleId} \
--header 'Content-Type: application/json' \
--data '
{
"color": "<string>",
"description": "<string>",
"permissions": [
"eventType.read",
"eventType.create",
"booking.read"
],
"name": "<string>"
}
'{
"status": "success",
"data": {
"id": "<string>",
"name": "<string>",
"type": "SYSTEM",
"permissions": [
"booking.read",
"eventType.create"
],
"createdAt": "<string>",
"updatedAt": "<string>",
"color": "<string>",
"description": "<string>",
"teamId": 123
}
}curl --request PATCH \
--url https://api.cal.com/v2/organizations/{orgId}/teams/{teamId}/roles/{roleId} \
--header 'Content-Type: application/json' \
--data '
{
"color": "<string>",
"description": "<string>",
"permissions": [
"eventType.read",
"eventType.create",
"booking.read"
],
"name": "<string>"
}
'{
"status": "success",
"data": {
"id": "<string>",
"name": "<string>",
"type": "SYSTEM",
"permissions": [
"booking.read",
"eventType.create"
],
"createdAt": "<string>",
"updatedAt": "<string>",
"color": "<string>",
"description": "<string>",
"teamId": 123
}
}For non-platform customers - value must be Bearer <token> where <token> is api key prefixed with cal_
For platform customers - OAuth client secret key
For platform customers - OAuth client ID
Color for the role (hex code)
Description of the role
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.
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, insights.read, workflow.create, workflow.read, workflow.update, workflow.delete, routingForm.create, routingForm.read, routingForm.update, routingForm.delete, webhook.create, webhook.read, webhook.update, webhook.delete [
"eventType.read",
"eventType.create",
"booking.read"
]Name of the role
1Was this page helpful?