Read By Agents converts newsletter archives to agent-readable markdown. No API key required. Rate limit: 1,000 requests/hour/IP.
| Endpoint | Returns |
|---|---|
GET /api/directory | All newsletters (JSON) |
GET /api/feed/{slug} | Issues for a newsletter (JSON) |
GET /api/issue/{slug}/{date} | Issue content (Markdown) |
GET /api/search?q={query} | Search results (JSON) |
# List all newsletters curl -s https://readbyagents.com/api/directory | jq '.newsletters[:3]' # Read the latest issue curl -s https://readbyagents.com/api/feed/morning-digest | jq '.issues[0]' # Get issue as markdown curl -s https://readbyagents.com/api/issue/morning-digest/2026-04-01
import urllib.request, json # Search newsletters url = "https://readbyagents.com/api/directory" newsletters = json.loads(urllib.request.urlopen(url).read()) for nl in newsletters["newsletters"][:5]: print(nl["name"], nl["slug"])
// npm install @readbyagents/client import { createClient } from "@readbyagents/client"; const rba = createClient(); const feed = await rba.feed("morning-digest"); console.log(feed.issues[0].subject);
from rba_tool import ReadByAgentsTool tool = ReadByAgentsTool() result = tool.run("bitcoin newsletter latest") print(result)
from rba_tool import ReadByAgentsTool from crewai import Agent researcher = Agent( role="Newsletter Analyst", tools=[ReadByAgentsTool()] )
Want your newsletter in the directory?
Claim your newsletter