Briefings API
Generate and retrieve intelligence briefings.
List Briefings
GET /api/briefings
Query Parameters:
| Parameter | Type | Description |
|---|---|---|
from | string | Start date |
to | string | End date |
limit | number | Max results |
Response:
{
"data": [
{
"id": 56,
"title": "Strategic Intelligence Briefing",
"generatedAt": "2026-02-07T05:00:00Z",
"period": {
"from": "2026-02-06T05:00:00Z",
"to": "2026-02-07T05:00:00Z"
},
"stats": {
"sources": 15,
"articles": 42,
"verified": 38
}
}
]
}
Get Briefing
GET /api/briefings/:id
Response:
{
"data": {
"id": 56,
"title": "Strategic Intelligence Briefing",
"content": "## Strategic Intelligence Briefing\n\n...",
"generatedAt": "2026-02-07T05:00:00Z",
"period": {
"from": "2026-02-06T05:00:00Z",
"to": "2026-02-07T05:00:00Z"
},
"stats": {
"sources": 15,
"articles": 42,
"verified": 38
},
"articles": [1234, 1235, 1236]
}
}
Generate Briefing
POST /api/briefings/generate
Request Body:
{
"hours": 24,
"domains": ["geopolitics", "economics"],
"minConfidence": 0.7,
"maxArticles": 50,
"sourceListId": 5
}
Response: 202 Accepted
{
"data": {
"id": 57,
"status": "generating",
"estimatedSeconds": 30
}
}
Poll for completion:
GET /api/briefings/57
Deliver Briefing
Send a briefing to configured channels:
POST /api/briefings/:id/deliver
Request Body:
{
"channels": ["telegram"]
}
Response:
{
"data": {
"delivered": true,
"channels": [
{"channel": "telegram", "success": true}
]
}
}
Latest Briefing
Get the most recent briefing:
GET /api/briefings/latest