Overview
Requirements are structured compliance obligations extracted from regulation articles. Each requirement is linked back to its source article and paragraph, categorised by type, and optionally includes a compliance deadline and stakeholder roles.
Methods
list()
Returns a page of requirements, optionally filtered to a single framework.
Parameters
| Parameter | Type | Default | Description |
|---|
frameworkSlug | string | — | Filter to a specific framework |
page | number | 1 | Page number |
perPage | number | 20 | Items per page (1–100) |
Returns Promise<Page<Requirement>>
iter()
Iterate over requirements, optionally filtered to a framework.
Parameters — same options as list() (except page, which is managed internally).
Returns AsyncGenerator<Requirement>
Model
Requirement
| Field | Type | Description |
|---|
id | number | Internal numeric ID |
frameworkSlug | string | Parent framework slug |
articleNumber | number | Source article number |
paragraphRef | string | null | Source paragraph reference, e.g. "1", "2a" |
paragraphContent | string | null | Full text of the source paragraph |
requirementText | string | Extracted requirement obligation text |
requirementType | string | Category, e.g. "obligation", "prohibition", "right" |
complianceDeadline | string | null | ISO 8601 deadline date, if applicable |
linkedArticleNumbers | number[] | Related article numbers |
stakeholderRoles | string[] | Roles this requirement applies to, e.g. ["controller", "processor"] |
tags | Tag[] | Tags applied to the requirement |
createdAt | string | ISO 8601 creation timestamp |
Example: build a compliance checklist
Requirements are extracted from article paragraphs through automated analysis. Cross-check against the source article text — accessible via client.articles.get() — for authoritative wording.