API
A small, read-only JSON API with everything on this site: Brett’s profile and companies, every podcast appearance, research and press. No key, no auth, CORS open.
Machine-readable spec: openapi.json. Every page is also available as Markdown (send Accept: text/markdown or append .md); see llms.txt.
Endpoints
GET /api/v1/profile.json(getProfile)Bio, roles, companies and social profiles.Try: brettfarmiloe.com/api/v1/profile.jsonGET /api/v1/podcasts.json(listPodcasts)Every podcast appearance, newest first, with show, date, summary, key takeaways, quote and listen links.Try: brettfarmiloe.com/api/v1/podcasts.jsonGET /api/v1/research.json(listResearch)Original research from Featured, HARO and Connectively.Try: brettfarmiloe.com/api/v1/research.jsonGET /api/v1/press.json(listPress)Media mentions and press releases.Try: brettfarmiloe.com/api/v1/press.jsonGET /api/v1/search(search)Case-insensitive match on every word of q across titles, summaries, takeaways and highlights. Newest first.Parameters: q (required): Words to match, e.g. "AI pitches" or "HARO". · type: Restrict to one kind of item. · limit: Maximum results.Try: brettfarmiloe.com/api/v1/search?q=AI+pitches&type=podcast
Errors
Errors are JSON with one shape: { "error": { "code", "message", "hint" } }. Unknown /api paths return 404 not_found; bad search input returns 400.
MCP server
MCP server (Streamable HTTP, no auth) at https://brettfarmiloe.com/api/mcp with tools get_profile, search, list_podcasts, get_quotes and get_page. Manifest: https://brettfarmiloe.com/mcp.json.
Versioning and deprecation
/api/v1/ is stable. Any breaking change ships as /api/v2/, with v1 kept for at least 90 days and announced with Deprecation and Sunset response headers and on this page.