Canadian Company Data
Look up a Canadian federal corporation at Corporations Canada by corporation number or name.
Example
{
"corporation_number": "1007"
} {
"status": "Active",
"address": "207 - 32900 SOUTH FRASER WAY, ABBOTSFORD BC, V2S 5A1, CA",
"industry": null,
"company_name": "Abbotsford Chamber of Commerce",
"jurisdiction": "CA",
"name_history": [],
"business_type": "Boards of Trade Act - Part II",
"business_number": "106679285",
"director_limits": {
"maximum": 30,
"minimum": 3
},
"tier_2_available": false,
"registration_date": "1947-01-10",
"corporation_number": "1007",
"registration_number": "1007",
"latest_annual_return_year": "2026"
} Inputs
| Field | Type | Required | What it is |
|---|---|---|---|
task | string | No | Free-text alias — corporation number or company name |
company_name | string | No | Company name (resolved via the Corporations Canada site search) |
corporation_number | string | No | Federal corporation number (older corporations have fewer than 7 digits) or 9-digit business number |
Output fields
How reliably each field appears in a successful answer.
| Field | Type | Appears |
|---|---|---|
status | string | Always (present in every successful answer) |
company_name | string | Always (present in every successful answer) |
name_history | array | Usually (present for most inputs) |
business_type | string | Always (present in every successful answer) |
business_number | string or null | Usually (present for most inputs) |
director_limits | object or null | Usually (present for most inputs) |
ubo_availability | string | Always (present in every successful answer) |
corporation_number | string | Always (present in every successful answer) |
registration_number | string | Always (present in every successful answer) |
tier_2_available_reason | string | Always (present in every successful answer) |
ubo_availability_reason | string | Always (present in every successful answer) |
address | — | Usually (present for most inputs) |
registration_date | — | Usually (present for most inputs) |
latest_annual_return_year | — | Usually (present for most inputs) |
industry | — | Sometimes (present only for some inputs) |
tier_2_available | — | Always (present in every successful answer) |
match_confidence | — | Sometimes (present only for some inputs) |
How to call it
The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.
# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
-H "Authorization: Bearer $STRALE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"capability_slug": "canadian-company-data",
"inputs": {
"corporation_number": "1007"
},
"max_price_cents": 80
}' {
"tool": "strale_execute",
"arguments": {
"slug": "canadian-company-data",
"inputs": {
"corporation_number": "1007"
},
"max_price_cents": 80
}
} import { Strale } from "straleio";
const strale = new Strale({ apiKey: process.env.STRALE_API_KEY! });
const result = await strale.do({
capability_slug: "canadian-company-data",
inputs: {
"corporation_number": "1007"
},
max_price_cents: 80,
}); import os
from straleio import Strale, DoRequest
strale = Strale(api_key=os.environ["STRALE_API_KEY"])
result = strale.do(DoRequest(
capability_slug="canadian-company-data",
inputs={
"corporation_number": "1007",
},
max_price_cents=80,
)) # No account. The first request answers 402 with the price in USDC;
# an x402 client pays it from your wallet and repeats the request.
curl -i 'https://api.strale.io/x402/v2/canadian-company-data?corporation_number=1007' Limitations
Provincial company coverage is limited
Covers federally incorporated companies — provincially registered businesses may have limited information
What to do instead: For provincial companies, supplement with the relevant provincial registry (e.g., Ontario ONBIS, BC Registry)
Named directors are not included
Director names are not included. `director_limits` gives the minimum and maximum permitted by the articles, rather than the current number of directors.
What to do instead: Order a corporate profile from Corporations Canada, or check the corporation's own filings
Name and number lookups use different methods
Corporation-number and business-number lookups read the official API directly. Name lookups extract results from the Corporations Canada website using AI and can return less precise fields.
What to do instead: Provide the corporation number for a fully algorithmic answer
Name history can be incomplete
`name_history` can contain only the current name even when the registry’s activity history records a name change. An empty list does not prove that the company has never been renamed.
What to do instead: Check the corporation's activity history on Corporations Canada for name-change events
API responses are limited to 4 MiB
API response bodies above 4 MiB are refused during download rather than parsed.
Bundled checks that include it
- KYB Essentials — Canada €1.50
- KYB Complete — Canada €2.50
- Invoice Verify — Canada €2.50
Related tools
- Australian Company Data €0.05
- Austrian Company Data €0.05
- Belgian Company Data €0.05
- Brazilian Company Data €0.05
- Company Enrichment €0.50
- Croatian Company Data €0.05