The API for turning articles into AI briefings and audio.
Sornic exposes its full pipeline as a REST API. Pass any article URL — get back a structured briefing with summary, takeaways, topics, and optional audio. One call.
Endpoints
| Endpoint | What it does | Free limit |
|---|---|---|
| POST/api/v1/briefing | URL → full briefing (summary + takeaways + topics) | 50/month |
| POST/api/v1/extract | URL → clean article text | 100/month |
| POST/api/v1/analyze | Text → AI summary + takeaways | 50/month |
| GET/api/v1/usage | Current period usage for your key | Unlimited |
| POST/api/v1/ttscoming soon | Text → MP3 audio URL (coming soon) | Coming soon |
Authentication
All requests require a Sornic API key passed as a Bearer token. Generate your key on your account page (requires login).
Authorization: Bearer sk_sornic_<your-key>
POST /api/v1/briefing
FlagshipThe main endpoint. Pass a URL — get back a full AI briefing in one call. Results are cached for 24h, so repeated requests for the same URL are free.
curl -X POST https://sornic.com/api/v1/briefing \
-H "Authorization: Bearer sk_sornic_..." \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/article"}'{
"requestId": "req_a1b2c3d4",
"title": "Article Title",
"url": "https://example.com/article",
"summary": "2-3 sentence summary of the article...",
"takeaways": [
"Key point one",
"Key point two",
"Key point three"
],
"highlights": [
{ "text": "Exact quote from article", "context": "Main argument" }
],
"actionItems": ["Action if article is instructional"],
"difficulty": "intermediate",
"topics": ["technology", "ai", "productivity"],
"articleType": "essay",
"estimatedReadTime": "8 min",
"estimatedListenTime": "5 min",
"wordCount": 1200,
"audioUrl": null,
"cached": false
}To prevent duplicate charges on retry, pass an Idempotency-Key: <uuid> header.
POST /api/v1/extract
URL → clean readable text. Removes ads, navigation, cookie banners, and boilerplate. Formatted for TTS and AI processing.
curl -X POST https://sornic.com/api/v1/extract \
-H "Authorization: Bearer sk_sornic_..." \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/article"}'POST /api/v1/analyze
Pass article text — get back AI analysis. Combine with /extract if you need both, or use /briefing to do both in one call.
curl -X POST https://sornic.com/api/v1/analyze \
-H "Authorization: Bearer sk_sornic_..." \
-H "Content-Type: application/json" \
-d '{"text": "Article text here...", "title": "Optional title"}'GET /api/v1/usage
Check your current month usage and remaining quota.
curl https://sornic.com/api/v1/usage \ -H "Authorization: Bearer sk_sornic_..."
Rate Limits
| Endpoint | Free |
|---|---|
| /api/v1/briefing | 50 / month |
| /api/v1/extract | 100 / month |
| /api/v1/analyze | 50 / month |
| /api/v1/tts | Coming soon |
Limits reset on the 1st of each month. Rate-limited requests return HTTP 429 with a requestId for tracing.
Also available as an MCP server
Use Sornic directly inside Claude, Cursor, or any MCP-compatible AI client. No copy-pasting URLs — just ask your AI to brief an article and it calls Sornic automatically.
MCP setup guide →API keys are free. Login required to generate one.
Get started free