{"openapi":"3.1.1","info":{"title":"Regulus LLM Research API","version":"1.0.0","description":"Read-only regulatory retrieval API. Markdown is returned by default; use format=json for JSON."},"externalDocs":{"url":"https://regulus.evalyn.ai/llms-full.txt"},"servers":[{"url":"https://regulus.evalyn.ai"}],"security":[],"tags":[{"name":"Regulatory research"}],"paths":{"/api/llm/search":{"get":{"operationId":"searchRegulatoryCorpus","summary":"Search the regulatory corpus","tags":["Regulatory research"],"parameters":[{"name":"q","in":"query","required":true,"description":"Natural-language query, keywords, or citation","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results from 1 to 25","schema":{"type":"integer","minimum":1,"maximum":25,"default":10}},{"name":"mode","in":"query","required":false,"description":"Retrieval mode","schema":{"type":"string","enum":["fast","smart"],"default":"fast"}},{"name":"format","in":"query","required":false,"description":"Response representation","schema":{"type":"string","enum":["json","markdown"]}}],"responses":{"200":{"description":"Ranked regulatory records","content":{"text/markdown":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/api/llm/document":{"get":{"operationId":"getRegulatoryDocument","summary":"Retrieve a regulatory document and provenance","tags":["Regulatory research"],"parameters":[{"name":"identifier","in":"query","required":true,"description":"Regulus slug or exact citation","schema":{"type":"string"}},{"name":"max_characters","in":"query","required":false,"description":"Characters to return","schema":{"type":"integer","minimum":1,"maximum":40000,"default":30000}},{"name":"format","in":"query","required":false,"description":"Set to json for JSON","schema":{"type":"string"}}],"responses":{"200":{"description":"Document and provenance","content":{"text/markdown":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/document/{slug}.json":{"get":{"operationId":"getRegulatoryDocumentJson","summary":"Retrieve the stable JSON representation of a document","tags":["Regulatory research"],"parameters":[{"name":"slug","in":"path","required":true,"description":"Stable Regulus document slug","schema":{"type":"string","maxLength":300}}],"responses":{"200":{"description":"Document, provenance, and machine-format links","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/document/{slug}.md":{"get":{"operationId":"getRegulatoryDocumentMarkdown","summary":"Retrieve the stable Markdown representation of a document","tags":["Regulatory research"],"parameters":[{"name":"slug","in":"path","required":true,"description":"Stable Regulus document slug","schema":{"type":"string","maxLength":300}}],"responses":{"200":{"description":"Document and provenance as Markdown","content":{"text/markdown":{"schema":{"type":"string"}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/api/llm/passages":{"get":{"operationId":"getDocumentPassages","summary":"Locate evidence passages inside a document","tags":["Regulatory research"],"parameters":[{"name":"identifier","in":"query","required":true,"description":"Regulus slug or exact citation","schema":{"type":"string"}},{"name":"q","in":"query","required":true,"description":"Terms to locate within the document","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Passages from 1 to 15","schema":{"type":"integer","minimum":1,"maximum":15,"default":8}},{"name":"format","in":"query","required":false,"description":"Set to json for JSON","schema":{"type":"string"}}],"responses":{"200":{"description":"Relevant document passages","content":{"text/markdown":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/api/llm/related":{"get":{"operationId":"getRelatedAuthorities","summary":"Retrieve linked authorities and evidence","tags":["Regulatory research"],"parameters":[{"name":"identifier","in":"query","required":true,"description":"Regulus slug or exact citation","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Relationships from 1 to 50","schema":{"type":"integer","minimum":1,"maximum":50,"default":25}},{"name":"format","in":"query","required":false,"description":"Set to json for JSON","schema":{"type":"string"}}],"responses":{"200":{"description":"Related authorities","content":{"text/markdown":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/api/llm/hierarchy":{"get":{"operationId":"getDocumentHierarchy","summary":"Retrieve collection hierarchy and sibling documents","tags":["Regulatory research"],"parameters":[{"name":"identifier","in":"query","required":true,"description":"Regulus slug or exact citation","schema":{"type":"string"}},{"name":"format","in":"query","required":false,"description":"Set to json for JSON","schema":{"type":"string"}}],"responses":{"200":{"description":"Collection hierarchy","content":{"text/markdown":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}},"/api/llm/status":{"get":{"operationId":"getCorpusStatus","summary":"Inspect corpus coverage, freshness, and search health","tags":["Regulatory research"],"parameters":[{"name":"format","in":"query","required":false,"description":"Set to json for JSON","schema":{"type":"string"}}],"responses":{"200":{"description":"Corpus and search status","content":{"text/markdown":{"schema":{"type":"string"}},"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"400":{"description":"Invalid or missing query parameter"},"404":{"description":"Document or operation not found"},"429":{"description":"Rate limit exceeded; honor the Retry-After header","headers":{"Retry-After":{"description":"Seconds before another request should be attempted","schema":{"type":"integer","minimum":1}}}}}}}}}