Skip to Content

API Keys

Endpoints for managing API keys in the system.

Get API Keys List

Get the complete list of API keys.

Request

GET /api/api-keys

Headers

NameTypeDescription
X-API-KeystringRequired. API key

Response

{ "api_keys": [ { "id": 1, "name": "Admin API Key", "key": "api_key_************", "active": true, "created_at": "2023-01-01T00:00:00Z" }, { "id": 2, "name": "User API Key", "key": "api_key_************", "active": true, "created_at": "2023-01-02T00:00:00Z" } ] }

Response Fields

FieldTypeDescription
api_keysarrayArray of API keys
idintegerAPI key ID
namestringAPI key name
keystringPartially hidden API key
activebooleanActive status
created_atstringCreation date

Response Codes

CodeDescription
200Successful request
401Invalid or missing API key
403Insufficient permissions to perform request

Get API Key Data

Get detailed information about a specific API key.

Request

GET /api/api-keys/{id}

Path Parameters

NameTypeDescription
idintegerAPI key ID

Headers

NameTypeDescription
X-API-KeystringRequired. API key

Response

{ "api_key": { "id": 1, "name": "Admin API Key", "key": "api_key_************", "active": true, "created_at": "2023-01-01T00:00:00Z", "permissions": [ { "id": 1, "name": "admin.users", "description": "User management" }, { "id": 2, "name": "admin.roles", "description": "Role management" } ] } }

Response Fields

FieldTypeDescription
api_keyobjectAPI key object
idintegerAPI key ID
namestringAPI key name
keystringPartially hidden API key
activebooleanActive status
created_atstringCreation date
permissionsarrayArray of key permissions

Response Codes

CodeDescription
200Successful request
401Invalid or missing API key
403Insufficient permissions to perform request
404API key not found

Create API Key

Create a new API key in the system.

Request

POST /api/api-keys

Headers

NameTypeDescription
X-API-KeystringRequired. API key
Content-TypestringRequired. application/json

Request Body

{ "name": "New API Key", "active": true }

Request Body Parameters

NameTypeDescription
namestringRequired. API key name
activebooleanOptional. Active status

Response

{ "message": "API Key created successfully", "api_key": { "id": 3, "name": "New API Key", "key": "api_key_xxxxxxxxxxxxxxxxxxxx", "active": true, "created_at": "2023-03-15T12:00:00Z" } }

Response Codes

CodeDescription
201API key successfully created
401Invalid or missing API key
403Insufficient permissions to perform request
422Invalid request parameters

Update API Key

Update data of an existing API key.

Request

PUT /api/api-keys/{id}

Path Parameters

NameTypeDescription
idintegerAPI key ID

Headers

NameTypeDescription
X-API-KeystringRequired. API key
Content-TypestringRequired. application/json

Request Body

{ "name": "Updated API Key", "active": false }

Request Body Parameters

NameTypeDescription
namestringOptional. API key name
activebooleanOptional. Active status

Response

{ "message": "API Key updated successfully", "api_key": { "id": 3, "name": "Updated API Key", "key": "api_key_************", "active": false, "created_at": "2023-03-15T12:00:00Z" } }

Response Codes

CodeDescription
200API key successfully updated
401Invalid or missing API key
403Insufficient permissions to perform request
404API key not found
422Invalid request parameters

Delete API Key

Delete an API key from the system.

Request

DELETE /api/api-keys/{id}

Path Parameters

NameTypeDescription
idintegerAPI key ID

Headers

NameTypeDescription
X-API-KeystringRequired. API key

Response

{ "message": "API Key deleted successfully" }

Response Codes

CodeDescription
200API key successfully deleted
401Invalid or missing API key
403Insufficient permissions to perform request
404API key not found

Regenerate API Key

Generate a new value for an existing API key.

Request

POST /api/api-keys/{id}/regenerate

Path Parameters

NameTypeDescription
idintegerAPI key ID

Headers

NameTypeDescription
X-API-KeystringRequired. API key

Response

{ "message": "API Key regenerated successfully", "api_key": { "id": 3, "name": "Updated API Key", "key": "api_key_xxxxxxxxxxxxxxxxxxxx", "active": true, "created_at": "2023-03-15T12:00:00Z" } }

Response Codes

CodeDescription
200API key successfully regenerated
401Invalid or missing API key
403Insufficient permissions to perform request
404API key not found

Manage API Key Permissions

Change the permissions list for an API key.

Request

PUT /api/api-keys/{id}/permissions

Path Parameters

NameTypeDescription
idintegerAPI key ID

Headers

NameTypeDescription
X-API-KeystringRequired. API key
Content-TypestringRequired. application/json

Request Body

{ "permission_ids": [1, 2, 3] }

Request Body Parameters

NameTypeDescription
permission_idsarrayRequired. Array of permission IDs

Response

{ "message": "API Key permissions updated successfully", "api_key": { "id": 3, "name": "Updated API Key", "key": "api_key_************", "active": true, "created_at": "2023-03-15T12:00:00Z", "permissions": [ { "id": 1, "name": "admin.users", "description": "User management" }, { "id": 2, "name": "admin.roles", "description": "Role management" }, { "id": 3, "name": "admin.pages", "description": "Page management" } ] } }

Response Codes

CodeDescription
200API key permissions successfully updated
401Invalid or missing API key
403Insufficient permissions to perform request
404API key not found
422Invalid request parameters