# Changelog of Rwanda FDA Registered Human Medicines (`a-g-d/rw-fda`) Actor

- **URL**: https://apify.com/a-g-d/rw-fda/changelog.md
- **Full Actor documentation**: https://apify.com/a-g-d/rw-fda.md

## Changelog

All notable changes to this project are documented here. The format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and the project adheres to
[Semantic Versioning](https://semver.org/).

### \[0.1.0] - 2026-10-22

#### Added

- The Rwanda FDA Human Medicines Drug Register (about 2,600 registered products), read from
  its one server-rendered page with a streaming HTML parser. One item per registered
  product with English camelCase keys: registration number and series (HMP, HBP, legacy),
  brand and generic names, active ingredients, strength, dosage form (as published and in
  lower case), pack size, shelf life (as published and in months), manufacturer and its
  country, marketing authorisation holder, local technical representative, registration
  and expiry dates (ISO), registration status, source page and fetch time.
- Filters, all applied locally: brand name, generic name or ingredient, registration
  number, manufacturer, holder, manufacturer country, dosage form, registered since,
  expiring before and include expired.
- Privacy: an output allowlist; the MAH / Local Agent and Manufacturer cells reduced to the
  company name before the first address or contact label, comma, semicolon or line break;
  company names holding a digit, an e-mail address, a phone number or an address word
  output as null (fail closed); only the register page is requested.
- Politeness: one compressed request per run, stopped early once `maxItems` products are
  read without filters; an honest User-Agent.
- Resilience: retries with exponential backoff and jitter inside a run-wide budget; a
  refusal, challenge page or changed table stops the run with a clear message; an `OUTPUT`
  summary; the run stops reading 20 s before its timeout and stores what it read; optional
  Apify Proxy.
- Pay-per-event billing: `product-record` per stored product, charged after storing; each
  batch is planned against the remaining spending limit and the run stops cleanly when it
  runs out.
