Skip to main content
POST
Create or update a role

Restrictions

Usage

  • Omit role_id (or set to 0) to create; pass an existing ID to update.
  • role_name must be 1–39 characters and unique within the account.
  • permission_ids sets the full permission set for the role, replacing any previous assignment.
  • Every call is recorded in the account audit log. Don’t put secrets in request fields.

Authorizations

app_key
string
query
required

App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.

Body

application/json

Parameters for creating or updating a custom role.

role_name
string
required

Role display name. 1–39 characters.

Required string length: 1 - 39
role_id
integer<uint64>

Role ID. Omit or set to 0 to create.

description
string

Role description.

Maximum string length: 499
permission_ids
integer<uint64>[]

Permission IDs to grant. Replaces the existing set.

Response

Success

Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.

request_id
string
required

Unique ID for this request. Mirrored in the Flashcat-Request-Id response header. Include it when reporting issues.

Example:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
required

Role create/update result.