API Documentation
← All tools
GET/api/v1/regulatory

Regulatory Approvals Search

regulatory-approvalsNo success wrapper

Paginated search and listing of harmonised regulatory approval RECORDS (FDA Orange Book, FDA Purple Book, EMA). Supports full-text search plus exact, partial-match and linked-id filters, all AND-combined. Returns transformed records with resolved sponsors (direct entities; full sponsors_chain), drugs with ChEMBL ids, indications, regulatory flags, patents and exclusivity entries. Each record's 'approval_id' - public SOURCE:number form, e.g. FDA_ORANGE:020610 / EMA:EU/1/20/1528 - is the identifier the Regulatory Approvals Record, Label and History tools expect; the internal _key is no longer returned, so never use it. Use for applicant / trade name / ingredient lookups and orphan or marketing-status filters; use regulatory.profile for a curated single-drug profile and regulatory.landscape for aggregated multi-drug views.

When to use it

  • list approvals for an applicant, trade name or ingredient
  • filter approvals by source (FDA/EMA), marketing status or orphan designation
  • approvals linked to a sponsor, drug (ChEMBL) or disease (CURIE) id
  • inspect patents and exclusivity entries behind an applicant's approvals

Getting started

Base URL

https://app.caelrith.com/api/v1/tools

Authentication

Include your API key in the x-api-key header.

Parameters

Query parameters

ParameterTypeRequiredDescription
searchstringNoFull-text search across trade name, applicant and ingredient (language-analyzed). Prefer the exact/partial filters below for precise matches.
sourcestringNoApproval source registry to filter by. 'EMA' and 'EMA Union Register' are equivalent ('EMA' is normalized server-side).
Allowed values: FDA_ORANGE, FDA_PURPLE, EMA, EMA Union Register
applicantstringNoCase-insensitive partial match against the applicant company name. Does NOT expand to a corporate family - subsidiaries must be queried separately or via a resolved sponsor id.
trade_namestringNoCase-insensitive partial match against the trade (brand) name. Get one via the Regulatory Approvals Record tool.
ingredientstringNoCase-insensitive partial match against the active ingredient(s).
sponsor_idstringNoSponsor entity id; exact membership filter against the record's linked sponsor ids.
drug_idstringNoChEMBL-style drug id (e.g. CHEMBL1201599); exact membership filter against the record's linked drug ids.
disease_idstringNoDisease ontology CURIE (e.g. MONDO:0004975); exact membership filter against the record's linked disease ids. Get CURIEs from the Disease Autocomplete tool.
statusstringNoExact match against the record's marketing status (e.g. Rx, OTC, Disc).
is_orphanbooleanNoFilter by orphan-drug designation. CAVEAT: the server coerces the query string to boolean, so 'false' is treated as true - this filter can only SELECT orphans, never exclude them (do not use it for 'non-orphan' searches).
pagenumberNoPage number (default 1).
Range: 1 to ∞
limitnumberNoResults per page (1-100, default 20).
Range: 1 to 100
sortstringNoSort field: approval_date (default) or updated_at.
Allowed values: approval_date, updated_at
orderstringNoSort direction (default desc).
Allowed values: asc, desc

Example request

curl -H "x-api-key: YOUR_API_KEY" \
  "https://app.caelrith.com/api/v1/regulatory"

Response envelope

This endpoint returns an implicit 2xx response - there is no success flag in the body.

{
  "data": { /* payload */ },
  "meta": { /* pagination, totals */ }
}

// No "success" flag on this endpoint - any 2xx JSON is a success.

Response shape

List responseAPPROVALS

Payload: data — Approvals

Exact total: meta.totalItems

Pagination: server-side via page and limit

Common row fields

FieldDescription
approval_idApproval ID
trade_nameTrade Name
applicant_rawApplicant
sourceSource
approval_dateApproval Date
marketing_statusStatus

Empty results: No matching rows (HTTP 200)

Rows are product listings; approval_id is the PUBLIC identifier (FDA_ORANGE:020610 / FDA_PURPLE:BLA125514 / EMA:EU/1/20/1528) - feed it verbatim to the Regulatory Approvals Record, Label and History tools (the old internal _key is no longer returned). 'applicant_raw' is the raw applicant string; 'sponsors' rows are filtered to DIRECT entities (full hierarchy in 'sponsors_chain'), 'drugs' carry chembl_id values and 'indications' are resolved names. Linked-id filters match EXACTLY (sponsor_id = organizations/<key>, drug_id = ChEMBL id, disease_id = ontology CURIE e.g. EFO:0003767) - a wrong or differently formatted id returns an empty list, not an error. meta.totalItems is the exact total for the filters - quote it, never a page length.

Catalog version 0.0.0-generated · generated from the API source