Makes this response provable: it shows this exact response existed at this time, not that the answer is correct. CoinGraph keeps the exact response for 30 days (GET /verify/{id} returns it) and the fingerprint for good, so keep the response to recompute it later.
Crypto DataAI Agentstrading agentsWalletsOn-Chain DataMarket Data
Properties
Name
Type
Description
id
string
Same as the envelope id. Pass it to GET /verify/{id}.
sha256
string
sha256(canonical({ as_of, data })): only these two fields of the response, as you received them. Canonical: keys sorted at every level, no whitespace, written as JavaScript's JSON.stringify writes it.
verify_url
string
status
string
Fixed when the response is issued. GET /verify/{id} gives the current status.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/coingraph-ai/json-schema/coingraph-ai-response-proof-schema.json",
"title": "ResponseProof",
"description": "Makes this response provable: it shows this exact response existed at this time, not that the answer is correct. CoinGraph keeps the exact response for 30 days (GET /verify/{id} returns it) and the fingerprint for good, so keep the response to recompute it later.",
"x-generated": "2026-11-04",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/coingraph-ai-openapi.json#/components/schemas/ResponseProof",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Same as the envelope id. Pass it to GET /verify/{id}."
},
"sha256": {
"type": "string",
"description": "sha256(canonical({ as_of, data })): only these two fields of the response, as you received them. Canonical: keys sorted at every level, no whitespace, written as JavaScript's JSON.stringify writes it."
},
"verify_url": {
"type": "string",
"format": "uri"
},
"status": {
"type": "string",
"const": "queued",
"description": "Fixed when the response is issued. GET /verify/{id} gives the current status."
}
},
"required": [
"id",
"sha256",
"verify_url",
"status"
]
}
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.