O

OnchainPulse · Narrative Check

by OnchainPulse

GETBaseSolanaArbitrumPolygonFraxtalWorld ChainMonadX LayerHyperEVMAlgorandXRP LedgerBNB Chain

$0.15

per call · USD Coin on Base

Narrative-vs-chain consistency check — the missing layer of token due diligence: fetches the project's own website, extracts its checkable public claims (supply, locks, team holdings, taxes, ownership) and marks each one consistent / inconsistent / unverifiable against independently observed on-chain data, with the exact numbers. Pre-launch-imposter screen included (site live? trading while site dead?). Solana + 8 EVM chains incl. Base & Robinhood Chain. Facts only — no scores, no advice.

Endpoint

GET https://onchainpulse.theaslangroupllc.com/api/narrative-check

1

Calls / 30d

1

Unique payers / 30d

Aug 20

Last called

exact

Payment scheme

Call this service

TypeScript · @x402/fetch
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";

const account = privateKeyToAccount(process.env.PRIVATE_KEY);
const fetchWithPay = wrapFetchWithPayment(fetch, account);

const res = await fetchWithPay("https://onchainpulse.theaslangroupllc.com/api/narrative-check", {
  method: "GET",
});
const data = await res.json();
cURL
curl -X GET \
  "https://onchainpulse.theaslangroupllc.com/api/narrative-check?address=0x532f27101965dd16442E59d40670FaF5eBB142E4&chain=base&url=brett.xyz" \
  -H "X-PAYMENT: <signed x402 payment>"

Example response

{
  "address": "0x…",
  "chain": "base",
  "claims": [
    {
      "claim": "Liquidity locked for 12 months",
      "on_chain_observation": "LP lock/burn share observed at 4.2% — locked share does not match a full-lock claim",
      "status": "inconsistent",
      "topic": "liquidity"
    },
    {
      "claim": "1,000,000,000 total supply",
      "on_chain_observation": "On-chain total supply reads 1,000,000,000",
      "status": "consistent",
      "topic": "supply"
    },
    {
      "claim": "Team tokens vested for 2 years",
      "on_chain_observation": "Provided data cannot identify team wallets or vesting contracts",
      "status": "unverifiable_on_chain",
      "topic": "team_holdings"
    }
  ],
  "counts": {
    "checked": 9,
    "consistent": 5,
    "inconsistent": 1,
    "unverifiable_on_chain": 3
  },
  "disclaimer": "Point-in-time consistency observations between a project's public statements and observable on-chain data. \"Not supported by on-chain data\" describes a data mismatch at the time of the check — it is not an accusation of wrongdoing or intent. Not financial, legal or investment advice; never a recommendation to buy, sell or avoid any asset.",
  "explorer": "https://basescan.org/token/0x…",
  "imposter_screen": {
    "site_live": true,
    "socials_on_site": [
      "https://x.com/example"
    ],
    "token_trading": true,
    "trading_while_site_dead": false
  },
  "notable_absences": [
    "No contract address listed on the site"
  ],
  "site": {
    "live": true,
    "title": "Example Protocol",
    "url": "https://example.xyz"
  }
}

Payment details

Pay to0x50ab2018c06c6e4eaa9ba52057eb55ed284912fc
AssetUSD Coin · 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913
NetworksBase, Solana, Arbitrum, Polygon, Fraxtal, World Chain, Monad, X Layer, HyperEVM, Algorand, XRP Ledger, BNB Chain
Schemesexact

Is this your API?

Pin it to the top of Onchain Data and the homepage with a featured placement.

Get featured →

More from OnchainPulse & similar services