API reference
Lessons
Runtime calibration distills lessons from your calls and their outcomes. These operations read them.
All paths are under https://api.mubit.ai, with a management key in Authorization: Bearer. Management API covers keys, roles, pagination, retries and errors. The samples read the key from MUBIT_MANAGEMENT_KEY.
List lessons
GET /api/v1/lessons
Lists the lessons runtime calibration distilled: rules, pitfalls and guidelines.
Role: read or higher.
| Name | In | Type | Required | Description |
|---|---|---|---|---|
status | query | string: active, pending, rejected | no | |
limit | query | integer | no | Number of records to return (1-200) |
cursor | query | string | no | Sealed pagination cursor from previous page |
curl
curl "https://api.mubit.ai/api/v1/lessons" \
-H "Authorization: Bearer $MUBIT_MANAGEMENT_KEY"Response 200: List of lessons
Each item of data:
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | |
rule | string | yes | |
status | string | yes | |
scope | string | yes | |
importance | string | yes | |
recurrence_count | integer | no | |
created_at | string (date-time) | yes | |
approval | any | no | The lesson's approval; null when it has none. |
{
"data": [
{
"id": "les_019283",
"rule": "Always include tax breakdown in billing responses",
"status": "active",
"scope": "global",
"importance": "high",
"recurrence_count": 5,
"created_at": "2026-10-20T00:00:00Z"
}
],
"next_cursor": null
}| Status | Meaning |
|---|---|
401 | Unauthenticated (missing, invalid, or expired token) |
403 | Forbidden (role_required, role_ceiling, project_scoped, forbidden, or a key that isn't a management key) |
500 | Internal server error |
Get a lesson
GET /api/v1/lessons/{lesson_id}
Returns one lesson with its evidence and scope.
Role: read or higher.
| Name | In | Type | Required | Description |
|---|---|---|---|---|
lesson_id | path | string | yes |
curl
curl "https://api.mubit.ai/api/v1/lessons/$LESSON_ID" \
-H "Authorization: Bearer $MUBIT_MANAGEMENT_KEY"Response 200: Lesson details
| Field | Type | Required | Description |
|---|---|---|---|
id | string | yes | |
rule | string | yes | |
status | string | yes | |
scope | string | yes | |
importance | string | yes | |
citations | array of string | no | |
approval | any | no | The lesson's approval; null when it has none. |
{
"id": "les_019283",
"rule": "Always include tax breakdown in billing responses",
"status": "active",
"scope": "global",
"importance": "high",
"citations": [
"call_019283",
"call_019290"
]
}| Status | Meaning |
|---|---|
401 | Unauthenticated (missing, invalid, or expired token) |
403 | Forbidden (role_required, role_ceiling, project_scoped, forbidden, or a key that isn't a management key) |
404 | Not found |
500 | Internal server error |