# Changelog of Ghana GHANEPS Tenders & Awarded Contracts (ghaneps.gov.gh) (`a-g-d/gh-ghaneps`) Actor

- **URL**: https://apify.com/a-g-d/gh-ghaneps/changelog.md
- **Full Actor documentation**: https://apify.com/a-g-d/gh-ghaneps.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.2] - 2026-09-27

#### Changed

- The public Store page (README) no longer has a License section: the source is not published, and the data's terms are those of the source, described under "Data source".

### \[0.1.1] - 2026-09-27

#### Fixed

- The actor description is within the 300 characters Apify accepts on push (it was 307), with a test that keeps it there.

### \[0.1.0] - 2026-09-26

#### Added

- Tenders from Ghana's national e-procurement system (GHANEPS, ghaneps.gov.gh), newest
  publication first, by default those open for bids: tender ID, title, description,
  procuring entity, procedure (as published and as the portal's code), status,
  publication date and bid submission deadline (+00:00), and links to the tender page and
  notice PDF.
- Awarded contracts from the portal's Awarded Contracts list (`recordType: "awards"`),
  newest award first, one item per tender, lot and supplier: supplier, award date and time,
  amount and currency (and the amount as published), lot, and links.
- Filters: keyword, procuring entity, tender status, category and procedure (tenders),
  `publishedSince` (tenders), `awardedSince` (awards) and `maxItems` (up to 20,000). The
  portal applies what it can; the actor applies the rest to the newest records, reading
  at most 5,000 per run for such filters.
- Polite access: one request at a time, at least 2 s apart, honest User-Agent, retries
  with exponential backoff and jitter inside a run-wide budget, a clear error when the
  portal keeps refusing, and a clean stop shortly before the run timeout.
- E-mail addresses and phone numbers are dropped from stored text.
- Pay-per-event events `tender-notice` (per stored tender) and `award-result` (per stored
  award), charged after storing.
- Dataset schema generated from the zod schemas (draft-07, a union of the two record
  types) with "Tenders" and "Awards" views, and an output schema.
