Pricefeed API Documentation
Cross-venue price intelligence for tokenized equities on a 15-minute feed. Base URL: https://api-data.altstreet.investments. Free endpoints need no key. Methodology behind every number: how marks are computed.
Authentication
Paid tiers authenticate with the API key from your welcome email, as a Bearer token or X-Api-Key header. Keys are shown once and stored hashed — if you lose yours, reply to the welcome email and we revoke and reissue.
export PRICEFEED_KEY="pk_…" # from your welcome email
curl -H "Authorization: Bearer $PRICEFEED_KEY" https://api-data.altstreet.investments/v1/usageRate limits per hour: free (per IP) is modest; Pro 1,000; API 10,000; Team 50,000. Every response carries x-ratelimit-remaining. 429s include an upgradeUrl. Plans and pricing: /data/pricing.
Endpoints
GET /v1/indexfreeLatest published mark for every covered symbol.
Request
curl https://api-data.altstreet.investments/v1/indexResponse shape
{
"tokens": [
{
"symbol": "NVDA",
"markUsd": 196.79,
"premium": 0.0041,
"date": "2026-07-31",
"flags": []
},
{ "symbol": "SPACEX", "markUsd": 159.81, "date": "2026-07-31" }
]
}- markUsd is null for symbols whose fixing window hasn't produced a publishable mark — absence is the signal, never a fabricated value.
- premium is vs the configured underlying feed; OPENAI omits it because no public consensus underlying exists. SPCX premium remains absent until a supported public feed is configured.
- Also available as a static JSON feed at /feeds/index.json (5-minute CDN cache).
GET /v1/healthfreeFeed liveness: newest sample timestamp and coverage.
Request
curl https://api-data.altstreet.investments/v1/healthResponse shape
{
"ok": true,
"now": 1785555600,
"symbolsTracked": 12,
"symbolsWithMarks": 10,
"lastSampleTs": 1785555000,
"polling": true
}- polling is false when more than two 15-minute cycles have passed without a new sample.
GET /v1/marks/:symbol?days=NfreeDaily mark history for one symbol. Free tier is clamped to 30 days; Pro and above get the full series.
Request
curl https://api-data.altstreet.investments/v1/marks/NVDA?days=365 -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"symbol": "NVDA",
"marks": [
{
"date": "2026-07-31",
"markUsd": 196.79,
"premium": 0.0041,
"method": "median_twap",
"samplesUsed": 7,
"samplesExcluded": 1,
"exclusionFlags": ["LOW_LIQUIDITY"],
"markFlags": []
}
],
"clamped": false
}- Without a key (or on free keys) days is clamped to 30 and the response carries clamped: true plus an upgradeUrl.
- venue=<venue> returns one venue's own series (for example venue=rhchain_univ4 or venue=solana_xstocks); venue=all returns every venue's series in one list, each mark carrying its venue. Without venue, the symbol's primary venue. An unknown venue answers 404 with the venues available.
- samplesExcluded and exclusionFlags show what the liquidity gates removed — the trust model is visible per mark.
GET /v1/intraday/:symbolpro7 days of 15-minute TWAP samples across every venue of the symbol (each sample carries its venue), including executable depth quotes at $1k / $10k / $50k.
Request
curl https://api-data.altstreet.investments/v1/intraday/COIN -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"symbol": "COIN",
"samples": [
{
"venue": "rhchain_v4",
"ts": 1785554100,
"twapUsd": 341.20,
"spotUsd": 341.55,
"twapMethod": "onchain_oracle",
"underlyingUsd": 339.90,
"flags": [],
"depth": [
{ "sizeUsd": 10000, "side": "buy", "effectiveUsd": 342.10, "impact": 0.0026, "method": "quoter_exact" }
]
}
]
}- depth entries are absent for sizes the pool cannot absorb — absence is the depth signal.
- method distinguishes exact swap simulation (quoter_exact, Uniswap v3/v4) from constant-liquidity estimates (liquidity_estimate, Orca Whirlpools).
GET /v1/spreadsproThe screener: live cross-venue spread matrix for every symbol, including the executable layer net of impact, pool fees, and gas.
Request
curl https://api-data.altstreet.investments/v1/spreads -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"asOf": 1785555600,
"spreads": [
{
"symbol": "COIN",
"venues": [ { "venue": "rhchain_v4", "twapUsd": 341.20 }, { "venue": "solana_xstocks", "twapUsd": 333.05 } ],
"maxPair": { "venueA": "rhchain_v4", "venueB": "solana_xstocks", "spread": 0.0244 },
"executable": [
{ "sizeUsd": 10000, "buyVenue": "solana_xstocks", "sellVenue": "rhchain_v4", "netSpread": 0.0186, "method": "quoter_exact" }
],
"excluded": [ { "venue": "base_backed", "reason": "stale >30min" } ]
}
]
}- Stale (>30 min) or flagged venues never enter a spread — they appear under excluded with the reason.
- Executable numbers are net of price impact, pool fees, and gas — BEFORE venue access, bridging, and hedging costs. The scope is stated, always.
GET /v1/spreads/:symbolproSpread detail for one symbol: current matrix plus 7-day spread history.
Request
curl https://api-data.altstreet.investments/v1/spreads/COIN -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"current": { "symbol": "COIN", "maxPair": { "spread": 0.0244, "venueA": "rhchain_v4", "venueB": "solana_xstocks" } },
"history": [ { "ts": 1785469200, "spread": 0.0198, "venueA": "rhchain_v4", "venueB": "solana_xstocks", "venueCount": 2 } ]
}GET /v1/screenerproSymbols ranked by absolute premium vs underlying.
Request
curl https://api-data.altstreet.investments/v1/screener -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"rows": [
{ "symbol": "COIN", "markUsd": 341.20, "premium": -0.024, "date": "2026-07-31", "flags": [] },
{ "symbol": "NVDA", "markUsd": 196.79, "premium": 0.004, "date": "2026-07-31", "flags": [] }
]
}GET /v1/structure/:symbolproCurated legal and structural registry: issuer, legal form, backing, holder rights, restrictions, redemption — sourced and review-dated.
Request
curl https://api-data.altstreet.investments/v1/structure/SPACEX -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"symbol": "SPACEX",
"issuer": "…",
"legalForm": "…",
"backing": "…",
"holderRights": ["…"],
"redemption": "…",
"sources": ["…"],
"lastReviewed": "2026-07-01",
"offchainIndications": [
{ "source": "forge", "kind": "indication_ask", "valueUsd": 165.0, "asOf": "2026-07-28" }
]
}- Private-reference tokens carry offchain indications (Forge/Hiive/EquityZen) with the kind labeled — comparisons publish as implied exposure premium/discount, never as "the price of OpenAI".
POST / GET / DELETE /v1/alertsproEdge-triggered alert rules with cooldown, delivered by email or webhook: price levels, premium vs underlying, spot/TWAP divergence, flags, mid spread, and executable spread at a specific size.
Request
curl -X POST https://api-data.altstreet.investments/v1/alerts -H "Authorization: Bearer $PRICEFEED_KEY" \
-H "content-type: application/json" \
-d '{
"symbol": "COIN",
"condition": { "kind": "executable_spread_above", "threshold": 0.02, "sizeUsd": 10000 },
"email": "[email protected]",
"cooldown_seconds": 3600
}'Response shape
{ "id": "…", "symbol": "COIN", "condition": { "kind": "executable_spread_above", "threshold": 0.02, "sizeUsd": 10000 } }- Condition kinds: price_above, price_below, premium_above, premium_below, divergence_above, flag_raised (e.g. LOW_LIQUIDITY, QUOTE_DEPEG), spread_above, executable_spread_above.
- A webhook or email delivery target is required. Alerts are edge-triggered with a cooldown — no repeat spam while a condition stays true.
- No depth at the requested size = the rule stays idle. It never fires on a phantom number.
- Rule limits: 25 (Pro), 250 (API), 1,000 (Team). GET /v1/alerts lists your rules; DELETE /v1/alerts/:id removes one.
GET /v1/export/:symbol.csvapiFull mark history as CSV, with a venue column. venue=<venue> for one venue, venue=all for every venue in one file; without it, the primary venue.
Request
curl -o nvda-marks.csv "https://api-data.altstreet.investments/v1/export/NVDA.csv?venue=all" -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
date,venue,mark_usd,premium,underlying_usd,samples_used,samples_excluded,flags
2026-07-31,rhchain_univ4,196.79,0.0041,195.98,7,1,
2026-07-31,solana_xstocks,197.02,0.0053,195.98,6,0,GET /v1/export/spreads-:symbol.csvapi90 days of spread history as CSV.
Request
curl -o coin-spreads.csv https://api-data.altstreet.investments/v1/export/spreads-COIN.csv -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
ts,spread,venue_a,venue_b,venue_count
1785469200,0.0198,rhchain_v4,solana_xstocks,2GET /v1/usageany keySelf-serve metering: your tier, today's request count, and your limits.
Request
curl https://api-data.altstreet.investments/v1/usage -H "Authorization: Bearer $PRICEFEED_KEY"Response shape
{
"tier": "pro",
"today": { "date": "2026-07-31", "requests": 41 },
"limits": { "requestsPerHour": 1000, "marksHistoryDays": null }
}Scope, in plain terms
This is decision support on a 15-minute feed, not an execution edge, and it is sold as such. Executable numbers are net of price impact, pool fees, and gas — before venue-access, bridging, and hedging costs. Marks are withheld when data fails the liquidity gates: a missing number is the honest answer, not an outage. Commercial redistribution requires the API plan or above. Nothing here is investment advice.
