Skip to main content
PATCH
/
client-roles
/
{id}
Update a client role
curl --request PATCH \
  --url https://www.ruddr.io/api/workspace/client-roles/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "isBillable": true,
  "rate": 123,
  "currency": "<string>",
  "disciplineId": "<string>",
  "practiceId": "<string>",
  "locationId": "<string>"
}
'
{
  "id": "d2f5a7b1-9c34-4e80-b6d1-3a8e0c5f72b4",
  "name": "Principal Engineer",
  "isBillable": true,
  "rate": 250,
  "currency": "USD",
  "createdAt": "2025-08-22T09:41:17.563Z",
  "client": {
    "id": "d4e1b7a3-8c52-4f90-b6d3-1a9e0c7f45b8",
    "name": "Acme Corporation"
  },
  "discipline": {
    "id": "5b8e2a1c-3d47-4f09-a6e3-8c0d2f1b47a9",
    "name": "Software Engineering"
  },
  "practice": {
    "id": "c9a3d5b7-1e48-4f63-b7d0-a2e1c8f92d56",
    "name": "Web Development"
  },
  "location": {
    "id": "e2b4c6a8-7f19-4d30-a5e1-9c3b0d8f62a7",
    "name": "New York"
  },
  "workspaceRole": null
}
A role defining billing terms for work performed for a specific client. Client roles can be created independently or linked to a workspace role, which overrides the role’s name, billing, and classification fields.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

The client role uuid.

Body

application/json
name
string

The name of the client role. Maximum 255 characters.

isBillable
boolean

Whether the role is billable.

rate
number | null

The billing rate for the role.

currency
string | null

The three-letter ISO currency code for the role. Maximum 3 characters.

disciplineId
string | null

The uuid of the discipline for this role.

practiceId
string | null

The uuid of the practice for this role.

locationId
string | null

The uuid of the location for this role.

Response

200

id
string

The unique identifier for the object.

name
string

The name of the client role. Reflects the workspace role's name when linked.

isBillable
boolean

Whether the role is billable. Reflects the workspace role's value when linked.

rate
number | null

The billing rate for the role. null when the role is non-billable. Reflects the workspace role's value when linked.

currency
string | null

The three-letter ISO currency code for the role. null when the role is non-billable. Reflects the workspace role's value when linked.

createdAt
string<date-time>

The timestamp when the object was created.

client
object

The client this role belongs to.

discipline
object

The discipline associated with this role. Reflects the workspace role's value when linked.

practice
object

The practice associated with this role. Reflects the workspace role's value when linked.

location
object

The location associated with this role. Reflects the workspace role's value when linked.

workspaceRole
object

The workspace role this client role is linked to. When linked, the client role's name, billing fields, and classification fields are overridden with the workspace role's current values. null for standalone client roles.