nexlink/docs/api/role.md
2025-12-29 02:03:47 +01:00

1.8 KiB

GET /api/v1/role/{id}

Requires an authorization header

Returns a role with id = {id}

Response:

{
    "id": "string",
    "name": "string",
    "communityId": "string",
    "creationDate": "number"
}

GET /api/v1/role/{id}/permissions

Requires an authorization header

Returns a role with id = {id} and permissions

Response:

{
    "id": "string",
    "name": "string",
    "communityId": "string",
    "permissions": "string[]".
    "creationDate": "number"
}

POST /api/v1/role

Requires an authorization header

Request:

{
    "name": "string",
    "communityId": "string",
    "permissions": "string[]"
}

Creates a new role and returns it

Response:

{
    "id": "string",
    "name": "string",
    "communityId": "string"
}

PATCH /api/v1/role/{id}

Requires an authorization header

Request:

{
    "name": "string?",
    "permissions": "string[]?"
}

Updates a role with id = {id}

Response:

{
    "id": "string",
    "name": "string",
    "communityId": "string",
    "permissions": "string[]"
}

POST /api/v1/role/{id}/assign

Requires an authorization header

Request:

{
    "userId": "string"
}

Assigns a role to a user

Response:

{
    "id": "string",
    "name": "string",
    "communityId": "string",
    "userId": "string"
}

POST /api/v1/role/{id}/unassign

Requires an authorization header

Request:

{
    "userId": "string"
}

Unassigns a role from a user

Response:

{
    "id": "string",
    "name": "string",
    "communityId": "string",
    "userId": "string"
}

DELETE /api/v1/role/{id}

Requires an authorization header

Removes a role with id = {id}

Response:

{
    "id": "string",
    "communityId": "string"
}