nexlink/docs/api/user.md

1.9 KiB

GET /api/v1/user/{id}

Requires an authorization header

Returns a user with id = {id}

Response:

{
    "id": "string",
    "username": "string",
    "email": "string",
    "description": "string",
    "admin": "boolean",
    "registerDate": "number",
    "lastLogin": "number"
}

GET /api/v1/user/logged

Requires an authorization header

Returns id of the currently logged user based on the auth token

Response:

{
    "id": "string"
}

POST /api/v1/user

Requires an authorization header

Request:

{
    "username": "string",
    "password": "string",
    "email": "string?",
    "description": "string?",
    "admin": "boolean?"
}

Creates a new user and returns it

Response:

{
    "id": "string",
    "username": "string",
    "email": "string",
    "description": "string",
    "admin": "boolean"
}

PATCH /api/v1/user/{id}

Requires an authorization header

Request:

{
    "email": "string?",
    "description": "string?"
}

Updates a user with id = {id}

Response:

{
    "id": "string",
    "email": "string",
    "description": "string"
}

DELETE /api/v1/user/{id}

Requires an authorization header

Removes a user with id = {id}

Response:

{
    "id": "string"
}

GET /api/v1/user/{id}/sessions

Requires an authorization header

Returns all sessions for a user with id = {id}

Response:

{
    "id": "string",
    "sessions": [
        {
            "id": "string",
            "userId": "string"
        }
    ]
}

GET /api/v1/user/{id}/communities

Requires an authorization header

Returns all communities for a user with id = {id}

Response:

{
    "id": "string",
    "communities": [
        {
            "id": "string",
            "name": "string",
            "description": "string"
        }
    ]
}