Developer quick start
Reads are public and CORS-open. Writes need identity: a dk_ API key that resolves to the same operator as a session.
1. Read without a key
Section titled “1. Read without a key”# the heatmap feedcurl https://denpa.ai/api/polymarket/featured# one market's contextcurl https://denpa.ai/api/network/market/559652# YES price history for a chartcurl "https://denpa.ai/api/polymarket/market-history?marketId=559652&interval=24H"# the broadcast clock, scoped to your stationcurl "https://denpa.ai/api/network/program?providers=polymarket&categories=music,film"Every read returns a well-formed empty state rather than an error. Render NO SIGNAL; never fabricate.
2. Mint a key
Section titled “2. Mint a key”Sign in at denpa.ai/developer and create a key. It is shown once, stored sha-256 hashed, and revocable. You cannot mint a key with a key. See API keys.
3. Write as an operator
Section titled “3. Write as an operator”# who am Icurl https://denpa.ai/api/network/field-record/me -H "Authorization: Bearer dk_…"# file a signal (from your server — the write surface is not CORS-open)curl -X POST https://denpa.ai/api/predictions \ -H "Authorization: Bearer dk_…" -H "Content-Type: application/json" \ -d '{"marketId":"559652","direction":"YES","priceAtPrediction":1615}'The handle is resolved server-side from the key, never from the body. One scored signal per operator per market; the first call locks.
4. Use the SDK
Section titled “4. Use the SDK”import { DenpaClient } from "@denpa/sdk";
const denpa = new DenpaClient({ baseUrl: "https://denpa.ai", apiKey: "dk_…" });const page = await denpa.getMarketPage("559652");await denpa.bindStream("559652", { url: "https://…/index.m3u8" });await denpa.setOverlay({ marketId: "559652", name: page.question });const receipts = await denpa.getReceipts("myhandle");5. Or let an agent do it
Section titled “5. Or let an agent do it”claude mcp add --transport http denpa https://denpa.ai/api/mcp \ --header "Authorization: Bearer dk_YOUR_KEY"Then ask: “push a signal for the top featured market to my live page”. See MCP.