Skip to content
REST APISearchDocs menu

Search

Search authors, works and topics.

GET/api/v1/search

Authors and works whose names or titles match, accent-insensitive, best known first. A query that names a topic (war, love, the gods, friendship, death, rhetoric, letters, comedy, …) also returns hand-picked works for it. An empty query lists works by rank.

Parameters

Parameters
NameDescription
qstringOptionalWords from a name or title, in English, Latin or Greek.

Default "". Up to 200 characters. Example aeneid.

langstringOptionalOnly this language.

One of la, grc, latin, greek.

limitintegerOptionalAt most 100.

Default 20. From 1 to 100.

offsetintegerOptional

Default 0. From 0 to 100,000.

Response

200 OK with a SearchResult object.

Response fields
NameDescription
querystring
langstring or nullLanguage code: la (Latin) or grc (Ancient Greek).

One of la, grc.

totalintegerMatching works.
offsetinteger
limitinteger
nextstring or nullThe next page of works.
topicsarray of objectHand-picked works for a topic the query names (war, love, the gods, …).
4 fields
topics fields
keystring
labelstring
blurbstring
worksarray of WorkSummary
10 fields
works fields
titlestring
nativeTitlestring or nullThe title in Latin or Greek, when it differs.
authorstring
langstringLanguage code: la (Latin) or grc (Ancient Greek).

One of la, grc.

genrestring or null
wordsinteger
sectionsintegerReading sections.
urnstring or nullCTS URN, e.g. urn:cts:latinLit:phi0690.phi003.perseus-lat2:1.1-1.11. Null when the edition has none (The Latin Library's own numbering).
urlstringAbsolute URL.
apistringAbsolute URL.
authorsarray of AuthorSummary
6 fields
authors fields
namestring
nativeNamestring or null
langstringLanguage code: la (Latin) or grc (Ancient Greek).

One of la, grc.

periodstring or null
urlstringAbsolute URL.
apistringAbsolute URL.
worksarray of WorkSummary
10 fields
works fields
titlestring
nativeTitlestring or nullThe title in Latin or Greek, when it differs.
authorstring
langstringLanguage code: la (Latin) or grc (Ancient Greek).

One of la, grc.

genrestring or null
wordsinteger
sectionsintegerReading sections.
urnstring or nullCTS URN, e.g. urn:cts:latinLit:phi0690.phi003.perseus-lat2:1.1-1.11. Null when the edition has none (The Latin Library's own numbering).
urlstringAbsolute URL.
apistringAbsolute URL.

Errors

StatusWhen
400 Bad RequestA parameter is missing or invalid, or the reference isn't a text.
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/search?q=aeneid"

Example response

Response200 OK
{
  "query": "aeneid",
  "lang": null,
  "total": 4,
  "offset": 0,
  "limit": 20,
  "next": null,
  "topics": [],
  "authors": [
    {
      "name": "Vergil's Aeneid II",
      "nativeName": null,
      "lang": "la",
      "period": "late-republic-augustan",
      "url": "https://interlinea.aeterna-institute.org/library/latin/vergil-s-aeneid-ii",
      "api": "https://interlinea.aeterna-institute.org/api/v1/library/latin/vergil-s-aeneid-ii"
    }
  ],
  "works": [
    {
      "title": "Aeneid",
      "nativeTitle": null,
      "author": "Vergil's Aeneid II",
      "lang": "la",
      "genre": "epic",
      "words": 5172,
      "sections": 19,
      "urn": null,
      "url": "https://interlinea.aeterna-institute.org/library/latin/vergil-s-aeneid-ii/aeneid",
      "api": "https://interlinea.aeterna-institute.org/api/v1/library/latin/vergil-s-aeneid-ii/aeneid"
    },
    {
      "title": "Aeneid",
      "nativeTitle": "Aeneis",
      "author": "Virgil",
      "lang": "la",
      "genre": "epic",
      "words": 63347,
      "sections": 223,
      "urn": "urn:cts:latinLit:phi0690.phi003",
      "url": "https://interlinea.aeterna-institute.org/library/latin/virgil/aeneid",
      "api": "https://interlinea.aeterna-institute.org/api/v1/library/latin/virgil/aeneid"
    },
    {
      "title": "Selections from The Aeneid (19 B.C.)",
      "nativeTitle": null,
      "author": "Imperialisms, Ancient and Modern",
      "lang": "la",
      "genre": null,
      "words": 284,
      "sections": 1,
      "urn": null,
      "url": "https://interlinea.aeterna-institute.org/library/latin/imperialisms-ancient-and-modern/selections-from-the-aeneid-19-b-c",
      "api": "https://interlinea.aeterna-institute.org/api/v1/library/latin/imperialisms-ancient-and-modern/selections-from-the-aeneid-19-b-c"
    },
    // 1 more
  ]
}
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/search?q=aeneid