Quickstart
The StockKit API is live at https://api.stockkit.dev. It is open during the
beta: no API key required.
Get a price
Section titled “Get a price”curl https://api.stockkit.dev/v1/prices/NVDA{ "symbol": "NVDA", "currency": "USD", "underlying": { "bid": "228.5", "ask": "229.52", "mid": "229.010000" }, "token": { "bid": "228.500000", "ask": "229.520000", "mid": "229.010000", "multiplier": "1.000000000000000000" }, "halted": false, "asOf": "2026-09-05T14:50:45Z"}Get an executable quote
Section titled “Get an executable quote”Quotes come from live Uniswap v3 pools on Robinhood Chain (chain ID 4663), quoted against USDG:
curl "https://api.stockkit.dev/v1/quote?symbol=NVDA&side=buy&amount=100&denom=usd"{ "symbol": "NVDA", "side": "buy", "feeTier": 500, "usdAmount": "100.000000", "tokenAmount": "0.432324841419642912", "effectivePricePerToken": "231.307550", "venue": "uniswap-v3"}Build a trade
Section titled “Build a trade”StockKit is non-custodial: /v1/trade/build returns unsigned transactions
that you review and sign with your own wallet. StockKit never holds keys and
never executes trades.
curl -X POST https://api.stockkit.dev/v1/trade/build \ -H "content-type: application/json" \ -d '{ "symbol": "NVDA", "side": "buy", "amount": "100", "denom": "usd", "recipient": "0xYourWalletAddress", "slippageBps": 50 }'The response contains an optional ERC-20 approval step and the Uniswap SwapRouter02 swap call, with slippage bounds already applied. Submit the steps in order from your wallet or app.
TypeScript / JavaScript SDK
Section titled “TypeScript / JavaScript SDK”npm install @stockkit/sdkimport { StockKit } from "@stockkit/sdk"
const stockkit = new StockKit()
const price = await stockkit.prices.get("NVDA")
const quote = await stockkit.trade.quote({ ticker: "NVDA", amount: 100 })
const tx = await stockkit.trade.build({ ticker: "NVDA", amount: 100, recipient: "0xYourWalletAddress",})
// Hourly candles from the onchain pool priceconst { candles } = await stockkit.history.get("NVDA", { interval: "1h" })
// Supply, pool TVL, and the DEX premium vs the equity quoteconst stats = await stockkit.stats.get("NVDA")Every response is fully typed, and errors throw StockKitError with status
and code. Source: github.com/stockkit-labs/sdk.
The API is also plain JSON over HTTPS with open CORS, so fetch works
directly from any runtime or browser without the SDK.
From Python
Section titled “From Python”import requests
BASE = "https://api.stockkit.dev/v1"
price = requests.get(f"{BASE}/prices/NVDA").json()
quote = requests.get(f"{BASE}/quote", params={ "symbol": "NVDA", "amount": 100}).json()
tx = requests.post(f"{BASE}/trade/build", json={ "symbol": "NVDA", "amount": "100", "recipient": "0xYourWalletAddress"}).json()What you can build on
Section titled “What you can build on”| API | What it does |
|---|---|
| Asset API | Registry of all tokenized stocks with onchain addresses |
| Execution API | DEX quotes and unsigned trade transactions |
| Portfolio API | Onchain balances valued in USD |
| Research API | SEC EDGAR facts on the equity behind each token |
| Market API | Price history, per-token market stats, and webhook price alerts |
| Agent API | Machine-readable access for AI agents |
| x402 API | Pay-per-call access, settled in USDG or USDC |
