Endpoint Playground
Searches posts across all of Substack and returns the publications that also matched, unlike /substack/publication/posts which searches within a single publication. Set focus_publication_id to additionally receive that one publication's own matching posts in focused_posts alongside the site-wide results.
14 Oct 2026: 20 posts; 9 fields had a value in every checked item and 4 varied between items.
Sample value profiles: published_at: 2026-09-16 to 2026-10-13; comment_count: 1 to 77, median 3; url: arnoldkling.substack.com and 19 other hosts.
curl 'https://api.crawlora.net/api/v1/substack/search?query=artificial+intelligence' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| query | string | Yes | artificial intelligence | Search text |
| page | integer | No | Zero-based page, 20 posts per page | |
| focus_publication_id | integer | No | Numeric publication id whose own matching posts are returned in focused_posts | |
| focus_limit | integer | No | Cap on focused_posts, 1-20. Requires focus_publication_id. |
{
"code": 200,
"data": {
"query": "artificial intelligence",
"page": 0,
"has_more": true,
"posts": [
{
"id": 214198231,
"title": "The State of AI in 2026",
"url": "https://example.substack.com/p/the-state-of-ai-in-2026",
"type": "newsletter",
"audience": "everyone",
"paywalled": false
}
],
"publications": [
{
"id": 6349492,
"name": "SemiAnalysis",
"subdomain": "semianalysis",
"url": "https://semianalysis.substack.com"
}
]
},
"msg": "success"
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.