Custom products for enterprise, built with your team.Learn more

The full-stack data layer

We index the protocols your product depends on and stand up the backend. Polymarket is live today. Everything else we build with you.

Abstract background representing real-time data streams

Built with your team

We index the protocol and ship the data backend.

events.ts
import { StructClient } from "@structbuild/sdk";

const client = new StructClient({ apiKey: process.env.STRUCT_API_KEY });

const events = await client.events.list({
  status: "active",
  sort_by: "volume",
  timeframe: "1h",
  limit: 25,
});

for (const event of events.data) {
  console.log(event.title, event.volume, event.markets.length);
}
Custom backends

We ship the data backend with your team

Indexing a protocol is custom, not self-serve. We work with your team to stand up the indexers, the pipeline, and the APIs.

Index your protocol. Point us at the programs and contracts your product depends on. We stand up the live firehose and complete historical backfill as part of the engagement.

Step 1

Index your protocol

Live firehose and full historical backfill

Polymarket is live. Any other chain, on request.

Prediction markets are self-serve today. Solana, Ethereum, Ink, Arc, or a chain we have not listed: we index it with your team.

Developer Platform

Query, stream, sync.
One integration.

REST API

Query markets, trades, positions, wallets, and candlesticks, with complete, fully backfilled history.

Learn more

Webhooks

Trigger on market creations, resolutions, price thresholds, wallet activity, and dozens of custom events.

Learn more

Websockets

Stream trades, transactions, price updates, and market changes in real time, with millisecond latency on every chain.

Learn more
Use cases

What we ship with your team

Trading apps, agents, and wallets outside Polymarket are engagements. We build the data backend. You own the product.

We stand up discovery feeds, live prices, and token metrics so your team can ship the trading app, not the indexer.

We feed agents the onchain context they need to research, monitor, and trade. Scoped per protocol, shipped with your team.

Holdings, cost basis, and PnL for the wallets your product tracks. We resolve the balances. You own the dashboard.

Trading Apps: We stand up discovery feeds, live prices, and token metrics so your team can ship the trading app, not the indexer.
Trading Apps: We stand up discovery feeds, live prices, and token metrics so your team can ship the trading app, not the indexer.
MCP Server: Connect AI assistants like Claude, Cursor, and Codex directly to live Polymarket data through the Model Context Protocol.
MCP Server: Connect AI assistants like Claude, Cursor, and Codex directly to live Polymarket data through the Model Context Protocol.
AI-First

Build faster with AI

Connect Polymarket data to the AI tools you already use and ship your integration in minutes.

Connect AI assistants like Claude, Cursor, and Codex directly to live Polymarket data through the Model Context Protocol.

Install the Struct skill in Claude Code to scaffold integrations, generate API calls, and work with our SDK using natural language.

Pay only for what you use with the x402 protocol. Every API call settles instantly in USDC, no subscriptions, no minimums, no wallet round-trips.

Benchmarked performance

Real numbers from production. Millisecond latency, measured continuously.

10ms
Median latency
99.99%
Uptime
1B+
Requests / day
Custom
Enterprise limits

From the blog

Guides, product updates, and deep dives into onchain data.

How We Built Realtime Precomputed PnL for Polymarket

How We Built Realtime Precomputed PnL for Polymarket

1.6B trades backfilled in under a week (now tracking 1.9B+), 378 live indexes, and a custom database that sustains up to 2M writes per second. Why query-time PnL fails, and what we built instead.

Struct Team
Struct Team
Read
View all posts

We ship the data backend with your team

Polymarket is live self-serve. Other chains and protocols are engagements.