Properties
| Name | Type | Description |
|---|---|---|
| schema | object | |
| id | string | |
| url | string | |
| sealed | boolean | |
| checkedAt | stringnull | |
| engineCount | integernull | |
| measured | boolean | |
| splitCount | integernull | |
| claims | array | |
| limitation | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/eccaai-com/json-schema/eccaai-com-atomic-claim-record-schema.json",
"title": "AtomicClaimRecord",
"x-generated": "2026-11-06",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/_original/eccaai-com-api-openapi.json#/components/schemas/AtomicClaimRecord",
"type": "object",
"additionalProperties": false,
"required": [
"schema",
"id",
"url",
"sealed",
"checkedAt",
"engineCount",
"measured",
"splitCount",
"claims",
"limitation"
],
"properties": {
"schema": {
"const": "ecca.claim-verification.v1"
},
"id": {
"type": "string",
"pattern": "^[a-zA-Z0-9_-]{4,64}$"
},
"url": {
"type": "string",
"pattern": "^https://eccaai\\.com/p/[a-zA-Z0-9_-]{4,64}$"
},
"sealed": {
"type": "boolean"
},
"checkedAt": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"engineCount": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"measured": {
"type": "boolean"
},
"splitCount": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"claims": {
"type": "array",
"maxItems": 72,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"id",
"pointId",
"text",
"variants",
"comparison",
"category",
"tie",
"engines",
"checks",
"sources"
],
"properties": {
"id": {
"type": "string",
"pattern": "^claim-[a-f0-9]{24}$"
},
"pointId": {
"type": "string",
"pattern": "^point-[a-f0-9]{24}$"
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 400
},
"variants": {
"type": "array",
"minItems": 1,
"maxItems": 12,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"engineId",
"text"
],
"properties": {
"engineId": {
"type": "string",
"enum": [
"speed",
"depth",
"breadth",
"logic",
"context",
"agentic"
]
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 400
}
}
}
},
"comparison": {
"type": "string",
"enum": [
"split",
"agreement"
]
},
"category": {
"type": [
"string",
"null"
],
"enum": [
"factual",
"interpretive",
"scope",
"ambiguity",
"temporal",
"hallucination",
null
]
},
"tie": {
"type": "boolean"
},
"engines": {
"type": "array",
"minItems": 1,
"maxItems": 6,
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"engineId",
"number",
"position"
],
"properties": {
"engineId": {
"type": "string",
"enum": [
"speed",
"depth",
"breadth",
"logic",
"context",
"agentic"
]
},
"number": {
"type": "integer",
"minimum": 1,
"maximum": 6
},
"position": {
"type": "string",
"enum": [
"agrees",
"disagrees",
"not-measured"
]
}
}
}
},
"checks": {
"type": "object",
"additionalProperties": false,
"required": [
"evidence",
"logic",
"assumptions"
],
"properties": {
"evidence": {
"const": "untested"
},
"logic": {
"const": "untested"
},
"assumptions": {
"const": "untested"
}
}
},
"sources": {
"type": "array",
"maxItems": 0,
"description": "No sealed claim-source binding exists in legacy proofs. Answer-level URLs are not attached to a claim by inference."
}
}
}
},
"limitation": {
"const": "Agreement is not proof. Open the sources."
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/eccaai-com-atomic-claim-record"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.