# Changelog of Tanzania, Zambia & Botswana Registered Medicines (`a-g-d/africa-medicines`) Actor

- **URL**: https://apify.com/a-g-d/africa-medicines/changelog.md
- **Full Actor documentation**: https://apify.com/a-g-d/africa-medicines.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-15

#### Added

- The public registered-medicines registers of Tanzania (TMDA, about 5,660 products),
  Zambia (ZAMRA, about 3,510) and Botswana (BoMRA, about 5,780), read through the search
  each regulator's IRIMS portal uses for its own public page. One item per registered
  product with the same English camelCase keys for every country: country, regulator,
  registration number, brand and generic names, active ingredients, strength, dosage form,
  pack size, classification, schedule, holder and its country, local representative,
  manufacturer and its country, registration and expiry dates (ISO), registration and
  validity status, ATC code where published, source page and fetch time.
- Filters: countries, brand name, generic name or ingredient, registration number
  (spacing-insensitive), manufacturer, holder, registered since and expiring before. The
  portals apply brand name, registration number, holder and (ZAMRA) manufacturer
  themselves; every filter is also checked on each item.
- Privacy: an output allowlist. Account columns (`altered_by` e-mail addresses,
  `created_by`, `nationalID`) and internal ids are never read; the street addresses BoMRA
  and ZAMRA append to company names are cut off; no value holding an e-mail address or phone
  number is output; only the registered-products search is called.
- Politeness: countries side by side, each on one connection with at least 1 s between
  requests, 500 rows per page, an honest User-Agent.
- Resilience: retries with exponential backoff and jitter inside a run-wide budget;
  per-country fail-soft (one portal down does not stop the others; the run fails only when
  every requested country fails) and an `OUTPUT` summary per country; the run stops cleanly
  20 s before its timeout and ends SUCCEEDED with what it stored; optional Apify Proxy.
- TLS: ZAMRA and BoMRA send only their leaf certificate; the missing DigiCert and SSL.com
  intermediates are bundled and trusted for those hosts, with verification always on.
- 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.
