API Referencev1
REST API Documentation
Complete reference for the Akmatori REST API. All endpoints require authentication via JWT token or API key.
Authentication
All API requests must include authentication. You can use either a JWT token or an API key.
bash
# Using Bearer Token
curl -H "Authorization: Bearer <your-jwt-token>" \
https://your-instance/api/incidents
# Using API Key
curl -H "X-API-Key: <your-api-key>" \
https://your-instance/api/incidents Generate API keys in Settings → API Keys. Tokens expire after 24 hours.
Base URL
text
https://your-akmatori-instance/apiEndpoints
Incidents
GET
/incidentsList all incidents with optional filters
GET
/incidents/:idGet a specific incident by ID
POST
/incidentsCreate and run a new incident investigation
Skills
GET
/skillsList all available skills
GET
/skills/:nameGet skill details by name
POST
/skills/:nameUpdate skill content and configuration
POST
/skills/syncSync skills from filesystem to database
Tools
GET
/tool-typesList available tool types
GET
/toolsList configured tool instances
POST
/toolsCreate a new tool instance
PUT
/tools/:idUpdate tool configuration
DELETE
/tools/:idDelete a tool instance
Alert Sources
GET
/alert-source-typesList supported alert source types
GET
/alert-sourcesList configured alert sources
POST
/alert-sourcesCreate a new alert source
Webhooks
POST
/webhook/alert/:uuidReceive alerts from monitoring systems (no auth required)
Example Request
Create Incident
curl -X POST https://your-instance/api/incidents \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"title": "High CPU on web-server-01",
"description": "CPU usage above 90% for 5 minutes",
"skill": "investigate-high-cpu",
"context": {
"host": "web-server-01",
"severity": "critical"
}
}'Error Responses
400Bad Request - Invalid parameters401Unauthorized - Invalid or missing token404Not Found - Resource doesn't exist500Internal Error - Server error