๐Ÿ”‘API keys

This page provides a description of the available API routes for managing API keys.

API key used in HMAC authenticaton scheme and is represented by ApiKey class.

To enable API key usage, the API key must be activated by setting the isActive field to true. Once the API key is authorized on the server, the request will be executed within the context of the user specified by their userName, operating on the device specified by the deviceName.

API methods

Get API keys

GET http://{server-address}/apikeys

Returns all API keys that matches query parameters. Result is of type QueryResult<ApiKey>.

Query Parameters

NameTypeDescription

id

string

Supports NData syntax.

isActive

bool

Supports NData syntax.

$skip

int

Pagination property. Describing number of records to skip from beginning of result collection.

$take

int

Pagination property. Maximum count of items to be returned.

$sort

string[]

Comma separated list of property names. Please see NData syntax.

$count

bool

If set to true, response will not contain items collection. Use to get resource count, not the resources themselves.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

{
    "items": [
        {
            "id": "64b00bc5ba312b6744126a87",
            "clientId": "60f33924e92a4262763a08230c6c385f33c497f3",
            "clientSecret": "df80d7cae59b9a9c3ee76a3750f80ef9d0c9398083d0dc591952cd675926944c",
            "isActive": true,
            "createdAt": "2023-07-13T14:35:49.506Z",
            "name": "My API key",
            "description": "This is an API key description",
            "userName": "john.doe",
            "deviceName": "BackOffice",
            "permissions": [],
            "_v": 1
        }
    ],
    "count": 1,
    "totalCount": 1
}

Get API key

GET http://{server-address}/apikeys/{id}

Result is of type API key.

Path Parameters

NameTypeDescription

id*

string

Unique identifier.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

{
    "id": "64b00bc5ba312b6744126a87",
    "clientId": "60f33924e92a4262763a08230c6c385f33c497f3",
    "clientSecret": "df80d7cae59b9a9c3ee76a3750f80ef9d0c9398083d0dc591952cd675926944c",
    "isActive": true,
    "createdAt": "2023-07-13T14:35:49.506Z",
    "name": "My API key",
    "description": "This is an API key description",
    "userName": "john.doe",
    "deviceName": "BackOffice",
    "permissions":
    [],
    "_v": 1
}

Create API key

POST http://{server-address}/apikeys

Creates new API key. Result is of type API key.

Required rights

Authorized user must have ApiKeyCreate right assigned.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

Request Body

NameTypeDescription

(body)*

ApiKey

Model to create.

{
    "id": "64b00bc5ba312b6744126a87",
    "clientId": "60f33924e92a4262763a08230c6c385f33c497f3",
    "clientSecret": "df80d7cae59b9a9c3ee76a3750f80ef9d0c9398083d0dc591952cd675926944c",
    "isActive": true,
    "createdAt": "2023-07-13T14:35:49.506Z",
    "name": "My API key",
    "description": "This is an API key description",
    "userName": "john.doe",
    "deviceName": "BackOffice",
    "permissions":
    [],
    "_v": 1
}

Create or update API key

PUT http://{server-address}/apikeys/{id}

Creates new or updates existing API key. Result is of type API key.

Required rights

Authorized user must have assigned ApiKeyCreate or ApiKeyUpdate right.

Path Parameters

NameTypeDescription

id*

string

Unique identifier.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

Request Body

NameTypeDescription

(body)*

ApiKey

Model to create or update.

{
    "id": "64b00bc5ba312b6744126a87",
    "clientId": "60f33924e92a4262763a08230c6c385f33c497f3",
    "clientSecret": "df80d7cae59b9a9c3ee76a3750f80ef9d0c9398083d0dc591952cd675926944c",
    "isActive": true,
    "createdAt": "2023-07-13T14:35:49.506Z",
    "name": "My API key",
    "description": "This is an API key description",
    "userName": "john.doe",
    "deviceName": "BackOffice",
    "permissions":
    [],
    "_v": 2
}

Delete API key

DELETE http://{server-address}/apikeys/{id}

Required rights

Authorized user must have ApiKeyDelete right assigned.

Path Parameters

NameTypeDescription

id*

string

Unique identifier.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

{
    "id": "64b00bc5ba312b6744126a87",
    "clientId": "60f33924e92a4262763a08230c6c385f33c497f3",
    "clientSecret": "df80d7cae59b9a9c3ee76a3750f80ef9d0c9398083d0dc591952cd675926944c",
    "isActive": true,
    "createdAt": "2023-07-13T14:35:49.506Z",
    "name": "My API key",
    "description": "This is an API key description",
    "userName": "john.doe",
    "deviceName": "BackOffice",
    "permissions":
    [],
    "_v": 1
}

Last updated