API
Newsletters, issues and full-text search, available as read-only JSON.
Get an API key
Sign in with GitHub to create and manage your API keys.
Authentication
Send your key in the Authorization header with every request. A browser session alone does not grant API access. Keep keys private and use them from your server or scripts.
curl -H 'Authorization: Bearer YOUR_API_KEY' \
'https://mailwal.com/api/v1/search?q=interest+rates&limit=3'Keys are shown once and stay valid after you sign out. You can have up to 10 keys and revoke any key from your account. Missing, invalid or revoked keys receive 401.
Endpoints
- GET /api/v1/newsletters
- Every published newsletter, most recently published first.
- GET /api/v1/newsletters/{slug}
- One newsletter.
- GET /api/v1/newsletters/{slug}/issues?limit=20&cursor=…
- Its issues, newest first. The response’s
nextcursor identifies the following page, or isnull. - GET /api/v1/issues?limit=20&cursor=…
- The newest issues across all newsletters.
- GET /api/v1/issues/{id}
- One issue with its cleaned
contentHtml,contentTextand links. - GET /api/v1/search?q=…&limit=20&offset=0
- Full-text search. Quote a phrase for an exact match; prefix a word with
-to exclude it. Thesnippetis HTML-escaped with matches in<mark>.
Limits and responses
Up to 120 requests per minute per account, with an additional per-client search limit. A 429 response includes Retry-After. Page sizes range from 1 to 50; search offsets range from 0 to 1000.
Responses are not cached. Browser clients can use CORS with the Authorization header. The API returns only published newsletters and visible issues.