stablecoin-deaths
GET api.truthbear.co/stablecoin-deaths
Why an agent can trust this route.
Sonar evidence is advisory. Paid delivery is shown as verified only when paid probes are available; otherwise route estimates use the unpaid handshake as a clearly labeled proxy.
Observed outcomes
[BATCH+PROOF] Stablecoin death samples - a neutral record: the full pre-mortem snapshot of terminated stablecoins (price, supply, collateral, redemption) plus lifecycle context (termination type, confirmed death date, days alive). Forensic depth for base-rate and post-mortem work, not a rating and not an endorsement. Descriptive only, never a forecast or advice. No data -> 422 no_charge, not billed. Every record carries an offline-recomputable record_hash.
Resource: api.truthbear.co/stablecoin-deaths
Network: base · Asset: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 · Pay to: 0x2d16a243ba9fAcC6AC85519d5efad2149DC4C6c3
Payment methods: — · Last validation: 2026-10-15 11:56:54.164+00
{
"input": null,
"output": null,
"paymentRequirements": [
{
"raw": {
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x2d16a243ba9fAcC6AC85519d5efad2149DC4C6c3",
"amount": "90000",
"scheme": "exact",
"network": "base",
"mimeType": "application/json",
"resource": "https://api.truthbear.co/stablecoin-deaths",
"extensions": {
"bazaar": {
"info": {
"input": {
"type": "http",
"method": "GET",
"queryParams": {
"verifiable": "optional - set to 1 to attach `_hash_core` per row (the canonical pre-image of the record_hash for that row) so you can "
}
},
"output": {
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method"
],
"properties": {
"type": {
"const": "http"
},
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"type": "object",
"properties": {
"verifiable": {
"type": "string",
"description": "optional - set to 1 to attach `_hash_core` per row (the canonical pre-image of the record_hash for that row) so you can recompute and verify fully offline; omitted by default to keep the payload small - for online verification use free GET /gauge/verify?hash="
}
},
"additionalProperties": false
}
}
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"const": "json"
}
}
}
}
},
"priceUsd": "$0.09",
"discoverable": true,
"outputSchema": {
"type": "object",
"required": [
"count",
"records"
],
"properties": {
"count": {
"type": "integer",
"description": "Number of rows in records"
},
"nature": {
"type": "string",
"description": "Neutral-record statement"
},
"records": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"symbol": {
"type": "string"
},
"death_type": {
"type": "string",
"description": "Termination type, labelled algorithmically from observed signals - not an adjudication"
},
"source_ref": {
"type": [
"string",
"null"
],
"description": "Official source URL"
},
"record_hash": {
"type": [
"string",
"null"
],
"description": "Canonical sha256; verify it via /verify or the offline verifier"
},
"source_tier": {
"type": [
"string",
"null"
],
"description": "Source tier"
},
"death_context": {
"type": [
"object",
"null"
],
"description": "Factualised context (not verbatim, to avoid copyright); delivered in full only on the paid call"
},
"lifespan_days": {
"type": [
"integer",
"null"
],
"description": "Days alive (present only when lifecycle supplies it)"
},
"confirmed_dead_at": {
"type": "string",
"format": "date-time"
},
"first_distress_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "First observed (lifecycle.birth_at / first_seen)"
},
"hash_core_version": {
"type": [
"integer",
"null"
],
"description": "Core-contract version of record_hash (currently 3)"
},
"pre_death_payload": {
"type": "object",
"description": "Full pre-death snapshot (price / supply / collateral / redemption / per-chain); delivered in full only on the paid call"
},
"pre_death_observed_at": {
"type": "string",
"format": "date-time"
}
}
},
"description": "Death samples, row by row (field shape in items)"
},
"provenance": {
"type": "object",
"description": "Freshness and lineage: freshness / freshness_basis / age_hours_now / data_lineage, with the oldest row representing the whole batch"
},
"observed_at": {
"type": [
"string",
"null"
],
"description": "Observation time of the OLDEST row in this batch (ISO) - the most conservative basis"
}
}
},
"routeTemplate": "/stablecoin-deaths",
"priceUsdNumber": 0.09
}
},
"description": "[BATCH+PROOF] Stablecoin death samples - a neutral record: the full pre-mortem snapshot of terminated stablecoins (price, supply, collateral, redemption) plus lifecycle context (termination type, confirmed death date, days alive). Forensic depth for base-rate and post-mortem work, not a rating and not an endorsement. Descriptive only, never a forecast or advice. No data -> 422 no_charge, not billed. Every record carries an offline-recomputable record_hash. $0.09 per call.",
"outputSchema": {
"input": {
"type": "http",
"method": "GET",
"required": [],
"properties": {
"verifiable": {
"type": "string",
"description": "optional - set to 1 to attach `_hash_core` per row (the canonical pre-image of the record_hash for that row) so you can recompute and verify fully offline; omitted by default to keep the payload small - for online verification use free GET /gauge/verify?hash="
}
},
"queryParams": {
"verifiable": "optional - set to 1 to attach `_hash_core` per row (the canonical pre-image of the record_hash for that row) so you can recompute and verify fully offline; omitted by default to keep the payload small - for online verification use free GET /gauge/verify?hash="
},
"discoverable": true
},
"output": {
"type": "object",
"required": [
"count",
"records"
],
"properties": {
"count": {
"type": "integer",
"description": "Number of rows in records"
},
"nature": {
"type": "string",
"description": "Neutral-record statement"
},
"records": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"symbol": {
"type": "string"
},
"death_type": {
"type": "string",
"description": "Termination type, labelled algorithmically from observed signals - not an adjudication"
},
"source_ref": {
"type": [
"string",
"null"
],
"description": "Official source URL"
},
"record_hash": {
"type": [
"string",
"null"
],
"description": "Canonical sha256; verify it via /verify or the offline verifier"
},
"source_tier": {
"type": [
"string",
"null"
],
"description": "Source tier"
},
"death_context": {
"type": [
"object",
"null"
],
"description": "Factualised context (not verbatim, to avoid copyright); delivered in full only on the paid call"
},
"lifespan_days": {
"type": [
"integer",
"null"
],
"description": "Days alive (present only when lifecycle supplies it)"
},
"confirmed_dead_at": {
"type": "string",
"format": "date-time"
},
"first_distress_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "First observed (lifecycle.birth_at / first_seen)"
},
"hash_core_version": {
"type": [
"integer",
"null"
],
"description": "Core-contract version of record_hash (currently 3)"
},
"pre_death_payload": {
"type": "object",
"description": "Full pre-death snapshot (price / supply / collateral / redemption / per-chain); delivered in full only on the paid call"
},
"pre_death_observed_at": {
"type": "string",
"format": "date-time"
}
}
},
"description": "Death samples, row by row (field shape in items)"
},
"provenance": {
"type": "object",
"description": "Freshness and lineage: freshness / freshness_basis / age_hours_now / data_lineage, with the oldest row representing the whole batch"
},
"observed_at": {
"type": [
"string",
"null"
],
"description": "Observation time of the OLDEST row in this batch (ISO) - the most conservative basis"
}
}
}
},
"maxAmountRequired": "90000",
"maxTimeoutSeconds": 300
},
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0x2d16a243ba9fAcC6AC85519d5efad2149DC4C6c3",
"scheme": "exact",
"network": "base",
"amountAtomic": "90000"
}
]
}Source catalog records are retained separately from live endpoint observations. Sonar score, uptime, and latency are advisory metrics. CDP indexing is not inferred from validation.