# Blockchain Data API product page

**Route:** `/products/data-api`  
**Production URL:** `https://tatum.io/products/data-api`  
**Next.js page:** `src/app/data-api/page.tsx`  
**Browsable docs (AI / agents):** `/products/data-api.md` — raw markdown (`Content-Type: text/markdown`), no HTML chrome  
**Content negotiation:** `GET /products/data-api` with `Accept: text/markdown` returns the same markdown (per [Cloudflare Markdown for Agents](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/))

Marketing page for Tatum’s end-to-end Blockchain Data API. Content is migrated from Webflow HTML embeds and rendered through the shared embed pipeline used by other product routes.

## Page structure

The route composes three HTML embed sections inside `SiteShell` (nav + footer + global contact modal):

| Section | Embed file | Contents |
|---------|------------|----------|
| Hero | `src/content/embeds/data-api/hero.html` | Headline, Get API key / API reference CTAs, endpoint jump links, trusted-by logos |
| Body 1 | `src/content/embeds/data-api/body-1.html` | Value props + live playground (token, wallet, staking, NFT, transaction demos) |
| Body 2 | `src/content/embeds/data-api/body-2.html` | Docs/MCP CTA, metering, endpoint catalog, case studies, pricing widget |

Metadata (title, description, canonical, markdown alternate) lives in `src/app/data-api/page.tsx`.

## Hero

Inside `#bda-hero-title` / `.bda-data-api-embed`:

- **Headline:** End-to-end Blockchain data API
- **Lead:** One surface for tokens, wallets, staking, NFTs, and transactions across 60+ networks—typed REST responses, predictable metering, and docs-aligned paths
- **CTAs:** Get API key → `https://dashboard.tatum.io/signup`; API reference → docs
- **Jump menu:** Token, Wallet, Staking, NFT, Transactions, DeFi, Blockchains (anchors into `#bda-endpoints-*` in body 2)
- **Trusted by:** partner logo strip (xPortal, Elliptic, Chainalysis, TRM, and others)

## Body 1 — value + live playground

Sections inside `.bda-page`:

1. **What the Data API gives you** — three pillars: cross-chain coverage, typed responses, predictable metering + docs
2. **Try live requests** — tabbed playground; visitor supplies their own API key (not stored). Tabs:
   - Token — get token data by contract
   - Wallet — wallet balances by time
   - Staking — Solana staking assets
   - NFT — tokens from a collection
   - Transaction — transaction by hash

## Body 2 — docs, endpoints, proof, pricing

Sections inside `.bda-page2`:

1. **Detailed docs, ready for humans and MCP agents** — links to API reference and `https://docs.tatum.io/mcp`
2. **Metering & credits** — credit-based metering per endpoint
3. **Explore endpoints** — dynamic endpoint groups rendered into `#bda-endpoint-groups` (Token, Wallet, Staking, NFT, Transactions, DeFi, Blockchains)
4. **Trusted by teams** — case-study tiles (Hex Trust, Zengo, CryptoSlam, Elliptic)
5. **API pricing** — `#bda-api-pricing` pricing widget

## Editing embeds

Embed HTML lives under `src/content/embeds/data-api/`. After any edit, rebundle before build or deploy:

```bash
node scripts/bundle-embeds.mjs
# or rely on predev / prebuild hooks:
npm run dev
npm run build
```

Re-sync from the parent `HTML Embeds/` folder:

```bash
./scripts/sync-data-api-embeds.sh
```

| Source (typical Webflow export) | Destination |
|---------------------------------|-------------|
| `blockchain-api-hero.html` | `src/content/embeds/data-api/hero.html` |
| `blockchain-api-section-1.html` | `src/content/embeds/data-api/body-1.html` |
| `blockchain-api-section-2.html` | `src/content/embeds/data-api/body-2.html` |

Agent markdown docs are bundled the same way as embeds:

```bash
node scripts/bundle-markdown.mjs
```

This writes `src/lib/markdown-bundles.generated.ts` from `DATA-API.md` (and other product docs; runs automatically on `npm run dev` / `npm run build`).

## Local preview

```bash
npm run dev
```

Open [http://localhost:3012/products/data-api](http://localhost:3012/products/data-api).

## Crawl & indexing

| URL | Google | AI agents |
|-----|--------|-----------|
| `/products/data-api` | **Indexed** (HTML) — also serves markdown when `Accept: text/markdown` |
| `/products/data-api.md` | **Not indexed** — direct markdown URL with `X-Robots-Tag: noindex` |
| `/products/api/*` | **Not indexed** — `X-Robots-Tag: noindex` on the response |

This app is mounted at `/products` on the main Webflow site. The supplemental sitemap (`/products/sitemap.xml`) is owned by this repo; link it from Webflow’s **root** `robots.txt` (see [WEBFLOW.md](./WEBFLOW.md)).

The HTML product page exposes `<link rel="alternate" type="text/markdown" href="…/data-api.md">` so agents can discover the raw doc without it competing in search results.

No environment variables are required for this page (unlike Price API).

## Deployment

Deployed with the rest of the app to Webflow Cloud at mount path `/products`. See [WEBFLOW.md](./WEBFLOW.md).

## Related links

| Resource | URL |
|----------|-----|
| API reference | https://docs.tatum.io/reference/welcome-to-the-tatum-api-reference |
| Tatum MCP | https://docs.tatum.io/mcp |
| Dashboard signup | https://dashboard.tatum.io/signup |
| Tatum docs | https://docs.tatum.io |
