API Documentation
Typed fact graph operations for truth resolution, slot-based supersession, lineage inspection, and reversible claim state transitions.
Claims are structured, slot-anchored facts extracted from memories. While memories store raw text, claims provide a precise graph of what the system believes about a subject — with automatic supersession, provenance tracking, and conflict resolution.
favorite_color, works_at). Single-valued slots allow only one active claim at a time.favorite_color, lives_in, pet_name)./api/v1/claims/subject/:subject_id/truthGet the current truth for a subject — all active slot values. This is the primary 'what do we believe?' endpoint.
memories:readsubject_idrequiredinclude_sourcecurl "https://www.mnexium.com/api/v1/claims/subject/user_123/truth" \
-H "x-mnexium-key: $MNX_KEY"{
"subject_id": "user_123",
"project_id": "proj_abc",
"slot_count": 2,
"slots": [
{
"slot": "favorite_color",
"active_claim_id": "clm_xyz789",
"predicate": "favorite_color",
"object_value": "yellow",
"claim_type": "preference",
"confidence": 0.95,
"updated_at": "2024-12-15T10:30:00Z",
"source": { "memory_id": "mem_abc", "observation_id": null }
},
{
"slot": "works_at",
"active_claim_id": "clm_def456",
"predicate": "works_at",
"object_value": "Acme Corp",
"claim_type": "fact",
"confidence": 0.9,
"updated_at": "2024-12-14T09:00:00Z",
"source": { "memory_id": "mem_def", "observation_id": null }
}
]
}/api/v1/claims/subject/:subject_id/slot/:slotGet the current value for a specific slot. Quick lookup for single values like 'what is their favorite color?'
memories:readsubject_idrequiredslotrequiredcurl "https://www.mnexium.com/api/v1/claims/subject/user_123/slot/favorite_color" \
-H "x-mnexium-key: $MNX_KEY"{
"subject_id": "user_123",
"project_id": "proj_abc",
"slot": "favorite_color",
"active_claim_id": "clm_xyz789",
"predicate": "favorite_color",
"object_value": "yellow",
"claim_type": "preference",
"confidence": 0.95,
"updated_at": "2024-12-15T10:30:00Z",
"tags": ["preference"],
"source": { "memory_id": "mem_abc", "observation_id": null }
}404 if the slot has no active claim./api/v1/claims/subject/:subject_id/historyGet claim history showing how values evolved over time. See supersession chains and previous values.
memories:readsubject_idrequiredslotlimitcurl -G "https://www.mnexium.com/api/v1/claims/subject/user_123/history" \
-H "x-mnexium-key: $MNX_KEY" \
--data-urlencode "slot=favorite_color"{
"subject_id": "user_123",
"project_id": "proj_abc",
"slot_filter": "favorite_color",
"total_claims": 2,
"by_slot": {
"favorite_color": [
{
"claim_id": "clm_xyz789",
"predicate": "favorite_color",
"object_value": "yellow",
"confidence": 0.95,
"asserted_at": "2024-12-15T10:30:00Z",
"is_active": true,
"replaced_by": null
},
{
"claim_id": "clm_old123",
"predicate": "favorite_color",
"object_value": "blue",
"confidence": 0.9,
"asserted_at": "2024-12-10T08:00:00Z",
"is_active": false,
"replaced_by": "clm_xyz789"
}
]
},
"edges": [...]
}/api/v1/claims/subject/:subject_id/slotsList slot states for a subject, grouped by active/superseded/other status.
memories:readsubject_idrequiredlimitcurl "https://www.mnexium.com/api/v1/claims/subject/user_123/slots?limit=100" \
-H "x-mnexium-key: $MNX_KEY"{
"subject_id": "user_123",
"total": 3,
"active_count": 2,
"slots": {
"active": [{ "slot": "favorite_color", "active_claim_id": "clm_xyz789" }],
"superseded": [{ "slot": "favorite_color", "active_claim_id": "clm_old123" }],
"other": []
}
}/api/v1/claims/subject/:subject_id/graphGet a claim graph snapshot (claims + typed edges) for a subject.
memories:readsubject_idrequiredlimitcurl "https://www.mnexium.com/api/v1/claims/subject/user_123/graph?limit=50" \
-H "x-mnexium-key: $MNX_KEY"{
"subject_id": "user_123",
"claims_count": 2,
"edges_count": 1,
"edges_by_type": { "supersedes": 1 },
"claims": [...],
"edges": [...]
}/api/v1/claimsCreate a claim directly. Automatically computes slot, triggers graph linking, and handles supersession.
memories:writesubject_idrequiredpredicaterequiredobject_valuerequiredclaim_typeconfidenceimportancetagssource_textcurl -X POST "https://www.mnexium.com/api/v1/claims" \
-H "x-mnexium-key: $MNX_KEY" \
-H "Content-Type: application/json" \
-d '{
"subject_id": "user_123",
"predicate": "favorite_color",
"object_value": "yellow",
"confidence": 0.95,
"source_text": "User said: my favorite color is yellow"
}'{
"claim_id": "clm_xyz789",
"subject_id": "user_123",
"predicate": "favorite_color",
"object_value": "yellow",
"slot": "favorite_color",
"claim_type": "preference",
"confidence": 0.95,
"observation_id": "obs_abc123",
"linking_triggered": true
}/api/v1/claims/:idGet one claim with supporting assertions, connected edges, and supersession chain.
memories:readidrequiredcurl "https://www.mnexium.com/api/v1/claims/clm_xyz789" \
-H "x-mnexium-key: $MNX_KEY"{
"claim": {
"claim_id": "clm_xyz789",
"subject_id": "user_123",
"predicate": "favorite_color",
"object_value": "yellow"
},
"assertions": [...],
"edges": [...],
"supersession_chain": [...]
}/api/v1/claims/:id/retractSoft-retract a claim. Preserves provenance and restores the previous claim as active if one exists.
memories:writeidrequiredreasoncurl -X POST "https://www.mnexium.com/api/v1/claims/clm_xyz789/retract" \
-H "x-mnexium-key: $MNX_KEY" \
-H "Content-Type: application/json" \
-d '{ "reason": "user_requested" }'{
"success": true,
"claim_id": "clm_xyz789",
"slot": "favorite_color",
"previous_claim_id": "clm_old123",
"restored_previous": true,
"reason": "user_requested"
}Claims vs Memories
Memories and claims work together but serve different purposes:
hobby = hikingWhen you use learn: true with the Chat API, both memories and claims are automatically extracted. Claims provide the structured graph; memories provide the rich context.