LICENSE REGISTER (gate: no source is ingested without a row here)
Status: ✅ cleared for commercial redistribution of derived products · ⚠️ conditional (respect stated conditions) · ⛔ prohibited (do not ingest for products)
DEFERRED sources: a ⚠️ row whose Conditions cell beginsDO-NOT-INGESTis registered and founder-approved but NOT cleared for commercial redistribution — license verification found a restriction (or no positive commercial-reuse permission). The row stays for provenance + founder revisit, but the live ingest gatepipelines.common.registry.assert_ingestible()refuses it (SourceDeferredError). Evidence + revisit path filed indocs/licenses/<ID>/.
| ID | Source | Category | License / basis | Conditions | Access | Status |
|---|---|---|---|---|---|---|
| S001 | GLEIF LEI Golden Copy (L1+L2) | Entity spine | CC0 | None | Daily bulk files | Cleared |
| S002 | OpenFIGI | Identifiers | Free API terms | Attribution good practice; respect rate limits | API | Cleared |
| S003 | SEC EDGAR (submissions, companyfacts, filings) | Filings/fundamentals | US Gov public domain | Fair access: declared User-Agent, ≤10 req/s | Bulk ZIP + REST | Cleared |
| S004 | OpenCorporates↔LEI mapping file | Entity spine | Open relationship file | Attribution | Bulk CSV | Cleared |
| S005 | World Bank WDI / Open Data | Macro | CC BY 4.0 | Attribution required in product docs | API + bulk | Cleared |
| S006 | IMF statistical series (IFS/BOP/DOT/GFS) | Macro | IMF Copyright and Usage terms, effective 2024-10-11 (re-read 2026-09-24, evidence docs/licenses/S033/): the "Data" permission list no longer includes "sell", and the page directs any potential commercial reuse of IMF Data to [email protected]. | DEFERRED 2026-09-24 (founder decision): no commercial ingestion until the IMF grants written permission; see S033. Nothing served derives from it. | API/bulk | Deferred |
| S007 | South Africa OCPO Transparency Portal (eTenders) | Tenders | Explicit open license incl. commercial use | Attribution; OCDS format | OCDS JSON API | Cleared |
| S008 | Other OCDS publishers (via OCP registry: Rwanda Umucyo, Nigeria NOCOPO, Kaduna, Kenya PPIP, etc.) | Tenders | Per-publisher | Verify each publisher's license BEFORE ingestion; add its own row | API | Cleared |
| S009 | African issuer annual reports / IR pages (company-published PDFs) | Fundamentals | Facts extracted from public disclosures | Extract facts only; no document republication; respect robots/ToS per site; keep source PDF ref in raw for provenance | Fetch + LLM extraction | Cleared — facts only |
| S012 | Manually-curated public issuer identities (non-LEI) | Entity spine | Public fact (name + jurisdiction + exchange ticker from public exchange listings) | Identity facts only — no natural persons; each seed row cites its public listing; used only to give a non-LEI issuer a dataco_id so its S009 filings can be extracted |
Manual seed CSV/model | Cleared |
| S010 | Companies House UK bulk | Entity spine (global) | Open Government Licence | Attribution | Bulk | Cleared |
| S011 | FRED | Macro (global, later) | FRED Terms of Use + API terms (re-read 2026-09-24, evidence docs/licenses/S011/): FRED content may not be incorporated in another database or sold without the St. Louis Fed's prior written permission; commercial use is internal only, and third-party series need their owner's written permission. | DO-NOT-INGEST 2026-09-24 (founder decision): FRED is not a redistribution source. A public-domain series FRED relays (e.g. BLS, Federal Reserve Board, US Treasury) may be sourced only from its ORIGINAL publisher, under that publisher's own register row. Nothing served derives from it. | API | Do not ingest |
| S013 | World Bank Open Data | Macro | CC BY 4.0 (open data, incl. commercial use) | Attribution to World Bank; indicator values only (public statistics, no natural persons) | REST API (no key) | Cleared |
| S014 | ECB euro FX reference rates (via Frankfurter API) | Macro (FX, daily) | ECB reuse policy: reference rates may be reused free of charge with acknowledgement (see docs/licenses/S014/) | Attribute the ECB; reference rates are indicative daily snapshots (~16:00 CET), NOT executable fixings — state this to buyers; no natural persons | REST API (no key), Frankfurter serves ECB data | Cleared |
| S015 | SARB (South African Reserve Bank) daily FX reference rates | Macro (FX, daily) | VERIFIED 2026-08-06 (evidence docs/licenses/S015/): SARB website Disclaimer reserves all IP rights — no copying/reproduction/distribution without prior written consent; SARB publishes no open-data/commercial-reuse licence. NOT cleared for commercial redistribution. | DO-NOT-INGEST — DEFERRED 2026-08-06: not cleared for commercial reuse (SARB requires prior written consent). FX.ZAR.USD is already served licence-clean via cleared ECB S014, so no FX coverage lost. Revisit only with written SARB commercial permission. No natural persons. | Web-query CSV / API | Do not ingest |
| S016 | CBN (Central Bank of Nigeria) daily FX rates | Macro (FX, daily) | VERIFIED 2026-08-06 (evidence docs/licenses/S016/): CBN website Terms of Use permit downloading one copy for personal, non-commercial use only; commercial use expressly prohibited. NOT cleared for commercial redistribution. | DO-NOT-INGEST — DEFERRED 2026-08-06: CBN terms are personal/non-commercial only. No commercial-OK free NGN/USD source for v1 (ECB set has no NGN). Revisit if CBN grants commercial permission. No natural persons. | HTML table / CSV | Do not ingest |
| S017 | CBK (Central Bank of Kenya) daily indicative FX rates | Macro (FX, daily) | VERIFIED 2026-08-06 (evidence docs/licenses/S017/): centralbank.go.ke publishes no open-data/commercial-reuse licence; site materials copyright-protected and Kenya legislative content is CC BY-NC-SA (non-commercial). No positive commercial-reuse permission found. | DO-NOT-INGEST — DEFERRED 2026-08-06: no evidence of commercial-reuse permission (ambiguous/absent → not cleared per register discipline). Revisit if CBK publishes a commercial-OK data licence. No natural persons. | HTML / CSV | Do not ingest |
| S020 | Stats SA — P0141 Consumer Price Index | Macro (CPI, monthly) | VERIFIED 2026-08-06 — HARD GATE FAILED (evidence docs/licenses/S020/): Stats SA copyright — "Neither the basic data nor any reprocessed version or application thereof may be sold or offered for sale in any form whatsoever without prior permission from Stats SA." NOT cleared for commercial redistribution. | DO-NOT-INGEST — DEFERRED 2026-08-06 (founder hard gate FAILED): Stats SA prohibits sale of data or derived products without prior permission; Certvas sells derived products. No CC-BY monthly-CPI-with-vintages alternative for ZAF (World Bank CPI is annual). Revisit only with written Stats SA commercial permission. No natural persons. | Release PDF / XLSX | Do not ingest |
| S025 | SARB MPC — repo rate + decision dates | Macro (policy rate) | VERIFIED 2026-08-06 (evidence docs/licenses/S025/): same SARB website Disclaimer as S015 — all IP rights reserved, prior written consent required, no open-data/commercial-reuse licence. NOT cleared for commercial redistribution. | DO-NOT-INGEST — DEFERRED 2026-08-06: not cleared for commercial reuse (SARB prior written consent). Candidate future clean route: BIS policy-rate dataset (needs its own clearance). Revisit with written SARB permission. No natural persons. | MPC statement pages | Do not ingest |
| S030 | BIS central bank policy rates (CBPOL) | Macro (policy rate) | VERIFIED 2026-08-08 (evidence docs/licenses/S030/): BIS "Terms of permitted use of BIS statistics" permit commercial use only if inclusion results in no additional charge to subscribers/other users; BIS owns copyright, "No other use is permissible." Not a positive grant for a paid derived-data product. | DO-NOT-INGEST — DEFERRED 2026-08-08: no-additional-charge clause conflicts with selling derived data (ambiguous → not cleared). Covers ZAF only of targets; GEM S032 is a cleaner rate route. Revisit with written BIS permission. No natural persons. | SDMX API / bulk | Do not ingest |
| S031 | Kenya CPI via open-data-portal route (KODI opendata.go.ke / Knoema kenya.opendataforafrica.org) | Macro (CPI, monthly) | VERIFIED 2026-08-08 (evidence docs/licenses/S031/): gov portal opendata.go.ke offline (ECONNREFUSED); Knoema aggregator ToU proprietary/limited/revocable (not CC-BY); KNBS main site non-commercial. No working commercial-OK open licence found. | DO-NOT-INGEST — DEFERRED 2026-08-08: no verified working CC-BY route. Route Kenya CPI via S032 (GEM) or S033/S006 (IMF) instead. Revisit if opendata.go.ke returns with explicit CC-BY + access. No natural persons. | (portal offline / aggregator) | Do not ingest |
| S032 | World Bank Global Economic Monitor (GEM) | Macro (CPI monthly; FX + interest rates high-frequency) | VERIFIED 2026-08-08 (evidence docs/licenses/S032/): CC BY 4.0 — World Bank data-licensing page permits copy/modify/distribute "for any purpose, including commercial use" with attribution; same basis as cleared S005/S013. | Attribute "The World Bank, Global Economic Monitor (GEM), CC BY 4.0" + indicate transformation; series are as-published levels (NOT a vintage/revision archive — Certvas point-in-time vintages accrue from ingest forward); quarterly re-verify third-party carve-out; no natural persons. | REST API + DataBank (no key) | Cleared |
| S033 | IMF statistical Data (IFS: monthly CPI / FX / policy & monetary rates) | Macro (CPI/FX/rates, monthly) | RE-VERIFIED 2026-09-24 (evidence docs/licenses/S033/): the live IMF Copyright and Usage page, effective 2024-10-11, permits download/copy/derivative works/publish/distribute of Data with attribution, but no longer lists "sell" and directs "any potential commercial reuse of IMF Data" to [email protected]. It also requires reasonable efforts to bind downstream users, and bars automated bulk download without explicit permission. The 2026-08-08 verification relied on archived 2015 wording (the live page was blocked then) and is superseded. | DEFERRED 2026-09-24 (founder decision) — pending written permission from [email protected] (request SENT 2026-09-24, awaiting reply). If granted, the earlier conditions still apply: attribution with a dataset link, "available free of charge from the IMF" notice, disclose transformation, per-series third-party carve-out (exclude IFS observations relayed from national authorities), no natural persons. Nothing served derives from it. | SDMX / REST API | Deferred |
| S034 | Nigeria NOCOPO federal OCDS (BPP) | Tenders | ODC-PDDL — publisher's own licence page names PDDL with Share/Create/Adapt grants (VERIFIED 2026-08-08, evidence docs/licenses/S034/); site Terms-page boilerplate conflict recorded in evidence — /license is the data-directed instrument | Attribution to BPP good practice; date-sanity + ocid-dedupe guardrails REQUIRED before first run (award dates 1949–2919, 93 bad ocid prefixes, batch release-dates); federal completeness caveat in SKU docs; PDF /license at first ingest; changedetection watch on /license; no natural persons | OCP registry bulk mirror (.jsonl.gz, monthly) / portal export | Cleared |
| S035 | Ekiti State (Nigeria) OCDS | Tenders | ODC-PDDL v1.0 — named + linked on portal homepage, concordant with OCP registry (VERIFIED 2026-08-08, evidence docs/licenses/S035/) | FROZEN-SCOPE: historical Sep 2021–Jul 2023 only (publication stalled); one-time load from registry mirror; changedetection watch for revival/portal disappearance (non-gov azurewebsites host); stale-data disclosure in SKU docs; no natural persons | OCP registry bulk mirror | Cleared |
| S036 | Uganda GPP (PPDA) OCDS | Tenders | Registry-stated ODC-By (commercial-OK) but UNVERIFIABLE at source — portal unreachable, API 410, publication stalled since Jan 2025 (VERIFIED 2026-08-08, evidence docs/licenses/S036/) | DO-NOT-INGEST — DEFERRED 2026-08-08: positive grant not verifiable at source (registry attribution is second-hand). Revisit: verify ODC-By on gpp.ppda.go.ug from founder machine OR written PPDA confirmation (letter drafted), AND publication resumed. No natural persons. | (API 410 / registry mirror) | Do not ingest |
| S037 | Kenya PPIP (PPRA) OCDS | Tenders | NO licence anywhere — registry field "-", no portal terms, PPRA site "All Rights Reserved" (VERIFIED 2026-08-08, evidence docs/licenses/S037/) | DO-NOT-INGEST — DEFERRED 2026-08-08, RE-VERIFIED 2026-09-01 (unchanged: package license absent, publicationPolicy null, PPRA still "All Rights Reserved", registry licence field now absent entirely). Absence = not cleared. Active daily API, 259,132 releases — TOP revisit target; PPRA REPLIED 2026-09-02 asking for clarification on the data, the derived products and the distribution; answered the same day. IN ACTIVE CORRESPONDENCE — do NOT phone, post or file under the ATI Act; that escalation advice is superseded. Awaiting PPRA on terms. Officer name and address are deliberately NOT recorded here: this row is published verbatim at certvas.com/license-register, and a civil servant's work address is not ours to publish. See docs/licenses/S037/ppra-replied-2026-09-02.md. Needs a two-step transport, not just a flag. No natural persons. |
OCDS JSON API (live) | Do not ingest |
| S038 | Rwanda Umucyo (RPPA) OCDS | Tenders | CC BY-NC-SA 4.0 per OCP registry — NonCommercial affirmatively prohibits commercial use; ShareAlike contaminates derivatives (VERIFIED 2026-08-08, evidence docs/licenses/S038/) | DO-NOT-INGEST — DEFERRED 2026-08-08: licence affirmatively non-commercial (worse than silence). Revisit ONLY on written RPPA commercial permission or documented licence change via regulatory watch. No natural persons. | OpenData portal + registry bulk (irrelevant) | Do not ingest |
| S039 | Ghana GHANEPS (PPA) OCDS | Tenders | UNVERIFIABLE — registry licence link (ppaghana.org/ocds-license) TLS-dead, successor ppa.gov.gh/ocds-license 404, no Wayback snapshot; no terms on GHANEPS portal (VERIFIED 2026-08-08, evidence docs/licenses/S039/) | DO-NOT-INGEST — DEFERRED 2026-08-08, RE-VERIFIED 2026-09-01: licence pointers still dead (ppaghana.org 000, ppa.gov.gh/ocds-license 404), registry licence field now absent, and the successor site asserts "All rights reserved." Coverage sparse (7,058 releases). Permission letter drafted 2026-09-01 (§6), queued behind Kenya. No natural persons. | OCDS record packages (JS) | Do not ingest |
| S040 | Edo State (Nigeria) OCDS | Tenders | PDDL claim is registry-secondhand only — granting portal DNS-dead (edpms), publication frozen Dec 2021; live successor portal has NO licence and dead licence link (VERIFIED 2026-08-08, evidence docs/licenses/S040/) | DO-NOT-INGEST — DEFERRED 2026-08-08: no grant verifiable at publisher. Founder OPTION on file: frozen-scope ingest of 2018–2021 registry mirror (weak provenance, poor structure). Revisit if successor publishes a licence. No natural persons. | (successor portal, unlicensed, no bulk) | Do not ingest |
| S041 | Ebonyi State (Nigeria) OCDS | Tenders | Registry claims PDDL but NO licence statement anywhere on portal; ToS silent on data reuse; all tested bulk JSON 404 (VERIFIED 2026-08-08, evidence docs/licenses/S041/) | DO-NOT-INGEST — DEFERRED 2026-08-08: grant unverifiable at publisher + pipeline broken. Revisit when downloads restored and a licence is inspectable on-portal (changedetection watch). No natural persons. | (bulk JSON all 404) | Do not ingest |
| S043 | Zambia ZPPA e-GP OCDS | Tenders | ODC-PDDL — publisher's OWN licence page (zppa.org.zm/ocds-license) names the ODC Public Domain Dedication and Licence with Share/Adapt grants — strongest possible grant, commercial reuse unrestricted (VERIFIED 2026-08-09, evidence docs/licenses/S043/). OCP registry lists CC BY 4.0 (discrepancy recorded; both permit commercial reuse — the publisher's data-directed /ocds-license controls). Same instrument as Nigeria S034. | Attribution to ZPPA good practice (CC-BY 4.0 conservative fallback → encode attribution regardless); OCDS date-sanity + ocid-dedupe guardrails per S034 before first run; no natural persons | OCDS API | Cleared |
| S090 | JSE / BSE / NSE / NGX / EGX raw market or EOD price feeds | Prices | Proprietary exchange data | Redistribution requires paid license | — | Blocked |
| S091 | CIPC South Africa bulk registry | Registry | Automated access itself is prohibited — ToS §3(1)(c) bars using any technology to search or gain information from the site without CIPC's prior WRITTEN PERMISSION; §4(3) bars reproduction/distribution; §4(5) confines commercial use to a single named client (VERIFIED 2026-08-29, evidence docs/licenses/S091/) | Stricter than the earlier "restricts bulk resale" note: the bar is on FETCHING, not just reselling. Unblocking needs THREE things, not a ToS change — written permission (§3(1)(c) is a permission clause, draft in docs/licenses/permission-requests.md), a separate resolution of the §4(5) commercial confinement because permission to fetch is not permission to republish, and the S092 field guardrail, since a company register holds director and shareholder names. | — | Blocked |
| S092 | Any source containing natural-person data (directors, shareholders, contacts) | — | Hard rule #1 | Fields dropped at ingestion if encountered incidentally | — | Blocked |
| S042 | Paraguay DNCP OCDS | Tenders | CC BY 4.0 — named on the publisher's own open-data portal footer; commercial reuse permitted (VERIFIED 2026-08-09, evidence docs/licenses/S042/) | Licence VERIFIED and clean. NOT INGESTED: founder approval outstanding — this is the only thing between it and CLEARED. Attribute DNCP. | OCDS API + bulk | Deferred |
| S044 | UK Contracts Finder (Cabinet Office / CCS) OCDS | Tenders | Open Government Licence v3.0 — explicitly permits commercial exploitation (VERIFIED 2026-08-09 on gov.uk, evidence docs/licenses/S044/) | Licence VERIFIED and clean. NOT INGESTED: founder approval outstanding. OGL attribution required. | OCDS API, real-time | Deferred |
| S045 | Colombia SECOP (Colombia Compra Eficiente) OCDS | Tenders | CC BY-SA 4.0 — ShareAlike (VERIFIED 2026-08-09, evidence docs/licenses/S045/) | Copyleft would force a proprietary derived product to be relicensed CC BY-SA. Incompatible with the product, not with the law. | OCDS API | Do not ingest |
| S046 | Moldova MTender (Ministry of Finance) OCDS | Tenders | No named grant — registry field is a generic Open-Definition pointer, unconfirmable at source (2026-08-09, evidence docs/licenses/S046/) | Unverifiable-at-source, same failure as S036 Uganda. | OCDS API | Do not ingest |
| S047 | Dominican Republic DGCP OCDS | Tenders | Registry names ODbL (database ShareAlike); not confirmable on the publisher's portal (2026-08-09, evidence docs/licenses/S047/) | Unverifiable-at-source; ODbL share-alike would also bind derived databases. | OCDS API | Do not ingest |
| S048 | Tanzania PPRA / NeST Open Contracting Portal OCDS | Tenders | Hard gate failed — no commercial-reuse grant established (2026-08-10, evidence docs/licenses/S048/) | Assessed and refused. Row kept so the decision stays visible. | OCDS portal | Do not ingest |
| S049 | Liberia PPCC e-Procurement OCDS | Tenders | Licence unverifiable at source (2026-08-10, evidence docs/licenses/S049/) | No licence text locatable on the publisher's own portal. | OCDS portal | Do not ingest |
| S050 | Sierra Leone NPPA e-GP OCDS | Tenders | Unverifiable at source — portal unreachable (2026-08-10, evidence docs/licenses/S050/) | Re-verify if the portal returns. See also the round-2 cleansource note: NOT clean. | OCDS portal | Do not ingest |
| S051 | Kaduna State (Nigeria) KADPPA / Budeshi OCDS | Tenders | No licence at source (2026-08-10, evidence docs/licenses/S051/) | Registry entry exists; the publisher states no terms. | OCDS portal | Do not ingest |
| S052 | Makueni County (Kenya) Open Contracting Portal OCDS | Tenders | Non-commercial + ShareAlike (2026-08-10, evidence docs/licenses/S052/) | Non-commercial clause is decisive — Certvas sells derived products. | OCDS portal | Do not ingest |
| S053 | Nigeria state e-Procurement PHP portals (Osun/Anambra/Abia/Enugu/Cross River) | Tenders | Registry PDDL claim CONTRADICTED at source (2026-08-10, evidence docs/licenses/S053/) | Registry and publisher disagree; the publisher governs. | State portals | Do not ingest |
| S054 | Plateau State (Nigeria) BPP OCDS | Tenders | No licence — registry field '-' (2026-08-10, evidence docs/licenses/S054/) | Same shape as S037 Kenya PPRA: absence of a grant is not a grant. | OCDS portal | Do not ingest |
ID numbering
S-numbers are allocated in the order sources are assessed, and an assessment that ends in a
refusal keeps its number. The sequence therefore has gaps, and every gap is deliberate:
| gap | why |
|---|---|
| S017 → S020 | S018/S019 were allocated during central-bank FX research and merged into neighbouring rows before either was written up. No source was dropped. |
| S020 → S025 | S021–S024 were CPI/statistics candidates folded into S020 (Stats SA) and S031 (Kenya CPI) rather than registered separately. |
| S025 → S030 | S026–S029 were policy-rate candidates superseded by S030 (BIS CBPOL), which covers the same series for many central banks at once. |
| S054 → S090 | A deliberate block boundary, not a gap. S090+ is reserved for sources that are BLOCKED as a matter of policy rather than licence — exchange price feeds (hard rule 2) and anything whose terms prohibit our use. Keeping them numerically separate means a reader scanning for "what may we never touch" does not have to read the whole table. |
Why the refusals keep their numbers. A refused source is a decision, and re-using its number
would erase it. Ten of the rows here (S045–S054) are refusals with full evidence folders, and their
value is that the next person to consider Tanzania or Colombia does not repeat the work.
Why an ID is never re-used. license_class is stamped onto every served record, so an S-number
that meant one source in August and another in December would silently relabel data already
delivered to a customer.
Register protocol
- 1. New source proposed → add row with evidence link to the license/ToS text saved to
docs/licenses/{ID}/. - 2. ⚠️ sources: conditions must be encoded as pipeline guardrails (rate limits, attribution strings, field drops) before first run.
- 3. Quarterly re-verification task: confirm each ✅/⚠️ source's terms unchanged; log check date.
- 4. Every gold record carries
license_class= the source row ID, so any source can be surgically removed from products if terms change.
This page is generated from the register that gates the pipeline itself — it is not a summary written for the website. Every published value carries a license_class naming a row below, so any source can be traced, or removed, per record.