Skip to content
REST APIAPI indexDocs menu

API index

What the API offers.

GET/api/v1

Links to every endpoint, the OpenAPI document, the MCP server and the docs.

Parameters

None.

Response

200 OK with a ApiIndex object.

Response fields
NameDescription
namestring
versionstring
docsstringHow to use the API, the MCP server and the Markdown pages, and how to credit texts.
openapistringAbsolute URL.
mcpstringMCP server, Streamable HTTP, no auth.
endpointsobjectEach endpoint and what it returns.

Errors

StatusWhen
429 Too Many RequestsToo many requests from one address. Wait a minute.
500 Internal Server ErrorSomething went wrong on our side.

Error bodies are described in Caching, limits and errors.

Example request

curl "https://interlinea.aeterna-institute.org/api/v1"

Example response

Response200 OK
{
  "name": "Interlinea",
  "version": "1",
  "docs": "https://interlinea.aeterna-institute.org/docs",
  "openapi": "https://interlinea.aeterna-institute.org/api/v1/openapi.json",
  "mcp": "https://interlinea.aeterna-institute.org/mcp",
  "endpoints": {
    "https://interlinea.aeterna-institute.org/api/v1": "What the API offers",
    "https://interlinea.aeterna-institute.org/api/v1/openapi.json": "This document",
    "https://interlinea.aeterna-institute.org/api/v1/search": "Search authors, works and topics",
    "https://interlinea.aeterna-institute.org/api/v1/library/{lang}/{author}": "An author and their works",
    "https://interlinea.aeterna-institute.org/api/v1/library/{lang}/{author}/{work}": "A work, its editions and its contents",
    "https://interlinea.aeterna-institute.org/api/v1/library/{lang}/{author}/{work}/{ref}": "A section's text with its citation and credit",
    "https://interlinea.aeterna-institute.org/api/v1/passages": "The graded path",
    "https://interlinea.aeterna-institute.org/api/v1/passages/{lang}/{slug}": "A graded passage's text",
    "https://interlinea.aeterna-institute.org/api/v1/text": "Any text, by URL, CTS URN or citation",
    "https://interlinea.aeterna-institute.org/api/v1/analysis": "The stored word-by-word analysis",
    "https://interlinea.aeterna-institute.org/api/v1/context": "The stored context notes",
    "https://interlinea.aeterna-institute.org/api/v1/words": "Look a word up in the stored analyses"
  }
}
Cache-Control: public, max-age=3600, s-maxage=86400, stale-while-revalidate=604800

Try it

Send a real GET from your browser and see the answer, its status and how long it took.

GET /api/v1