Skip to main content

API Reference

The Kora AI Governance API is organized around REST. It accepts JSON request bodies, returns JSON responses, and uses standard HTTP status codes.

Base URL

https://api.korastratum.com/ai-governance/api/v1

Authentication

All endpoints require two headers:

Authorization: Bearer <your-api-key>
X-Tenant-ID: <your-tenant-id>

See Authentication for details on API key formats and environments.

Endpoints

Models

MethodEndpointDescription
POST/modelsRegister a new model
GET/modelsList models with filtering
GET/models/{id}Retrieve a model by ID
PUT/models/{id}Update model metadata
DELETE/models/{id}Archive a model

Versions

MethodEndpointDescription
POST/models/{id}/versionsCreate a new model version
GET/models/{id}/versionsList versions for a model
GET/models/{id}/versions/{versionId}Retrieve a version by ID
PUT/models/{id}/versions/{versionId}Update version metadata
POST/models/{id}/versions/{versionId}/promotePromote version to next stage
POST/models/{id}/versions/{versionId}/approveApprove a version for production

Monitoring

MethodEndpointDescription
POST/models/{id}/predictionsLog prediction batch
GET/models/{id}/metricsGet monitoring metrics
GET/models/{id}/metrics/timeseriesGet metric timeseries
POST/models/{id}/alertsCreate a monitoring alert rule
GET/models/{id}/alertsList alert rules
GET/models/{id}/alerts/historyGet alert history

Drift Detection

MethodEndpointDescription
GET/models/{id}/driftGet current drift status
POST/models/{id}/drift/evaluateRun drift evaluation on demand
GET/models/{id}/drift/historyGet drift evaluation history
PUT/models/{id}/drift/configUpdate drift detection thresholds

Fairness

MethodEndpointDescription
POST/models/{id}/fairness/evaluateRun a fairness evaluation
GET/models/{id}/fairness/evaluationsList fairness evaluations
GET/models/{id}/fairness/evaluations/{evalId}Retrieve evaluation results

Explainability

MethodEndpointDescription
POST/models/{id}/explainGenerate explanation for a prediction
POST/models/{id}/explain/batchGenerate batch explanations
GET/models/{id}/feature-importanceGet global feature importance

Experiments

MethodEndpointDescription
POST/experimentsCreate an A/B experiment
GET/experimentsList experiments
GET/experiments/{id}Retrieve an experiment by ID
PUT/experiments/{id}Update experiment configuration
POST/experiments/{id}/startStart an experiment
POST/experiments/{id}/stopStop an experiment
GET/experiments/{id}/resultsGet experiment results

Health

MethodEndpointDescription
GET/healthHealth check (no auth required)
GET/readyReadiness check (no auth required)

Response format

Successful responses return the resource directly or in a paginated wrapper:

{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"name": "credit-risk-scorer",
"risk_tier": "HIGH",
"status": "ACTIVE",
"latest_version": "1.2.0"
}

Paginated list responses:

{
"data": [...],
"next_cursor": "eyJpZCI6Ii4uLiJ9"
}

Error responses follow a consistent structure:

{
"error": "Bad Request",
"message": "name is required",
"status": 400
}