PtData
Point-in-time US equity fundamentals, SEC filings and survivorship-free index rosters, as they were known on any past date. Free tier with no API key.
Hosted MCP Server
npx add-mcp 'https://api.ptdata.io/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Point-in-time corporate data
Base URL https://api.ptdata.io. Free tier is open over HTTPS — no API key. Four product endpoints (same surface as the MCP tools).
Access tiers
| Tier | Auth | Limit | Use |
|---|---|---|---|
| Free | None | 120/min · 200/day per IP (UTC) | Evaluation / suite |
| Pro | Authorization: Bearer <key> | 1,200/min · 15,000/day per key | Commercial use of the API/service |
| Scale | Authorization: Bearer <key> | 5,000/min · 100,000/day per key | Heavy production · contact sales for more |
Invalid Bearer → 401. Over limit → 429 + Retry-After (scope: rate or daily; tier: free/pro/scale). Free daily quota resets at UTC midnight. Paid: monthly or yearly (2 months free on annual); same limits either way.
Endpoints
GET/v1/fundamentals
Point-in-time fundamentals as known on as_of_date (YYYY-MM-DD).
Share counts, XBRL era only, unit shares: shares_outstanding (balance-sheet date), weighted_avg_shares_basic, and weighted_avg_shares_diluted. Annual figures are the validated coordinate. Share classes are not summed. A filer with no reported total returns unavailable.
# revenue + net income for GE as known 2018-02-28
curl -sS "https://api.ptdata.io/v1/fundamentals?ticker=GE&as_of_date=2018-02-28&metrics=revenue&metrics=net_income&fiscal_year=2017&fiscal_period=FY"
# shares outstanding, same coordinate
curl -sS "https://api.ptdata.io/v1/fundamentals?ticker=GE&as_of_date=2018-02-28&metrics=shares_outstanding&fiscal_year=2017&fiscal_period=FY"
GET/v1/index-constituents
Survivorship-free index roster as of a date. Codes: SP500, DJIA, DJT, DJU, NDX.
curl -sS "https://api.ptdata.io/v1/index-constituents?index=SP500&as_of_date=2020-12-21"
GET/v1/filings
SEC filings available on as_of_date, newest first (optional form_type).
curl -sS "https://api.ptdata.io/v1/filings?ticker=AAPL&as_of_date=2023-12-01&form_type=10-K"
GET/v1/earnings-event
Earnings event: 8-K acceptance time, as-reported figures, realized price reaction.
curl -sS "https://api.ptdata.io/v1/earnings-event?ticker=AAPL&fiscal_year=2023&fiscal_period=FY"
MCP
Streamable HTTP at https://api.ptdata.io/mcp. Free: URL only. Pro: same URL + Bearer in the client config. Tools mirror the four endpoints above.
Pro example
curl -sS -H "Authorization: Bearer ptd_live_…" \
"https://api.ptdata.io/v1/fundamentals?ticker=AAPL&as_of_date=2024-01-15&metrics=revenue&fiscal_period=FY"
Machine-readable
OpenAPI schema (product endpoints only): /openapi.json · interactive explorer (advanced): /openapi/swagger