Skip to main content

Base URL

All API requests should be made to:
https://api.marketmotion.xyz/api

Authentication

Include your API key in the X-API-Key header:
curl -H "X-API-Key: your_api_key" https://api.marketmotion.xyz/api/entities
Most endpoints work without authentication at reduced rate limits.

Rate Limits

TierLimitAuthentication
Anonymous30 req/minNone
Test Key100 req/minX-API-Key header
Live Key300 req/minX-API-Key header

Response Format

All responses follow this structure:

Success (list)

{
  "success": true,
  "items": [...],
  "nextCursor": "cursor-string-or-null"
}

Success (single item)

{
  "success": true,
  "entity": { ... }
}

Error

{
  "success": false,
  "error": "Error message describing what went wrong"
}

HTTP Status Codes

CodeDescription
200Success
400Bad request — invalid parameters
401Unauthorized — invalid API key
404Not found — entity or market doesn’t exist
429Rate limit exceeded
500Internal server error

Pagination

Entities — cursor-based

Entity list endpoints use cursor-based pagination:
ParameterTypeDefaultDescription
limitnumber50Results per page
cursorstringCursor from previous response’s nextCursor
{
  "success": true,
  "items": [...],
  "nextCursor": "eyJpZCI6Imxhc3QtaWQifQ"
}
Pass nextCursor as the cursor query parameter to fetch the next page. When nextCursor is null, there are no more results.

Markets — offset-based

Market prediction endpoints use offset-based pagination:
ParameterTypeDefaultDescription
limitnumber50Results per page (max: 100)
offsetnumber0Number of results to skip

Endpoints

Entities

MethodEndpointDescription
GET/entitiesList and search entities (use ?q= for search)
GET/entities/:slugGet entity details
GET/entities/:slug/fullGet entity with all related data
GET/entities/:slug/marketsGet markets for an entity
GET/entities/:slug/newsGet news for an entity
GET/entities/:slug/relationshipsGet entity relationships
GET/entities/:slug/relatedGet related entities by graph traversal
GET/entities/subcategoriesGet subcategories for a category
GET/entities/by-market/:marketIdGet entities linked to a market

Taxonomy

MethodEndpointDescription
GET/taxonomy/statsCategory and subcategory counts
GET/taxonomy/:category/:subcategory/entitiesEntities in a subcategory
GET/taxonomy/:category/:subcategory/groupsGroups within a subcategory
GET/taxonomy/:category/:subcategory/:group/entitiesEntities in a group
GET/schemasSnapshot and attribute schemas

Markets

MethodEndpointDescription
GET/markets/predictionsList prediction markets (includes bid/ask)
GET/markets/searchSearch markets by title
GET/markets/categoriesMarket categories and product types
GET/markets/detail/:symbolMarket detail by symbol
GET/markets/candles/:symbolOHLCV candle data
GET/markets/cross-venueCross-venue matched markets (includes bid/ask)
GET/markets/entity-connectedCross-venue markets via entity links
GET/markets/predictions/categoriesPrediction market categories
GET/markets/:symbol/orderbookHyperliquid L2 orderbook
GET/markets/polymarket/:tokenId/orderbookPolymarket orderbook

Graph Intelligence

MethodEndpointDescription
GET/entities/:slug/graphEntity relationship graph
GET/graph/viewConfigurable graph view builder
GET/graph/entity/:id/neighborhoodEntity neighborhood subgraph
GET/graph/entity/:id/marketsEntity market exposures with drivers
GET/graph/entity/:id/timelineEntity event timeline
GET/graph/entity/:id/eventsEntity events with impact scores
GET/graph/entity/:id/fact/:key/historyFact version history
GET/graph/outcome/:id/contextMarket outcome context graph
GET/graph/outcome/:id/pricesCross-venue prices for an outcome
GET/graph/outcome/:id/historyOutcome price history
GET/graph/topic/:topicDiscover entities/markets by topic
GET/graph/event/:id/impactEvent impact chain
GET/graph/moversTop entity movers
GET/graph/mispricingsCross-venue mispricings
GET/graph/mispricings/topTop mispricing opportunities
GET/graph/mispricings/check/:outcomeIdCheck if outcome is mispriced
GET/graph/mispricings/statsMispricing aggregate stats
GET/graph/cross-venue/:outcomeIdCross-venue data for outcome
GET/graph/kalshi/overlappingKalshi/Polymarket overlapping markets
GET/graph/statsGraph database stats

Intelligence Signals

MethodEndpointDescription
GET/intelligence/entity/:slug/impactEntity impact coefficients across markets
GET/intelligence/entity/:slug/sentimentMulti-window entity sentiment scores
GET/intelligence/market/:id/signalsISQ-scored signals for a market

Attribution

MethodEndpointDescription
GET/attribution/entity/:slugEntity impact coefficients
GET/attribution/market/:venue/:marketIdMarket entity attributions
GET/attribution/top-moversTop-moving entities
GET/attribution/predictPredict market impact of attribute change
GET/attribution/causality/:slugEntity causal relationships
GET/attribution/top-causalTop causal entities

Alerts

MethodEndpointDescription
GET/alerts/inboxAlert inbox with filtering
GET/alerts/:idAlert detail with entity and market context
GET/alerts/:id/outcomeAlert outcome tracking
GET/alerts/outcomes/statsAlert performance statistics
GET/alerts/outcomes/topTop-performing alerts

Conflicts

MethodEndpointDescription
GET/conflictsActive geopolitical conflicts
GET/conflicts/:slugConflict detail with threat level
GET/conflicts/:slug/signalsIntelligence signals for a conflict
GET/conflicts/:slug/marketsMarkets affected by a conflict

Source Analytics

MethodEndpointDescription
GET/analytics/source-scoresSource signal quality scores
GET/analytics/source-scores/:authorDetailed source analytics
GET/analytics/source-scores/:author/predictPredict source reliability

B2B API

MethodEndpointDescription
GET/b2b/suggestionsMarket suggestions
GET/b2b/suggestions/trendingTrending suggestions
GET/b2b/peoplePeople with market exposure
GET/b2b/people/:slugPerson detail with markets and alerts
GET/b2b/people/:slug/marketsPerson’s markets with cross-venue data
GET/b2b/gapsDetected market gaps (Pro)
GET/b2b/gaps/:slugGap detail (Pro)
CRUD/b2b/webhooksWebhook management (Pro)

Portfolio

MethodEndpointDescription
GET/portfolio/pnl-historyPnL chart data (1h, 24h, 7d, 30d, all)
GET/portfolio/positionsCurrent positions from snapshots
GET/portfolio/summaryAccount value, margin, daily PnL
GET/portfolio/ordersOpen Hyperliquid orders
GET/portfolio/fillsHyperliquid trade fill history
POST/portfolio/refreshTrigger manual position snapshot

LLM Context

For AI systems, we provide a machine-readable documentation file:
https://marketmotion.xyz/llms.txt
This contains all endpoints, schemas, and examples optimized for LLM consumption.

SDKs

  • CLI: npm install -g @marketmotion/cli (v0.4.0)
  • TypeScript SDK — coming soon
  • Python SDK — coming soon

Support