Create a custom role
POST
/roles
const url = 'https://example.com/api/v1/roles';const options = { method: 'POST', headers: { cookie: '__Host-shardkeep_session=<__Host-shardkeep_session>', 'Content-Type': 'application/json' }, body: '{"name":"example","description":"example","permissions":["servers.read"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/v1/roles \ --header 'Content-Type: application/json' \ --cookie __Host-shardkeep_session=<__Host-shardkeep_session> \ --data '{ "name": "example", "description": "example", "permissions": [ "servers.read" ] }'Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
name
required
string
description
string
permissions
required
Array<string>
Responses
Section titled “Responses”Role created.
Media typeapplication/json
object
id
required
string format: uuid
name
required
string
description
required
string
builtin
required
Built-in roles can be assigned but not changed.
boolean
permissions
required
Array<string>
createdAt
required
string format: date-time
Example
{ "permissions": [ "servers.read" ]}The request is invalid.
Media typeapplication/problem+json
An RFC 9457 problem with a machine-readable code.
object
type
required
string
title
required
string
status
required
integer
detail
string
code
required
Stable machine-readable error code.
string
Example
{ "type": "about:blank", "title": "Conflict", "status": 409, "code": "conflict"}Not signed in, or the credentials are invalid.
Media typeapplication/problem+json
An RFC 9457 problem with a machine-readable code.
object
type
required
string
title
required
string
status
required
integer
detail
string
code
required
Stable machine-readable error code.
string
Example
{ "type": "about:blank", "title": "Conflict", "status": 409, "code": "conflict"}Signed in, but not allowed.
Media typeapplication/problem+json
An RFC 9457 problem with a machine-readable code.
object
type
required
string
title
required
string
status
required
integer
detail
string
code
required
Stable machine-readable error code.
string
Example
{ "type": "about:blank", "title": "Conflict", "status": 409, "code": "conflict"}Clashes with existing data or state.
Media typeapplication/problem+json
An RFC 9457 problem with a machine-readable code.
object
type
required
string
title
required
string
status
required
integer
detail
string
code
required
Stable machine-readable error code.
string
Example
{ "type": "about:blank", "title": "Conflict", "status": 409, "code": "conflict"}Shardkeep is free software under the AGPL-3.0. Minecraft is a trademark of Mojang AB; Shardkeep is not affiliated with or endorsed by Mojang or Microsoft.