Raw schema
{
"type": "object",
"properties": {
"celex_number": {
"description": "CELEX number of the act to fetch (e.g. 32016R0679 for GDPR). Provide exactly one of celex_number, eli_uri, or work_uri.",
"anyOf": [
{
"type": "string",
"const": ""
},
{
"type": "string",
"pattern": "^[0-9A-Z][0-9A-Z()/_-]{5,}$",
"description": "CELEX number of the act (e.g. 32016R0679 for GDPR). Surrounding whitespace is trimmed and the value is uppercased before validation."
}
]
},
"eli_uri": {
"description": "Work-level ELI URI of the act to fetch (e.g. http://data.europa.eu/eli/reg/2016/679, with or without the /oj suffix). Provide exactly one of celex_number, eli_uri, or work_uri.",
"type": "string"
},
"work_uri": {
"description": "CELLAR work resource URI to fetch (e.g. http://publications.europa.eu/resource/cellar/3e485e15-11bd-11e6-ba9a-01aa75ed71a1) β the form returned by eurlex_lookup_celex, eurlex_get_relations, and eurlex_search_documents. Provide exactly one of celex_number, eli_uri, or work_uri.",
"type": "string"
},
"resolve": {
"default": "as_requested",
"description": "Which version to serve for a base act with newer consolidated versions. \"as_requested\" (default) returns the exact CELEX requested; \"current_consolidated\" serves the newest consolidated version instead (echoing the request in requested_celex), a no-op when none exists. Either way, is_superseded / current_consolidated_celex / consolidated_as_of flag a stale base act.",
"type": "string",
"enum": [
"as_requested",
"current_consolidated"
]
},
"language": {
"default": "EN",
"description": "One of the 24 supported two-letter EUR-Lex language codes (e.g. EN, FR, DE), accepted case-insensitively and normalized to uppercase. Defaults to EN, and falls back to EN if the requested language is unavailable.",
"type": "string",
"pattern": "^(?:[Ee][Nn]|[Ff][Rr]|[Dd][Ee]|[Ee][Ss]|[Ii][Tt]|[Pp][Ll]|[Pp][Tt]|[Nn][Ll]|[Cc][Ss]|[Dd][Aa]|[Ee][Ll]|[Ee][Tt]|[Ff][Ii]|[Hh][Uu]|[Ll][Tt]|[Ll][Vv]|[Mm][Tt]|[Rr][Oo]|[Ss][Kk]|[Ss][Ll]|[Ss][Vv]|[Bb][Gg]|[Hh][Rr]|[Gg][Aa])$"
},
"format": {
"default": "html",
"description": "Content format: \"html\" for the act text as served by EUR-Lex (default), \"markdown\" for that HTML converted to clean Markdown server-side, or \"xml\" for Formex4 structured XML.",
"type": "string",
"enum": [
"html",
"xml",
"markdown"
]
},
"content_mode": {
"default": "paged",
"description": "How much of the body to return. \"paged\" (default) returns an offset/limit window; \"full\" requests from the start and returns at most 100000 characters with continuation metadata when more exists; \"metadata_only\" skips the content fetch. offset and limit apply only to \"paged\".",
"type": "string",
"enum": [
"metadata_only",
"paged",
"full"
]
},
"offset": {
"default": 0,
"description": "Character offset into the body where the returned window starts (\"paged\" mode only). Page forward by setting offset = content_offset + content_chars_returned from the previous call. Offsets are format-specific: an offset is only valid against the same format it was measured in β keep format constant when paging.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"limit": {
"default": 25000,
"description": "Maximum characters to return in this window (\"paged\" mode only). Default 25000, max 100000. Follow has_more and the returned offsets until false to reconstruct the complete body.",
"type": "integer",
"minimum": 1,
"maximum": 100000
},
"outline": {
"default": false,
"description": "Return a structural outline of the act β chapters, sections, articles, annexes, and recitals as a heading list, each with its character offset β instead of body text. Read a section by paging with its offset, keeping the same format: outline offsets are measured in the requested format's body and land in the wrong place under any other format. Ignores offset/limit and select; no detectable structure returns an empty outline. Not applied in content_mode \"metadata_only\".",
"type": "boolean"
},
"select": {
"description": "Return only the text of specific sections by type and number, instead of a raw character window (Roman and Arabic numbers are equivalent). Sections are located in the body of the requested format, so pair select with the same format used for any outline. A section that cannot be located is reported in selection.missed with no wrong text returned. Ignored when outline is true or in content_mode \"metadata_only\".",
"type": "object",
"properties": {
"articles": {
"description": "Comma-separated article numbers, e.g. \"1,5,17\".",
"type": "string"
},
"chapters": {
"description": "Comma-separated chapter numbers, Roman or Arabic, e.g. \"I,IV\" or \"1,4\".",
"type": "string"
},
"recitals": {
"description": "Comma-separated recital numbers, e.g. \"1,10\".",
"type": "string"
},
"annexes": {
"description": "Comma-separated annex numbers or letters, e.g. \"I,II\".",
"type": "string"
}
}
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}