Skip to main content

1. Get an API key

Sign up at northaxiumdata.ca and open your dashboard. In the API key section, click Create API key and copy the key from the popup. For security, the full key is only shown when it is created or refreshed. Free accounts include 100 requests per month, 25 requests per day, and 5 requests per minute. For production use, subscribe to a paid plan.

2. Make your first request

Every request needs your API key in the X-API-Key header.
import requests

headers = {"X-API-Key": "your_api_key_here"}

url = "https://api.northaxiumdata.ca/api/v1/contracts?vendor=Palantir&limit=5"

response = requests.get(url, headers=headers)
data = response.json()

for contract in data["data"]:
    print(f"{contract['vendor']}: ${contract['value']:,.0f}")

3. Explore more endpoints

Now that you have the basics, try a few more calls:
Python
import requests

headers = {"X-API-Key": "your_api_key_here"}

url = "https://api.northaxiumdata.ca/api/v1/lobbying/communications?limit=10"
response = requests.get(url, headers=headers)

for comm in response.json()["data"]:
    print(f"{comm['client']}{comm['dpoh_name']} ({comm['date']})")
Python
import requests

headers = {"X-API-Key": "your_api_key_here"}

# get an aggregated vendor profile
url = "https://api.northaxiumdata.ca/api/v1/vendors/Palantir%20Technologies%20Canada%20Inc"
response = requests.get(url, headers=headers)

profile = response.json()["data"]
print(f"Total value: ${profile['total_value']:,.0f}")
print(f"Contract count: {profile['contract_count']}")
Python
import requests

headers = {"X-API-Key": "your_api_key_here"}

url = "https://api.northaxiumdata.ca/api/v1/contributions?party=Liberal&limit=10"
response = requests.get(url, headers=headers)

for contribution in response.json()["data"]:
    print(f"{contribution['contributor_name']}: ${contribution['monetary_amount']:,.2f}")
Python
import requests

headers = {"X-API-Key": "your_api_key_here"}

# search contracts, lobbying, contributions, parliamentary, and permits simultaneously
url = "https://api.northaxiumdata.ca/api/v1/search?q=Shopify"
response = requests.get(url, headers=headers)

results = response.json()["data"]
for domain, hits in results.items():
    print(f"{domain}: {len(hits)} results")

4. What’s next?

Procurement

Contracts, tenders, awards, vendors, and departments

Grants

Federal grants, research awards, and infrastructure projects

Lobbying & Political Financing

Lobbying communications, registrations, and contributions

Parliamentary Intelligence

Bills, politicians, and committee activity

Municipal Intelligence

Building permits, zoning, and municipal data

MCP Server

Connect Claude directly to NorthAxium Data