FreeCashFlow.org provides free cash flow analysis and investment research in both human-readable (HTML) and machine-readable (JSON) formats.
This page documents the available API endpoints and structured data for AI agents, chatbots, and automated research systems.
Description: List of all analyzed companies with metadata
URL: https://freecashflow.org/api/companies.json
Response Format: JSON
Update Frequency: Updated as new analyses are published
{
"version": "1.0",
"last_updated": "2026-02-13T08:00:00Z",
"total": 38,
"companies": [
{
"ticker": "TK",
"name": "Teekay Corporation",
"url": "https://freecashflow.org/blog/tk-teekay-fcf-analysis-deep-dive",
"slug": "tk-teekay-fcf-analysis-deep-dive",
"analysis_date": "2025-10-18",
"summary": "Shipping company FCF analysis...",
"category": "Investment Analysis"
}
],
"educational_content": [ ... ],
"meta": {
"description": "API endpoint providing structured data...",
"documentation": "https://freecashflow.org/for-ai-agents.html",
"contact": "[email protected]"
}
}
All pages include Schema.org structured data in JSON-LD format:
/stock/<TICKER>): FinancialProduct + FAQPage schemas with the ticker's screener figures<head> section of HTML pages using <script type="application/ld+json">
38 deep-dive free cash flow analyses of publicly traded companies, each built from SEC 10-K/20-F XBRL data. Examples:
The full list is in /api/companies.json; every published post is linked from /blog.
Free cash flow investment education and methodology:
curl https://freecashflow.org/api/companies.json
curl https://freecashflow.org/blog/tk-teekay-fcf-analysis-deep-dive
# Parse JSON-LD from HTML
curl -s https://freecashflow.org/ | \
grep -oP '<script type="application/ld\+json">\K.*?(?=</script>)'
/api/companies.json and every per-ticker file under /api/companies/ are served as static files, ahead of the rate limiters. Enumerate all 741 tickers freely./api/stocks, /api/screens, /api/blog/posts (list and individual posts), /api/blog/tags, /api/blog/categories and /api/blog/rss, on GET and HEAD.Access-Control-Allow-Origin: * and accept no credentials. Authenticated and write routes restrict origins to freecashflow.org and do accept credentials./api/blog/posts returns every published post with full article bodies (~1.2 MB) unless you page it. Use ?limit= (max 100) and ?offset=; the response carries total, limit and offset./api/companies/ is unthrottled and is the intended path for it.
All API responses include standard headers:
Content-Type: application/json; charset=utf-8Access-Control-Allow-Origin: * — on the public read routes and the static JSON. No Access-Control-Allow-Credentials is sent with it; the two cannot be combined under the CORS spec.Cache-Control: public, max-age=3600 on the pre-generated JSON under /api/companies.RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset on rate-limited routes. The static JSON carries none, because no limiter sees it. Well-behaved agents should read these and back off.Recommended user-agent formats for identification:
GPTBot/1.0 - OpenAIClaude-Web/1.0 - AnthropicGoogle-Extended - Google AIYourBotName/1.0 (+https://your-site.com) - Custom agentsGPTBot, ChatGPT-User, OAI-SearchBot, Google-Extended, ClaudeBot, Claude-User, Claude-SearchBot, Claude-Web, anthropic-ai, PerplexityBot, Perplexity-User, Applebot-Extended, Amazonbot, Meta-ExternalAgent, cohere-ai, and CCBot are explicitly allowed in robots.txt. Any agent not named there is covered by the User-agent: * rules, which allow everything except /uploads/, /admin/ and /dashboard/.
For questions, bulk data access, or partnership inquiries:
Version 1.2 - September 2, 2026
/api/companies — the index and all 741 per-ticker files — is now served ahead of the rate limiters and is not throttledAccess-Control-Allow-Origin: * without credentials; authenticated routes keep the origin allowlist/blog and /stock now carry a crawlable link to every published post and covered tickerVersion 1.1 - August 29, 2026
Version 1.0 - February 13, 2026
Last updated: September 2, 2026
© 2026 FreeCashFlow.org | Built for humans and AI agents