Skip to main content

API Reference

The Kora Sentinel 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/sentinel/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

Profiles

MethodEndpointDescription
POST/elder/profilesCreate a new elder profile
GET/elder/profilesList elder profiles with filtering
GET/elder/profiles/{id}Retrieve a profile by ID
PUT/elder/profiles/{id}Update a profile
PUT/elder/profiles/{id}/statusUpdate profile monitoring status
GET/elder/profiles/{id}/timelineGet profile event timeline
GET/elder/profiles/{id}/baselineGet behavioral baseline
GET/elder/profiles/{id}/ers-historyGet ERS score history

Signals

MethodEndpointDescription
GET/elder/signalsList signals with filtering
GET/elder/signals/{id}Retrieve a signal by ID
PUT/elder/signals/{id}/reviewReview (confirm or dismiss) a signal
GET/elder/signals/by-profile/{profileId}List signals for a specific profile

Rules

MethodEndpointDescription
POST/elder/rulesCreate a detection rule
GET/elder/rulesList all rules
GET/elder/rules/{id}Retrieve a rule by ID
PUT/elder/rules/{id}Update a rule
PUT/elder/rules/{id}/enableEnable a rule
PUT/elder/rules/{id}/disableDisable a rule

Configuration

MethodEndpointDescription
GET/elder/configGet tenant signal configuration
PUT/elder/configUpdate tenant signal configuration

Scoring

MethodEndpointDescription
POST/elder/scoring/calculateCalculate ERS on demand for a profile

Events

MethodEndpointDescription
POST/elder/events/transactionProcess a transaction event
POST/elder/events/sessionProcess a session/device event
POST/elder/events/beneficiaryProcess a beneficiary creation event
POST/elder/events/accountProcess an account event
POST/elder/events/customerProcess a customer update event

Webhooks

MethodEndpointDescription
POST/elder/webhooks/cbaReceive CBA-style HMAC-signed webhook events

Batch Operations

MethodEndpointDescription
POST/elder/batch/enrollment-scanRun an enrollment scan
POST/elder/batch/baseline-recalculationRecalculate baselines for all profiles
POST/elder/batch/draining-scanRun a draining pattern scan
GET/elder/batch/runsList batch runs
GET/elder/batch/runs/{id}Get a batch run by ID

Dashboard

MethodEndpointDescription
GET/elder/dashboard/overviewGet dashboard overview statistics
GET/elder/dashboard/top-risk-profilesGet highest-risk profiles

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",
"customer_name": "Margaret Johnson",
"risk_tier": "ELEVATED",
"current_ers": 48.2,
"status": "ACTIVE"
}

Paginated list responses:

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

Error responses follow a consistent structure:

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

See Error Codes for the complete list.