User Roles

Role assignments

Write permission: server admin (canAdmin)

Delete

DELETE
/api/v1/userRoles/:id

Remove a role from a user.

Parameters

FieldTypeRequiredDescription
serverIdstringYes
userIdstringYes
roleIdstringYes

Example

Terminal

curl -X DELETE "https://start.chat/api/v1/userRoles/{id}" \
-H "Authorization: Bearer sk_live_xxx"
import { setup, mutate } from '@start-chat/sdk'
await setup({ apiKey: 'sk_live_xxx' })
const result = await mutate.userRole.delete({
serverId: 'srv_abc123',
userId: 'usr_abc123',
roleId: 'role_abc123',
})

Response

{
"ok": true,
"data": {
"serverId": "srv_abc123",
"userId": "usr_abc123",
"roleId": "role_abc123",
"granterId": "value",
"createdAt": 1709251200000
}
}

Insert

POST
/api/v1/userRoles

Assign a role to a user.

Parameters

FieldTypeRequiredDescription
serverIdstringYes
roleIdstringYes
canAdminbooleanNo
canEditServerbooleanNo
canEditChannelbooleanNo
canEditAppbooleanNo
canModeratebooleanNo
canViewDatabooleanNo
canEditDatabooleanNo

Example

Terminal

curl -X POST "https://start.chat/api/v1/userRoles" \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"serverId": "srv_abc123",
"roleId": "role_abc123"
}'
import { setup, mutate } from '@start-chat/sdk'
await setup({ apiKey: 'sk_live_xxx' })
const result = await mutate.userRole.insert({
serverId: 'srv_abc123',
roleId: 'role_abc123',
})

Response

{
"ok": true,
"data": {
"serverId": "srv_abc123",
"userId": "usr_abc123",
"roleId": "role_abc123",
"granterId": "value",
"createdAt": 1709251200000
}
}