API reference · Trust
Verify a proof
The exact object CoinGraph issued, its SHA-256 fingerprint and the source calls behind it.
FreeMCP tool:
get_proofEvery check, answer, brief and agent run is stored exactly as it was returned. This endpoint recomputes its fingerprint so you can confirm nothing changed, and lists the data-source calls made around the time it was issued. People can open the same proof at /proof/{id} on the website.
Proof for an id #
GET
/v1/verify/{id}Parameters
idstring· pathrequiredeval_…,ans_…,run_…or a brief number.
Proof for the Chainlink check above
Request
curl "https://coingraph.ai/api/v1/verify/eval_b0a5ee5a25b634682506"Response · real, captured 2026-10-06 23:24 UTC · long lists trimmed
{
"object": "proof",
"id": "eval_b0a5ee5a25b634682506",
"as_of": "2026-10-06T23:20:50.884Z",
"data": {
"id": "eval_b0a5ee5a25b634682506",
"kind": "evaluation",
"token": "chainlink",
"issued_at": "2026-10-06T23:20:50.884Z",
"sha256": "191799c06ad780515560070f892e1c19d7dd72e22b844e127980674a496e5599",
"hash_matches_stored": true,
"canonical_bytes": 3262,
"attestation": {
"mode": "simulation",
"note": "The Chainlink CRE workflow fetched this proof, recomputed the SHA-256 independently and reached consensus on the CRE simulator (a local DON). On-chain publication of the attestation is the next step.",
"sha256": "191799c06ad780515560070f892e1c19d7dd72e22b844e127980674a496e5599",
"status": "attested",
"network": "chainlink-cre",
"workflow": {
"id": null,
"name": "verify-investigation-staging",
"execution_id": null
},
"consensus": {
"nodes": null,
"aggregation": "identical"
},
"attested_at": "2026-10-07T12:09:13.389Z",
"recorded_at": "2026-10-07T12:09:29.574Z",
"served_sha256": "191799c06ad780515560070f892e1c19d7dd72e22b844e127980674a496e5599",
"matches_stored": true
},
"object": {
"token": {
"id": "chainlink",
"name": "Chainlink",
"rank": 14,
"symbol": "LINK"
},
"reasons": [
{
"text": "1h +0.36%, 24h +0.73%: nothing stretched",
"source": "coingecko:/coins/markets",
"dimension": "momentum"
},
{
"info": true,
"text": "$3.3M available within 2% of the price on tracked order books",
"source": "ccxt:fetchOrderBook",
"dimension": "liquidity"
},
"… 1 more"
],
"verdict": "proceed",
"snapshot": {
"market": {
"rank": 14,
"as_of": "2026-10-06T23:20:00.000Z",
"ath_usd": 52.7,
"atl_usd": 0.148183,
"sources": [
{
"as_of": "2026-10-06T23:20:00.000Z",
"endpoint": "/coins/markets",
"provider": "coingecko"
}
],
"ath_date": "2021-05-09T16:13:57.000Z",
"price_usd": 13.96,
"change_pct": {
"1h": 0.36,
"1y": -40.4316,
"4h": 0.22,
"7d": -5.2107,
"15m": 0.14,
"24h": 0.73,
"30d": 8.1012,
"200d": 40.1246
},
"low_24h_usd": 13.72,
"from_ath_pct": -73.5,
"from_atl_pct": 9323.01,
"high_24h_usd": 14.11,
"…": "5 more fields"
},
"supply": {
"top_holders": {
"as_of": "2026-10-06T14:52:00.000Z",
"top10": 39,
"top20": 49.4
},
"fdv_to_market_cap": 1.34
},
"derivatives": {
"funding": [
{
"mark": 13.959,
"index": 13.96491236,
"venue": "binanceusdm",
"symbol": "LINK/USDT:USDT",
"next_at": null,
"rate_pct": 0.01,
"basis_pct": -0.04,
"next_rate_pct": null,
"annualised_pct": 11
},
{
"mark": 13.958,
"index": 13.966,
"venue": "bybit",
"symbol": "LINK/USDT:USDT",
"next_at": null,
"rate_pct": 0.0089,
"basis_pct": -0.06,
"next_rate_pct": null,
"annualised_pct": 9.8
},
"… 1 more"
],
"liquidations_1h": {
"usd": 0,
"count": 0,
"longs_usd": 0,
"shorts_usd": 0
},
"open_interest_change": {
"1h": 0.67,
"4h": 0.42,
"24h": 0.59
}
},
"liquidity_depth": {
"ask": 3265820,
"bid": 3449590,
"bid_ask_ratio": 1.06
},
"onchain_flows_24h": {
"net_usd": -411856,
"inflow_usd": 2109570,
"outflow_usd": 2521420
}
},
"confidence": 0.95,
"dimensions": {
"supply": {
"rating": "ok",
"reasons": [
{
"info": true,
"text": "FDV / market cap 1.34",
"source": "coingecko:/coins/markets"
},
{
"info": true,
"text": "Top 10 holders own 39% of supply",
"source": "goplus/nownodes holders"
},
"… 1 more"
]
},
"context": {
"rating": "ok",
"reasons": [
{
"text": "No fundamental or mood flags",
"source": "coingraph"
}
]
},
"onchain": {
"rating": "ok",
"reasons": [
{
"info": true,
"text": "Exchange net flow $-411.9K in 24h: normal",
"source": "nownodes:eth_getLogs"
}
]
},
"contract": {
"rating": "ok",
"reasons": [
{
"text": "No contract risks found on the ETH contract (home chain)",
"source": "goplus:/token_security"
}
]
},
"leverage": {
"rating": "ok",
"reasons": [
{
"text": "Funding 0.01% per 8h: leverage not crowded",
"source": "ccxt:fetchFundingRates"
}
]
},
"momentum": {
"rating": "ok",
"reasons": [
{
"text": "1h +0.36%, 24h +0.73%: nothing stretched",
"source": "coingecko:/coins/markets"
}
]
},
"liquidity": {
"rating": "ok",
"reasons": [
{
"info": true,
"text": "$3.3M available within 2% of the price on tracked order books",
"source": "ccxt:fetchOrderBook"
}
]
}
},
"disclaimer": "CoinGraph never executes, custodies or advises. The caller decides.",
"size_check": null,
"watch_next": [],
"policy_check": null
},
"provenance": [
{
"call_id": 14139,
"provider": "nownodes",
"endpoint": "sol:getSignaturesForAddress:inspect",
"at": "2026-10-06T23:20:47.628Z",
"latency_ms": 461,
"ok": true,
"rows": null
},
{
"call_id": 14137,
"provider": "nownodes",
"endpoint": "sol:getBalance:inspect",
"at": "2026-10-06T23:20:46.866Z",
"latency_ms": 500,
"ok": true,
"rows": null
},
"… 58 more"
]
},
"sources": [
{
"provider": "nownodes",
"endpoint": "sol:getSignaturesForAddress:inspect",
"as_of": "2026-10-06T23:20:47.628Z"
},
{
"provider": "nownodes",
"endpoint": "sol:getBalance:inspect",
"as_of": "2026-10-06T23:20:46.866Z"
},
"… 15 more"
]
}Response #
Inside data:
| Field | Contents |
|---|---|
sha256 | Fingerprint of the canonical JSON (sorted keys, no spaces). |
hash_matches_stored | true when it matches the fingerprint stored at issue time. |
attestation | Chainlink CRE attestation: status, mode (simulation today), workflow, consensus, attested_at; pending until the workflow has reached the proof. |
object | The exact object issued. |
provenance[] | Source calls: provider, endpoint, time, latency, ok. |
Pricing #
Free, always. Without payment a paid call answers 402 with a PAYMENT-REQUIRED header; design partners send Authorization: Bearer cg_… instead. How payment works.