Sources
14 live sources, 5 on the roadmap. A source is only marked live once this repository has recorded an actual response from it — never on the strength of documentation, because published dataset identifiers and field names are wrong often enough that an unverified connector is a liability rather than a head start.
13 of those 14 contributed records to the current build. Live means the connector is verified against a real response; contributing means a full extract has actually been read and is in the numbers on this site. The difference is listed against each source below rather than averaged away.
Corporate registrars. The publisher is the body that grants legal existence, so these sources assert an entity rather than describe one.
Federal corporations — active business corporations live
Corporations Canada (Innovation, Science and Economic Development Canada) · Open Government Licence – Canada · publisher page
- Contributes
- Every live corporation under the Canada Business Corporations Act. This is the largest single-registrar entity file in Canada and the natural spine of the graph: the business number (BN) it carries is the join key to CRA charity status, federal contracts and federal grants.
- Read as
- file · publisher refresh P1D
- Personal data
- Organisations only, but the registered address is frequently a home.
- Verified
- HTTP 200 on 2026-09-01, 99 MB, publisher last modified Mon, 31 Aug 2026 11:06:35 GMTUTF-8 with BOM. 18 columns. Carries the registered office address and the min/max director counts, but NOT director names — the federal extract is materially less personal than the CRA charities extract.
- In this build
- 643,933 statements
Federal corporations — active not-for-profit, co-operative and boards of trade live
Corporations Canada (Innovation, Science and Economic Development Canada) · Open Government Licence – Canada · publisher page
- Contributes
- Federal non-share corporations. Small file, disproportionate value: it is the only clean national list of federally incorporated charities, associations and co-operatives, and it joins to the CRA charities data.
- Read as
- file · publisher refresh P1D
- Personal data
- Organisations only, but the registered address is frequently a home.
- Verified
- HTTP 200 on 2026-09-01, 8.7 MB, publisher last modified Mon, 31 Aug 2026 11:06:38 GMTSame 18 columns as the CBCA file. Governing legislation distinguishes the Not-for-profit Corporations Act, Cooperatives Act, Boards of Trade Act and the older Canada Corporations Act.
- In this build
- 50,911 statements
Federal corporations — inactive and dissolved business corporations live
Corporations Canada (Innovation, Science and Economic Development Canada) · Open Government Licence – Canada · publisher page
- Contributes
- The dead. Essential rather than optional: an amalgamation predecessor is how a 1979 company connects to the entity operating today, and a dissolved shell is the answer to "what happened to this company".
- Read as
- file · publisher refresh P1D
- Personal data
- Organisations only, but the registered address is frequently a home.
- Verified
- HTTP 200 on 2026-09-01, 149 MB, publisher last modified Mon, 31 Aug 2026 11:06:41 GMTLarger than the active file. Status Detail distinguishes "Dissolved by the corporation" from "Inactive - Amalgamated", which is the difference between an entity that ended and one that continues under another name.
- In this build
- 825,192 statements
Federal corporations — inactive not-for-profit, co-operative and boards of trade live
Corporations Canada (Innovation, Science and Economic Development Canada) · Open Government Licence – Canada · publisher page
- Contributes
- Wound-up associations, societies and co-operatives.
- Read as
- file · publisher refresh P1D
- Personal data
- Organisations only, but the registered address is frequently a home.
- Verified
- HTTP 200 on 2026-09-01, 8.1 MB, publisher last modified Mon, 31 Aug 2026 11:06:44 GMT
- In this build
- 42,407 statements
OrgBook BC — registered organisations live
Government of British Columbia (BC Registries and Online Services) · Open Government Licence – British Columbia · publisher page
- Contributes
- The only Canadian provincial registry with a genuine public API. It is query-driven rather than bulk, so it is used to enrich and confirm entities discovered elsewhere rather than to enumerate the province.
- Read as
- orgbook · publisher refresh P1D
- Personal data
- Organisations only, but the registered address is frequently a home.
- Verified
- HTTP 200 on 2026-09-01GET /api/v4/search/topic?q=telus returned 67 topics, page_size 10, with a `next` cursor. Each topic carries names, addresses and typed attributes (registration_date, entity_status, entity_type, home_jurisdiction) each stamped with the credential that asserted it.
Registre des entreprises du Québec roadmap
Registraire des entreprises du Québec · Creative Commons Attribution 4.0 · publisher page
- Contributes
- The single largest gap worth closing. Québec publishes its entire corporate register as bulk open data — the only province that does — including officers, which is why it is classed individuals-named. Probe the file layout before enabling; it ships as a multi-table archive, not one flat CSV.
- Read as
- file · publisher refresh P1D
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
Municipal licences. A registration says a company exists; a licence says it actually operates at an address, in a category, on a date.
Calgary business licences live
City of Calgary · Open Government Licence – City of Calgary · publisher page
- Contributes
- Trade names, licence categories and geocoded addresses. `homeoccind` is unusually valuable: it lets the address gate act on the publisher's own assertion instead of a guess.
- Read as
- socrata · publisher refresh P1D
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
- Verified
- HTTP 200 on 2026-09-01Fields confirmed on a live 2-row read: getbusid, tradename, homeoccind, address, comdistcd, comdistnm, licencetypes, first_iss_dt, exp_dt, jobstatusdesc, point. `homeoccind` = Y marks a HOME-BASED business, which is an explicit publisher flag that the address is residential — the only source in the registry that states this outright. robots.txt allows /resource with Crawl-delay 1.
- In this build
- 23,179 statements
Vancouver business licences live
City of Vancouver · Open Government Licence – Vancouver · publisher page
- Contributes
- Operating businesses with employee counts and local area. Complements the corporate registry: a registration says a company exists, a licence says it trades somewhere.
- Read as
- opendatasoft · publisher refresh P1M
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
- Verified
- HTTP 200 on 2026-09-01, 205,326 recordsExplore v2 API. `businessname` contains SOLE PROPRIETOR PERSONAL NAMES verbatim — the second record returned was "Leon Vance Michael Hiebert (Leon Hiebert)" trading as Skyzone Cabling Solutions. The individual/ organisation classifier is load-bearing on this source. Opendatasoft caps offset+limit at 10,000, so 205k records are unreachable by pagination and must be read through /exports/json.
- In this build
- 191,784 statements
Toronto business licences and permits live
City of Toronto (Municipal Licensing and Standards) · Open Government Licence – Toronto · publisher page
- Contributes
- Canada's largest municipal licensing file. Toronto is otherwise a hole in open Canadian entity data (Ontario's corporate registry is not open), so this is the main public signal of who operates in the country's biggest business market.
- Read as
- ckan-datastore · publisher refresh P1D
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
- Verified
- HTTP 200 on 2026-09-01package_show confirmed the CSV resource 169e90ba-3ae0-43dd-8b2f-919e87002f50 has datastore_active: true, so datastore_search works. CKAN answers 409 to ANY unknown parameter — never append Socrata-style $limit here.
- In this build
- 159,647 statements
Edmonton business licences live
City of Edmonton · Open Government Licence – Edmonton · publisher page
- Contributes
- Edmonton's 43,604 business licences. `licencetype` distinguishes Home Based, Commercial, Non-Resident, Massage Practitioner and Adult Services; the placeholder-address convention makes home-based businesses self-identifying the same way Calgary's `homeoccind` does.
- Read as
- socrata · publisher refresh P1D
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
- Verified
- HTTP 200 on 2026-09-02, 43,604 recordsThe id "9qtb-9xdd" once guessed here returned dataset.missing; the real id was found via the catalog search API ($q=business licence), not by guessing again. Edmonton uses its own bracketed redaction convention — `<Home Based Business>` and `<REDACTED FOR PRIVACY>` — which the shape must detect explicitly or it would publish the literal placeholder text as if it were a real address. Adult Services and Massage Practitioner rows redact name, address AND the licence id together at the source; the shape drops those rows entirely rather than working around the publisher's own privacy decision. Short-term-rental rows redact only the address, keeping a real name — the one case in the whole registry where a publisher discloses a business but deliberately withholds exactly where it operates.
- In this build
- 40,731 statements
Montréal business establishments roadmap
Ville de Montréal · Creative Commons Attribution 4.0 · publisher page
- Contributes
- CKAN datastore. Field names are French; a shape is required before enabling.
- Read as
- ckan-datastore
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
Federal contracts and transfer payments, joined to entities by name and business number.
Proactive publication — federal contracts over $10,000 live
Treasury Board of Canada Secretariat · Open Government Licence – Canada · publisher page
- Contributes
- Every federal contract award over $10,000, with vendor name and value. This is what turns a registry record into a story: it says which organisations the federal government actually pays, and how much.
- Read as
- ckan-resource · publisher refresh P3M
- Personal data
- Contains human-written prose, which has repeatedly been found to carry personal information even where the schema promises none. That prose is held for internal analysis and never published.
- Verified
- HTTP 200 on 2026-09-01, 612 MB, publisher last modified Tue, 01 Sep 2026 06:51:35 GMTThe download 302s to opencanada.blob.core.windows.net with a SIGNED, EXPIRING SAS URL (se=/sig= query parameters). The signed URL must never be cached in this registry — the redirect is followed at fetch time. Free-text description fields make this pii: free-text.
- In this build
- 1,313,472 statements
Proactive disclosure — federal grants and contributions live
Treasury Board of Canada Secretariat · Open Government Licence – Canada · publisher page
- Contributes
- Federal grants, contributions and transfer payments. Recipient names, amounts, programs and locations. Together with contracts this is the public-money layer of the graph.
- Read as
- ckan-resource · publisher refresh P3M
- Personal data
- Contains human-written prose, which has repeatedly been found to carry personal information even where the schema promises none. That prose is held for internal analysis and never published.
- Verified
- HTTP 200 on 2026-09-01, 2.2 GB, publisher last modified Tue, 01 Sep 2026 06:53:03 GMT2.3 GB — the largest file in the registry, and the reason the whole read path is streaming. Recipients include INDIVIDUALS as well as organisations, so the individual/organisation classifier is mandatory here, not optional.
- In this build
- 1,325,816 statements
Charitable registration, securities status and other recognised standings.
Registered charities — identification (2024 returns) live
Canada Revenue Agency · Open Government Licence – Canada · publisher page
- Contributes
- Registered charity identification: legal name, registration number, designation, category and address. The BN15 makes this the cleanest cross-registry join available in Canadian open data.
- Read as
- ckan-resource · publisher refresh P1Y
- Personal data
- Organisations only, but the registered address is frequently a home.
- Verified
- HTTP 200 on 2026-09-01Resource listed live on the 2024 package. The charity registration number is a BN15 (nine-digit BN + RR0001), so its first nine digits join directly to the federal corporations BN.
- In this build
- 83,761 statements
Registered charities — financial data (2024 returns) roadmap
Canada Revenue Agency · Open Government Licence – Canada · publisher page
- Contributes
- Revenue, expenditure and asset totals per charity. Enabled once the column set is probed — the T3010 schema changes between filing years and must not be inferred.
- Read as
- ckan-resource · publisher refresh P1Y
- Personal data
- No individual is identifiable.
Reporting issuers roadmap
Canadian Securities Administrators · Terms of use — verify before ingestion · publisher page
- Contributes
- Public companies. Licence terms must be read before any ingestion — SEDAR+ is not open data and bulk redistribution is not assumed.
- Read as
- file
- Personal data
- No individual is identifiable.
Active federal standing offers and supply arrangements (SOSA) live
Public Services and Procurement Canada · Open Government Licence – Canada · publisher page
- Contributes
- This is what turns "held a $20 billion standing offer" (a contracts-file artifact — see fed-contracts above) into a distinct, correctly-labelled fact: currently pre-qualified to supply named commodities to a named department, with no dollar figure implied either way. A supplier appearing only here and nowhere else in the corpus is real, useful information — the smaller companies large primes rarely surface — but with no identifier to anchor on, it can only attach when its name is unambiguous nationally; see engine/resolve/resolve.ts.
- Read as
- file · publisher refresh P7D
- Personal data
- No individual is identifiable.
- Verified
- HTTP 200 on 2026-09-02, 3.4 MB, publisher last modified Fri, 28 Aug 2026 17:25:54 GMTlicense_id confirmed as ca-ogl-lgo via the Open Government Portal API directly, not the dataset's own landing page, which states no licence at all. 19 columns; no dollar value field exists anywhere in the file — this is qualification status, never money. `commodity` and `commodity-description_en` are double-quoted BY THE PUBLISHER inside an already-quoted CSV field, so correct RFC 4180 parsing still leaves a literal leading and trailing quote character in the value; the shape strips it. No business number, corporation number, or address of any kind — attachment to an entity is by supplier name only.
- In this build
- 5,998 statements
Edges between organisations, and between organisations and government.
Registered charities — directors and officers (2024 returns) live
Canada Revenue Agency · Open Government Licence – Canada · publisher page
- Contributes
- ENABLED ONLY AS A NARROW SLATE: name, position, tenure dates, and the arm's-length flag CRA itself requires — nothing else exists in the file to withhold. This was left deliberately disabled until a human decided, with the tradeoffs stated, to turn it on; that decision was made on 2026-09-01. The resolver treats every row here specially (role: 'relation'): a director never mints an entity, never enters name/address clustering, never feeds corpus name-frequency, and attaches to its charity purely by sharing that charity's anchor string — never by name matching. See docs/PRIVACY.md and the `relation` branch in engine/resolve/resolve.ts.
- Read as
- ckan-resource · publisher refresh P1Y
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
- Verified
- HTTP 200 on 2026-09-01, 50 MB, publisher last modified Thu, 28 May 2026 14:41:06 GMTBN, FPE, Form ID, #, Last Name, First Name, Initials, Position, "At Arm's Length", Start Date, End Date — 11 columns, confirmed against a live sample. Carries NO address, phone or email of any kind; the narrowest possible slate. Position is free-typed by the filer (seen: "Director", "Director/Chair", "Treasurer/Director", "Directoor" — a literal typo in the live data), so it is stored verbatim, never parsed.
- In this build
- 569,329 statements
Registry of Lobbyists roadmap
Office of the Commissioner of Lobbying of Canada · Open Government Licence – Canada · publisher page
- Contributes
- Who lobbies which federal institution on behalf of which organisation. The open-data page did not expose direct file links to a plain scrape on 2026-09-01; the download route needs a browser session to identify. High value: it is the clearest organisation-to-government edge available.
- Read as
- file
- Personal data
- Contains named individuals. Personal columns are dropped before publication and subjects that cannot be confirmed to be organisations are withheld.
Every Canadian publisher found so far reads through one of five interfaces, and each has exactly one trait that breaks a naive client.
| Family | The trap |
|---|---|
| file | 100 MB to 2.3 GB. Buffering one of these into a string throws — V8 caps strings at 536,870,888 characters — so the whole path must stream. |
| ckan-resource | Downloads redirect to a signed, expiring URL. The signature cannot be cached; the redirect has to be followed on every read. |
| ckan-datastore | Answers HTTP 409 to any unrecognised query parameter. |
| socrata | Omits null fields from JSON entirely, so a schema inferred from one sample row is missing every column that happened to be empty. |
| opendatasoft | Caps offset plus limit at 10,000. A 205,000-record dataset paginates to 5% and then stops without erroring — the most dangerous behaviour of the five, because a truncated read looks like a clean one. |
| orgbook | A search index with no bulk endpoint; enriches, never enumerates. |