boz APIboz.zm ↗
Access Bank of Zambia treasury bill auctions, bond results, ZMW exchange rates, inflation, and Monetary Policy Rate via 8 structured JSON endpoints.
What is the boz API?
The boz.zm API exposes 8 endpoints covering the Bank of Zambia's published financial data: treasury bill auction history by tenor, Government bond auction results, intraday and daily average ZMW exchange rates, the current Monetary Policy Rate, and the latest inflation release. The get_tbill_auction_data endpoint lets you query auction records by year and tenor, returning ISINs, discount rates, yield rates, and PDF links going back to 2014.
curl -X GET 'https://api.parse.bot/scraper/82d5a744-254f-4636-a255-bcae0d6624e5/get_tbill_auction_data?year=2026&tenor=91' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve treasury bill auction results for a specified tenor (91, 182, 273, or 364 days). Returns auction dates, tender numbers, ISINs, discount rates, yield rates, and PDF URLs. Data availability: 2026 records include full rate data (ISIN, discount rate, yield rate); older migrated records (2014-2025) include auction date, tender number, and PDF URL but may lack rate fields. Results sorted by auction date descending. Paginates through all matching records automatically.
| Param | Type | Description |
|---|---|---|
| year | string | Year(s) to retrieve data for. Single year (e.g. '2026'), comma-separated years (e.g. '2025,2026'), or 'all' for all available years (2014-present). |
| tenor | string | Treasury bill tenor in days. |
{
"type": "object",
"fields": {
"tenor": "string indicating the tenor queried (e.g. '91_days')",
"results": "array of auction result objects with year, tender_number, auction_date, pdf_url, and optionally isin, discount_rate, yield_rate",
"total_records": "integer count of auction records returned",
"years_queried": "array of year strings included in the query"
},
"sample": {
"data": {
"tenor": "91_days",
"results": [
{
"isin": "ZM3000013919",
"year": "2026",
"pdf_url": "https://www.boz.zm/sites/default/files/2026-05/Treasury-Bills-Results-Tender-No-11-2026-28-05-2026.pdf",
"yield_rate": "10.5000",
"auction_date": "2026-05-28",
"discount_rate": "10.2320",
"tender_number": "11/2026"
},
{
"isin": "ZM3000013877",
"year": "2026",
"pdf_url": "https://www.boz.zm/sites/default/files/2026-05/Treasury-Bills-Results-Tender-No-10-2026-14-05-2026.pdf",
"yield_rate": "10.5000",
"auction_date": "2026-05-14",
"discount_rate": "10.2320",
"tender_number": "10/2026 TBills Auction Results"
}
],
"total_records": 11,
"years_queried": [
"2026"
]
},
"status": "success"
}
}About the boz API
Treasury Bill Auction Data
get_tbill_auction_data accepts a tenor parameter (91, 182, 273, or 364 days) and a year parameter that accepts a single year string, a comma-separated list, or 'all' for the full history. Each record in the results array includes tender_number, auction_date, pdf_url, and — for 2026 onwards — isin, discount_rate, and yield_rate. Older records may omit those rate fields; total_records and years_queried are always present to help you detect coverage gaps. list_tender_pdfs covers the same date range but returns only PDF URLs grouped by year, useful when you want the source documents rather than structured fields.
Bond and Treasury Bill Latest Results
get_latest_bond_auction and get_latest_tbill_auction each return the single most recent auction the Bank of Zambia has published. Bond results include per-tenor rows for the typical 2, 3, 5, 7, 10, and 15-year tranches, each with isin, coupon_rate, and yield_rate as decimal strings, plus an auction_number in the bank's own format (e.g. '06/2026/BA') and a pdf_url. Treasury bill results follow the same shape with discount_rate and yield_rate per tenor, and a tender_number consistent with the format used in get_tbill_auction_data.
Exchange Rates
Two exchange rate endpoints serve different use cases. get_boz_exchange_rates returns the bank's intraday rates for ZMW/USD and ZMW/CNY, each with buying, mid_rate, and selling values plus a rate_time ISO 8601 timestamp. get_average_exchange_rates returns daily average rates for USD, GBP, EUR, and ZAR — buying and selling only, no mid — with a rate_date ISO date string. Both use base_currency: 'ZMW', so all values are kwacha per one unit of the quoted currency.
Monetary Policy and Inflation
get_latest_monetary_policy_rate returns the current MPR as a decimal string in monetary_policy_rate, the effective_date as an ISO 8601 timestamp, a plain-text description of the decision, and a next_update field with the bank's published date for the next announcement. get_latest_inflation returns year-on-year and month-on-month rates broken out into overall, food, and non-food categories — six rate fields total — alongside release_date, description, and next_update.
The boz API is a managed, monitored endpoint for boz.zm — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when boz.zm changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official boz.zm API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track Zambia's T-bill yield curve over time by querying all four tenors via
get_tbill_auction_dataand comparingyield_ratetrends by year. - Monitor the Bank of Zambia's Monetary Policy Rate changes using
get_latest_monetary_policy_rateto feed a Zambia macro dashboard. - Download official tender PDFs programmatically using
list_tender_pdfsfor regulatory compliance or audit record-keeping. - Compare intraday ZMW/USD buying and selling spreads from
get_boz_exchange_ratesagainst daily average rates fromget_average_exchange_rates. - Build a Zambia fixed-income screener that surfaces the latest Government bond ISINs, coupon rates, and yields from
get_latest_bond_auction. - Track annual food versus non-food inflation divergence in Zambia using the six rate fields returned by
get_latest_inflation. - Automate ZMW/EUR and ZMW/ZAR rate alerts using the daily average rates from
get_average_exchange_rates.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does the Bank of Zambia offer an official developer API?+
What does `get_tbill_auction_data` return for records before 2026, and how do I know if rate fields are missing?+
isin, discount_rate, and yield_rate fields may be absent from individual result objects — only tender_number, auction_date, and pdf_url are reliably present across the full history. You can detect the gap by checking whether those keys exist on each item in the results array. The total_records and years_queried fields help confirm what range was actually returned.Does the API return historical exchange rate series or only the latest rates?+
get_boz_exchange_rates (intraday) and get_average_exchange_rates (daily average) return only the most recently published rates — there is no historical time-series endpoint for exchange rates. The API covers current ZMW rates for USD, GBP, EUR, ZAR, and CNY. You can fork it on Parse and revise to add a historical rate endpoint if the source publishes an archive.Is historical inflation data or a series of past MPR decisions available?+
get_latest_inflation and get_latest_monetary_policy_rate each return only the single most recent published figure, not a time series of past releases or decisions. You can fork the API on Parse and revise it to add endpoints that collect historical inflation releases or MPR decision history.Does `get_latest_bond_auction` always include all six tenors (2, 3, 5, 7, 10, and 15 years)?+
results array reflects exactly what the Bank of Zambia published for that auction — not every tenor is necessarily offered in every auction. When a tenor's data is unavailable, coupon_rate and yield_rate will be null for that row. The set of tenors returned depends on what the bank included in the most recent auction notice.