Documentation Index Fetch the complete documentation index at: https://mintlify.com/kagisearch/kite-public/llms.txt
Use this file to discover all available pages before exploring further.
Batches are the core publishing unit of Kagi News. Each batch represents a snapshot of the news at a point in time and contains one or more categories, each of which holds a set of story clusters. The endpoints below let you enumerate all published batches, jump straight to the latest one, and drill into per-batch metadata such as available languages, the Chaos Index score, and On This Day historical events.
List Batches
Returns a paginated list of all available batches, ordered most-recent first. Use this endpoint to discover batch IDs for subsequent requests.
Response
Returns a BatchesResponse object.
Ordered array of batch summary objects, most recent first. Unique batch identifier (UUID).
ISO 8601 datetime string indicating when the batch was published, e.g. "2024-11-15T08:00:00.000Z".
Primary language code for this batch (e.g. "en", "de", "fr").
Number of top-level categories contained in the batch.
Total number of story clusters across all categories.
Total number of source articles indexed in the batch.
Numeric Chaos Index score for the batch (0–100). Present only when the index has been computed.
Short human-readable description of the Chaos Index score. Present only when chaosIndex is set.
ISO 8601 datetime when the Chaos Index was last computed. Present only when chaosIndex is set.
Example
curl https://kite.kagi.com/api/batches
{
"batches" : [
{
"id" : "01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b" ,
"createdAt" : "2024-11-15T08:00:00.000Z" ,
"language" : "en" ,
"totalCategories" : 12 ,
"totalClusters" : 148 ,
"totalArticles" : 1024 ,
"chaosIndex" : 62 ,
"chaosDescription" : "Moderately turbulent news cycle." ,
"chaosLastUpdated" : "2024-11-15T09:30:00.000Z"
}
]
}
Get Latest Batch
Returns metadata for the most recently published batch. This is a convenience shortcut that avoids listing all batches and inspecting the first result.
Response
Returns a single BatchInfo object (same schema as each element of the batches array above).
Example
curl https://kite.kagi.com/api/batches/latest
{
"id" : "01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b" ,
"createdAt" : "2024-11-15T08:00:00.000Z" ,
"language" : "en" ,
"totalCategories" : 12 ,
"totalClusters" : 148 ,
"totalArticles" : 1024 ,
"chaosIndex" : 62 ,
"chaosDescription" : "Moderately turbulent news cycle." ,
"chaosLastUpdated" : "2024-11-15T09:30:00.000Z"
}
Get Batch by ID
GET /api/batches/{batchId}
Returns metadata for a specific batch identified by its UUID.
Path Parameters
The UUID of the batch to retrieve. Obtain batch IDs from GET /api/batches or GET /api/batches/latest.
Response
Returns a single BatchInfo object.
Example
curl https://kite.kagi.com/api/batches/01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b
{
"id" : "01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b" ,
"createdAt" : "2024-11-15T08:00:00.000Z" ,
"language" : "en" ,
"totalCategories" : 12 ,
"totalClusters" : 148 ,
"totalArticles" : 1024
}
List Categories in a Batch
GET /api/batches/{batchId}/categories
Returns all categories available in the specified batch, along with story counts and read counters. Use the lang query parameter to request a localised view of the category list.
Path Parameters
UUID of the target batch.
Query Parameters
BCP 47 language code (e.g. en, de, fr, ja). When supplied, the API returns category names and metadata localised to the requested language, if available. Falls back to the batch’s primary language when the requested language is not available.
Response
Returns a BatchCategoriesResponse object.
UUID of the batch these categories belong to.
ISO 8601 datetime when the batch was published.
true if the batch includes On This Day historical events for its date.
Array of category summary objects. Unique row identifier for this category within the batch.
Stable category slug (e.g. "world", "technology", "science").
Human-readable display name, localised to the requested language.
Unix timestamp (seconds) of when this category’s content was last updated.
Aggregate number of times stories in this category have been read.
Number of story clusters in this category.
Example
curl "https://kite.kagi.com/api/batches/01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b/categories?lang=en"
{
"batchId" : "01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b" ,
"createdAt" : "2024-11-15T08:00:00.000Z" ,
"hasOnThisDay" : true ,
"categories" : [
{
"id" : "cat-001" ,
"categoryId" : "world" ,
"categoryName" : "World" ,
"timestamp" : 1731657600 ,
"readCount" : 4210 ,
"clusterCount" : 18
}
]
}
List Categories in the Latest Batch
GET /api/batches/latest/categories
Convenience shortcut that returns categories for the most recently published batch. Accepts the same lang query parameter and returns the same BatchCategoriesResponse structure as GET /api/batches/{batchId}/categories.
Query Parameters
BCP 47 language code for localised category names.
Example
curl "https://kite.kagi.com/api/batches/latest/categories?lang=en"
Get Chaos Index
GET /api/batches/{batchId}/chaos
Returns the Chaos Index score and a short editorial summary for the specified batch. The Chaos Index is a 0–100 measure of how turbulent the day’s news cycle is — higher values indicate more breaking or disruptive news.
Path Parameters
UUID of the target batch.
Response
Chaos Index score from 0 (calm) to 100 (extremely turbulent).
Short editorial description explaining the score in plain language.
Example
curl https://kite.kagi.com/api/batches/01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b/chaos
{
"score" : 62 ,
"summary" : "Moderately turbulent news cycle with several developing international stories."
}
Use GET /api/batches/latest/chaos as a shortcut to retrieve the Chaos Index for the most recent batch without needing to look up a batch ID first.
Get On This Day Events
GET /api/batches/{batchId}/onthisday
Returns a collection of historical events that occurred on the same calendar date as the batch. Events include birthdays, deaths, and notable occurrences, and are sourced from publicly available historical records.
Path Parameters
UUID of the target batch.
Query Parameters
BCP 47 language code for localised event descriptions. Defaults to the batch’s primary language when omitted.
Response
Returns a LoadOnThisDayResponse object.
Array of historical event objects, sorted by sort_year. Show OnThisDayEvent fields
Display year string for the event (e.g. "1969").
Human-readable description of the historical event.
Numeric year used to sort events chronologically.
Category of event. One of "event", "person", or "people".
URL to an illustrative image for the event, if available.
Unix timestamp (seconds) indicating when this On This Day data was generated.
The language code actually used for the response content. May differ from the requested lang if the requested language was unavailable.
Example
curl "https://kite.kagi.com/api/batches/01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b/onthisday?lang=en"
{
"events" : [
{
"year" : "1969" ,
"content" : "Apollo 12 launched from Kennedy Space Center, the second crewed lunar landing mission." ,
"sort_year" : 1969 ,
"type" : "event" ,
"image" : "https://upload.wikimedia.org/wikipedia/commons/thumb/6/6e/Apollo_12_launch.jpg/320px-Apollo_12_launch.jpg"
},
{
"year" : "1738" ,
"content" : "William Herschel, astronomer and composer, born in Hanover." ,
"sort_year" : 1738 ,
"type" : "person"
}
],
"timestamp" : 1731657600 ,
"language" : "en"
}
Use GET /api/batches/latest/onthisday to fetch On This Day events for today’s batch without first looking up a batch ID.
List Available Languages
GET /api/batches/{batchId}/languages
Returns the set of languages for which this batch has been localised, together with completeness flags and content counts per language. Use this endpoint to determine which lang values are valid for other batch endpoints.
Path Parameters
UUID of the target batch.
Response
Returns a BatchLanguagesResponse object.
UUID of the batch these language records belong to.
languages
BatchLanguageInfo[]
required
Array of per-language availability records. Show BatchLanguageInfo fields
BCP 47 language code (e.g. "en", "de", "fr", "ja").
true if the full batch content has been translated into this language. false indicates a partial or in-progress localisation.
Number of categories available in this language.
Number of story clusters available in this language.
Number of source articles indexed for this language variant.
Example
curl https://kite.kagi.com/api/batches/01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b/languages
{
"batchId" : "01934d2a-b1c3-7e4f-a092-3f8c6d9e1a2b" ,
"languages" : [
{
"languageCode" : "en" ,
"isComplete" : true ,
"totalCategories" : 12 ,
"totalClusters" : 148 ,
"totalArticles" : 1024
},
{
"languageCode" : "de" ,
"isComplete" : true ,
"totalCategories" : 12 ,
"totalClusters" : 148 ,
"totalArticles" : 1024
},
{
"languageCode" : "fr" ,
"isComplete" : false ,
"totalCategories" : 8 ,
"totalClusters" : 96 ,
"totalArticles" : 640
}
]
}