The HedgeFundAPI
A REST API for grounded financial intelligence — SEC filings, earnings transcripts, audited XBRL financials, and agent-driven Q&A. Every response is cited to its source.
https://api.hedgefundapi.comAuthentication
Authenticate every request with a bearer token. Log in with your Variant account to mint a key — your Variant token balance funds API usage.
Authorization: Bearer hfk_live_YOUR_KEY
Quickstart
Ask a research question about any ticker in a single call — grounded and cited.
curl -X POST \
$API_BASE/v1/ask \
-H "Authorization: Bearer hfk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"ticker":"AAPL","question":"What is the activist case for this company?"}'/v1/workflowsCreate an agent
Create an agent: a name + a persona (its mandate/lens, in plain English — the same idea as your Variant investment strategy + philosophy). Returns an agent id (wf_...) you pass to /v1/workflow/ask. When you're signed in with Variant it's automatically linked to you and shows up in your agents. Manage with GET /v1/workflows (list yours), GET/PATCH/DELETE /v1/workflows/{id}.
namerequiredAgent handle — 3-12 chars, lowercase letters/numbers/_ only, no spaces (like a username). Must be unique among your agents.
descriptionrequiredThe analyst's mandate / lens, in plain English — how it analyzes and what it hunts for (same idea as your Variant strategy + philosophy).
image_refOptional public image URL to use as the bot's face. Generates a cartoon + realistic avatar from it (same pipeline as a Variant selfie) and charges the owner's tokens.
curl -X POST \
$API_BASE/v1/workflows \
-H "Authorization: Bearer hfk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"activist_desk","description":"Activist investor focused on operational turnarounds, inflection points, and non-consensus views.","image_ref":"https://example.com/photo.jpg"}'{
"id": "wf_a1b2c3d4e5f6",
"owner_id": "usr_variant_9f2",
"name": "activist_desk",
"description": "Activist investor focused on operational turnarounds, inflection points, and non-consensus views.",
"is_default": false,
"image_ref_url": "https://example.com/photo.jpg",
"avatar_url": "https://blob.../bot-avatars/…-abc.png",
"cartoon_avatar_url": "https://blob.../bot-avatars/…-cartoon-abc.png",
"created_at": "2026-07-20T20:40:00Z",
"updated_at": "2026-07-20T20:40:00Z"
}/v1/workflowsList my agents (bots)
List the bots you've created, newest first. Optionally narrow to one end-user with owner_id. Scoped to your API key — you never see another tenant's bots.
owner_idNarrow to one end-user (Variant user id)
limitMax bots to return (1-200)
curl -X GET \ $API_BASE/v1/workflows?owner_id=%E2%80%A6&limit=50 \ -H "Authorization: Bearer hfk_live_YOUR_KEY"
{
"count": 1,
"workflows": [
{
"id": "wf_a1b2c3d4e5f6",
"owner_id": "usr_variant_9f2",
"name": "activist_desk",
"description": "Activist investor focused on operational turnarounds, inflection points, and non-consensus views.",
"is_default": false,
"created_at": "2026-07-20T20:40:00Z",
"updated_at": "2026-07-20T20:40:00Z"
}
]
}/v1/workflow/askAsk an agent
Ask a ticker question through one of your agents. Leave the agent blank to use your default agent (from your Variant strategy), or pass a bot_id to pick a specific one. Grounded in recent SEC filings + earnings transcripts, with source citations.
tickerrequiredStock ticker symbol
questionrequiredNatural-language question
bot_idWhich agent to ask — its id (wf_…) from GET /v1/workflows. Leave blank to use your default agent.
modeAnswer length: chat (2-4 sentences), summary (a paragraph), deep (full report).
curl -X POST \
$API_BASE/v1/workflow/ask \
-H "Authorization: Bearer hfk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"ticker":"HOG","question":"Why is it underperforming and how would you fix it?","bot_id":"wf_… (optional)","mode":"chat"}'{
"ticker": "HOG",
"question": "Why is it underperforming and how would you fix it?",
"headline": "HOG's margins are structurally impaired — the fix is a ruthless cost reset, not a demand story.",
"answer": "HOG is underperforming due to a structural margin collapse driven by $45M in Q1 tariffs, a 54% HDFS revenue drop from the capital-light pivot, and $49M in elevated opex. The fix is executing the \"back to the bricks\" operational reset — leveraging the 38% U.S. market share and 21% NA retail growth to drive volume while forcing the new COO to cut costs. The inflection point is the transition from a balance-sheet-heavy financial model to a pure-play motorcycle operator.",
"query_type": [
"general_company_analysis"
],
"sources": [
{
"source_type": "Earnings transcript",
"form_type": "Earnings Call",
"ticker": "HOG",
"filing_date": "2026-05-05",
"source_url": "https://www.sec.gov/..."
},
{
"source_type": "SEC filing",
"form_type": "10-Q",
"ticker": "HOG",
"filing_date": "2026-05-06",
"source_url": "https://www.sec.gov/..."
}
],
"model_name": "qwen3.6-35b",
"status": "ready",
"created_at": "2026-07-20T20:14:03Z"
}/v1/recent-events/{ticker}Recent special-situation events
Instant (no LLM) structured feed of a ticker's recent special-situation filings — activist 13D, proxy (DEF 14A), governance / board / CFO changes, M&A — each with pre-computed analysis: one-liner, why it matters, catalyst strength, and governance / ownership impact.
tickerrequiredStock ticker symbol
limitMax events to return (1-50)
curl -X GET \ $API_BASE/v1/recent-events/EVGN?limit=15 \ -H "Authorization: Bearer hfk_live_YOUR_KEY"
{
"ticker": "EVGN",
"count": 2,
"events": [
{
"ticker": "EVGN",
"filing_type": "SC 13D",
"filing_date": "2026-07-10",
"category": "Activist Stake",
"special_situation": true,
"catalyst_strength": "hard",
"one_sentence": "Evogene discloses an ongoing activist campaign demanding board replacement.",
"why_it_matters": "An activist demanding removal of all directors except the CEO signals a governance battle and potential strategic overhaul.",
"governance_impact": "Board composition under direct threat; proxy contest likely.",
"ownership_impact": "Activist has built a reportable 5%+ position.",
"source_url": "https://www.sec.gov/..."
},
{
"ticker": "EVGN",
"filing_type": "6-K",
"filing_date": "2026-07-17",
"category": "Capital Raise",
"special_situation": false,
"catalyst_strength": "soft",
"one_sentence": "ATM offering ceiling increased amid the proxy contest.",
"source_url": "https://www.sec.gov/..."
}
]
}/v1/askAsk a research question
Answer a research question about a ticker using SEC filings + earnings transcripts. The response includes the answer text, the query type detected by the router, and a list of source documents with URLs.
tickerrequiredStock ticker symbol
questionrequiredNatural-language question (5-300 chars works best)
curl -X POST \
$API_BASE/v1/ask \
-H "Authorization: Bearer hfk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"ticker":"AAPL","question":"What is the activist case for this company?"}'{
"ticker": "AAPL",
"question": "What is the activist case?",
"answer": "Apple has not faced any named activist investors as of the most recent earnings call. However, several aspects of the business present a potential activist case...",
"query_type": [
"activist_angle"
],
"sources": [
{
"source_type": "Earnings transcript",
"form_type": "Earnings Call",
"ticker": "AAPL",
"filing_date": "2026-04-30",
"section_name": "Q2 FY2026",
"source_url": "https://www.sec.gov/..."
},
{
"source_type": "SEC filing",
"form_type": "8-K",
"ticker": "AAPL",
"filing_date": "2026-05-08",
"source_url": "https://www.sec.gov/..."
}
],
"model_name": "Qwen/Qwen2.5-7B-Instruct",
"created_at": "2026-05-12T14:23:01Z"
}/v1/searchSemantic search inside filings
Vector search over a ticker's filing chunks (HNSW pgvector). Returns the most similar passages to your query along with their filing context.
tickerrequiredStock ticker
queryrequiredSemantic query string
limitNumber of chunks to return (1-50)
curl -X POST \
$API_BASE/v1/search \
-H "Authorization: Bearer hfk_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"ticker":"AAPL","query":"operating margin pressure cloud","limit":8}'[
{
"ticker": "AAPL",
"section_name": "Item 7. MD&A",
"chunk_text": "Gross margin in the fourth quarter of fiscal 2025 was 45.2%, compared to 45.9% in the prior year...",
"source_url": "https://www.sec.gov/Archives/edgar/data/320193/...",
"similarity": 0.91
}
]/v1/feedGlobal 8-K feed
Latest 8-K events across all tracked tickers, newest first. Each event is LLM-classified as hard catalyst, soft (special situation), or routine.
limitHow many events to return (1-200)
offsetPagination offset
filterFilter by classification
curl -X GET \ $API_BASE/v1/feed?limit=50&offset=0&filter=all \ -H "Authorization: Bearer hfk_live_YOUR_KEY"
[
{
"id": "8f3...c2",
"ticker": "NKE",
"filing_date": "2026-03-31",
"tags": [
"capital_allocation",
"buyback"
],
"hard_catalyst": true,
"catalyst_confidence": 0.94,
"event_summary": "Nike announced a $20B share repurchase program effective immediately.",
"source_url": "https://www.sec.gov/..."
}
]