Government of Canada CKAN API
Government of Canada CKAN API
Government of Canada catalogue metadata exposed through the Open Government CKAN Action API. JSON records include dataset titles, organizations, descriptions, subjects, temporal coverage, update timestamps, licences and downloadable resource links; no key is needed.
Required Attribution:
"Contains information licensed under the Open Government Licence – Canada."
Coverage
The catalogue covers data and information published by Canadian federal departments and agencies. Update schedules, temporal coverage and resource formats vary by dataset; the catalogue API supports GET requests only, and no query cap is stated.
Verdict
A discovery signal for newly published or changed Canadian federal datasets, consultations, grants, contracts and other public records. Metadata timestamps can drive change monitoring, while resource records point agents to the underlying files. Catalogue metadata does not establish that every linked resource is current or complete. Check each dataset's own licence, update schedule and methodology before reuse.
Get the free weekly email
Free weekly email of newly verified free data. Unsubscribe by emailing us.
By entering your email and clicking Subscribe, you agree to receive the Signal Lab weekly email from Quantum Data Technologies Ltd., 3200-650 West Georgia Street, Vancouver, BC V6B 4P7, Canada (signal-lab@qdt.ai). You can unsubscribe at any time: reply "unsubscribe" to any email or write to signal-lab@qdt.ai. See our Privacy Policy.
Use in your agent
Load Open Canada catalogue metadata into pandas and Parquet. Checked against the provider's documentation on Nov 2, 2026.
Access
- No account or key. The Open Government CKAN Action API accepts GET requests with query parameters.
Request
curl 'https://open.canada.ca/data/en/api/3/action/package_search?rows=5&sort=metadata_modified%20desc'Format
JSON with a result object containing a total count and dataset records with identifiers, bilingual metadata, organizations, licences, resource links and update timestamps.
Load into pandas and Parquet
Needs Python 3 with requests, pandas and pyarrow.
"""Government of Canada CKAN metadata search -> pandas -> Parquet."""
import requests
import pandas as pd
URL = "https://open.canada.ca/data/en/api/3/action/package_search"
r = requests.get(URL, params={"rows": 5, "sort": "metadata_modified desc"}, timeout=60)
r.raise_for_status()
rows = r.json()["result"]["results"]
df = pd.DataFrame([{
"id": x["id"],
"title": x["title"],
"organization": (x.get("organization") or {}).get("title"),
"metadata_modified": x.get("metadata_modified"),
"num_resources": x.get("num_resources"),
"license_title": x.get("license_title"),
} for x in rows])
df["metadata_modified"] = pd.to_datetime(df["metadata_modified"], utc=True)
df.to_parquet("open_canada_ckan_metadata.parquet", index=False)
print(len(df), "datasets; latest metadata update", df["metadata_modified"].max().isoformat())Run by us on 2026-11-02 (python 3.13.5 | pandas 3.1.0 | pyarrow 26.0.0 | requests 2.34.2). Result: 5 datasets; latest metadata update 2026-11-02T21:01:41.114988+00:00
Limits
- Rate limit: Not stated.
- The Open Canada CKAN API supports GET requests only.
- Dataset coverage and linked-resource access conditions vary by publisher.
Quirks
- Many metadata fields are bilingual objects or arrays rather than scalar text.
- Resource URLs can be relative paths; resolve them against https://open.canada.ca before downloading.
- metadata_modified describes the catalogue record and may differ from a linked file's last-modified time.
Terms and attribution
- The Open Government Licence – Canada allows lawful commercial and non-commercial reuse subject to its conditions and exemptions.
- Acknowledge the information provider or use the licence's supplied attribution statement when no specific statement is given.
- Inspect the licence fields and source page for each linked dataset because catalogue resources can carry separate conditions.
Sources
- https://open.canada.ca/en/access-our-application-programming-interface-api: “The CKAN API on open.canada.ca only supports GET requests.”
- https://open.canada.ca/en/access-our-application-programming-interface-api: “Each dataset has a “Link to JSON format” button that uses the API to download the complete metadata record for that dataset, delivering it to the end user in JSON format (JavaScript Object Notation).”
- https://open.canada.ca/en/open-government-licence-canada: “The Information Provider grants you a worldwide, royalty-free, perpetual, non-exclusive licence to use the Information, including for commercial purposes, subject to the terms below.”
- https://open.canada.ca/en/open-government-licence-canada: “Contains information licensed under the Open Government Licence – Canada.”
Information and education only. Not financial, investment, legal or tax advice. Listings can be inaccurate, incomplete or out of date and are provided "as is". Free tiers, limits and licenses belong to each provider and can change, so check the provider's own terms before you rely on them. Terms & Disclaimer