Skip to main content

Overview

The search endpoint performs full-text search across articles, recitals, and requirements. Results include a match_context snippet showing where the query matched. Use filters to narrow by framework or content type.

Methods

query()

Run a full-text search and return a page of results.
Parameters
ParameterTypeDefaultDescription
qstrrequiredSearch query string
frameworkstrNoneLimit to a specific framework slug
result_typestrNone"article", "recital", or "requirement"
pageint1Page number
per_pageint20Items per page (1–100)
Returns Page[SearchResult]
page.meta.pages is always 0 for search results. The search endpoint does not support traditional page-count pagination. Use the presence of page.links.next to detect whether more results exist.

Model

SearchResult

FieldTypeDescription
typestrResult type: "article", "recital", or "requirement"
framework_slugstrFramework the result belongs to
framework_namestrHuman-readable framework name
article_numberint | NoneArticle number (for article and requirement results)
recital_numberint | NoneRecital number (for recital results)
paragraph_refstr | NoneParagraph label (for requirement results)
titlestr | NoneArticle or section heading
requirement_typestr | NoneRequirement classification (requirement results only)
match_contextstrSnippet of matched text with surrounding context
urlstrDirect API URL to the matched resource

Examples

Search within a specific framework

Filter by result type

Search across multiple frameworks manually

Paginate through search results

Display results grouped by framework

Combine framework and result_type filters to narrow results significantly. For example, result_type="requirement" limits results to machine-readable obligations, which is useful when building compliance checkers.
Search queries are matched against parsed text content. Very short queries (one or two characters) may produce unexpected results. Use at least three characters for meaningful searches.