AU Modern Slavery Register API
Base URL: https://api.techcompass.com.au — Structured access to statements lodged under the Modern Slavery Act 2018 (Cth). Search by ABN, entity name, sector, or year. Free tier.
About this Dataset
The AU Modern Slavery Register API provides structured access to modern slavery statements lodged with the Australian Border Force under the Modern Slavery Act 2018 (Cth). Entities with annual consolidated revenue of AUD $100 million or more must lodge a statement each year disclosing their modern slavery risks and the actions taken to address them.
What is a modern slavery statement?
A modern slavery statement is a public document lodged by a reporting entity describing the risks of modern slavery in its operations and supply chains, and the steps taken to assess and address those risks. Statements cover forced labour, child labour, debt bondage, human trafficking, and other forms of exploitation. Joint statements may be lodged by a parent entity covering multiple subsidiaries — these appear as a single statement with multiple ABNs.
Who must lodge?
Australian entities and foreign entities carrying on business in Australia with annual consolidated revenue of AUD $100 million or more must lodge annually. Smaller entities may lodge voluntarily. Statements are due within 6 months of the entity's financial year end — most entities have a 30 June FYE, making statements due by 31 December each year.
Update frequency
The Tech Compass pipeline ingests a fresh snapshot from the Modern Slavery Register quarterly (January, April, July, October). Statements trickle in year-round and accumulate via unique statement_id upsert — existing statements are updated if amended.
Data lineage
Every response includes a data_lineage block with source, source_attribution, license, and retrieved_at for audit purposes.
Licensing
Modern slavery statements are public records lodged under the Modern Slavery Act 2018 (Cth). The register is maintained by the Australian Border Force and is freely available at modernslaveryregister.gov.au.
Authentication & Tiers
All endpoints require an API key:
Authorization: ApiKey tc_live_<your_key>
| Endpoint | Free tier | Pro tier |
|---|---|---|
| List Statements, Statement Detail | Yes | Yes |
Batch ABN Screen (/screen) | No | Yes |
Statement Object
All endpoints return statement objects with the following fields:
| Field | Type | Description |
|---|---|---|
statement_id | string | Unique statement identifier in the format YYYY-NNNN (e.g. 2025-2804). Year is the lodgement year. |
lodgement_year | integer | Year the statement was lodged (extracted from statement_id) |
period_start | ISO 8601 date | Start of the reporting period |
period_end | ISO 8601 date | End of the reporting period |
statement_type | string | single, joint, or voluntary |
headquartered_countries | array of strings | Countries where the reporting entity is headquartered |
annual_revenue | string|null | Revenue band as published (e.g. 500-600M, 1BN+). Stored as text — the register uses bands, not exact figures. |
reporting_entities | array of objects | Primary lodging entities — each has name (string) and abn (string) |
included_entities | array of objects|null | Subsidiary entities covered by a joint statement — same shape as reporting_entities |
all_abns | array of strings | All ABNs associated with this statement (reporting + included entities). Use this field for ABN lookups. |
all_acns | array of strings|null | All ACNs associated with this statement |
statement_url | string | Direct link to the statement on the Modern Slavery Register |
industry_sectors | array of strings|null | Industry sectors as classified by the register (e.g. Wholesale Trade, Manufacturing) |
related_statements | array of strings|null | Statement IDs of prior-year statements from the same entity |
ingested_at | ISO 8601 datetime | When Tech Compass last ingested this statement |
Endpoints
GET /v1/au/modern-slavery/statements
List modern slavery statements with optional filters. Returns most recent statements first (by reporting period end date).
| Parameter | Type | Default | Description |
|---|---|---|---|
abn | string | — | Filter to statements containing this ABN in all_abns (exact match, 11 digits) |
name | string | — | Case-insensitive substring match on reporting entity name |
year | integer | — | Filter by lodgement year (e.g. 2025) |
sector | string | — | Filter to statements including this industry sector (exact match) |
type | string | — | single, joint, or voluntary |
limit | integer | 50 | Max results to return (1–200) |
offset | integer | 0 | Pagination offset |
curl "https://api.techcompass.com.au/v1/au/modern-slavery/statements?abn=57001117335" \
-H "Authorization: ApiKey tc_live_<your_key>"
{
"statements": [
{
"statement_id": "2025-2804",
"lodgement_year": 2025,
"period_start": "2024-04-01",
"period_end": "2025-03-31",
"statement_type": "single",
"headquartered_countries": ["Japan"],
"annual_revenue": "500-600M",
"reporting_entities": [
{ "name": "MAKITA (AUSTRALIA) PTY LTD", "abn": "57001117335" }
],
"included_entities": [],
"all_abns": ["57001117335"],
"all_acns": [],
"statement_url": "https://modernslaveryregister.gov.au/statements/25533/",
"industry_sectors": ["Wholesale Trade", "Manufacturing"],
"related_statements": ["2021-2445"],
"ingested_at": "2026-07-07T08:00:00Z"
}
],
"limit": 50,
"offset": 0,
"data_lineage": {
"source": "au_modern_slavery_register",
"source_url": "https://modernslaveryregister.gov.au",
"source_attribution": "Australian Border Force Modern Slavery Register",
"license": "Data obtained under the Modern Slavery Act 2018 (Cth). Statements are public records.",
"retrieved_at": "2026-07-07T10:00:00Z"
}
}
?abn= to look up all statements ever lodged by a specific entity. For joint statements, a subsidiary's ABN appears in all_abns even if it is not the primary reporting entity — so this filter covers the full corporate group.
GET /v1/au/modern-slavery/statements/{statement_id}
Retrieve the full detail for a single statement by its register ID. Returns HTTP 404 if the statement ID is not found.
curl "https://api.techcompass.com.au/v1/au/modern-slavery/statements/2025-2804" \
-H "Authorization: ApiKey tc_live_<your_key>"
{
"statement": { ... },
"data_lineage": { ... }
}
POST /v1/au/modern-slavery/screen
Batch screen multiple ABNs — returns all statements associated with each ABN. Useful for supply chain audits across a known supplier list.
| Field | Type | Required | Description |
|---|---|---|---|
identifiers | array of strings | Yes | ABNs to screen (11 digits each, spaces optional). Maximum 50 per request. |
curl -X POST "https://api.techcompass.com.au/v1/au/modern-slavery/screen" \
-H "Authorization: ApiKey tc_live_<your_key>" \
-H "Content-Type: application/json" \
-d '{"identifiers": ["57001117335", "31632578342", "88000012345"]}'
{
"results": {
"57001117335": [
{
"statement_id": "2025-2804",
"lodgement_year": 2025,
"period_start": "2024-04-01",
"period_end": "2025-03-31",
"statement_type": "single",
"reporting_entities": [
{ "name": "MAKITA (AUSTRALIA) PTY LTD", "abn": "57001117335" }
],
"annual_revenue": "500-600M",
"statement_url": "https://modernslaveryregister.gov.au/statements/25533/",
"industry_sectors": ["Wholesale Trade", "Manufacturing"],
"all_abns": ["57001117335"],
"...": "..."
}
],
"31632578342": [],
"88000012345": []
},
"data_lineage": { ... }
}
Error Reference
| Status | Error | Meaning |
|---|---|---|
| 401 | INVALID_API_KEY | Missing or invalid API key |
| 403 | PRODUCT_ACCESS_DENIED | /screen requires Professional tier — product p10_modern_slavery not enabled on this key |
| 404 | — | Statement ID not found |
| 422 | — | identifiers is empty or exceeds 50 items |
| 429 | QUOTA_EXCEEDED | Monthly API call quota exhausted |
| 503 | — | AU database temporarily unavailable |
Common Use Cases
1. Screen a supplier by ABN before onboarding
Who uses this: Procurement teams, ESG managers, and supply chain compliance officers conducting pre-onboarding due diligence.
curl "https://api.techcompass.com.au/v1/au/modern-slavery/statements?abn=57001117335" \
-H "Authorization: ApiKey YOUR_KEY"
related_statements to see if the entity has lodged in prior years (consistent lodgement is a positive signal). A missing statement for a large entity may indicate non-compliance rather than a revenue exemption — cross-reference annual revenue data from ASIC or ABR.
2. ESG and supply chain reporting
Who uses this: Listed companies, fund managers, and ESG analysts building supplier risk profiles or preparing their own modern slavery statements.
# Get all 2025 statements from the Manufacturing sector
curl "https://api.techcompass.com.au/v1/au/modern-slavery/statements?year=2025§or=Manufacturing&limit=200" \
-H "Authorization: ApiKey YOUR_KEY"
included_entities. All subsidiary ABNs appear in all_abns, so a single statement may satisfy the obligation for dozens of entities in a corporate group.
3. Sector-based risk mapping
Who uses this: Regulators, researchers, and risk consultants mapping modern slavery lodgement rates and risk exposure across industry sectors.
# Find all voluntary statements (often smaller entities proactively disclosing)
curl "https://api.techcompass.com.au/v1/au/modern-slavery/statements?type=voluntary&limit=200" \
-H "Authorization: ApiKey YOUR_KEY"
# Filter to a specific sector
curl "https://api.techcompass.com.au/v1/au/modern-slavery/statements?sector=Agriculture%2C+Forestry+and+Fishing" \
-H "Authorization: ApiKey YOUR_KEY"
4. Batch supplier audit across a procurement list (Pro)
Who uses this: Procurement and compliance teams with a known supplier list, running periodic checks against the register as part of their own modern slavery due diligence obligations.
curl -X POST "https://api.techcompass.com.au/v1/au/modern-slavery/screen" \
-H "Authorization: ApiKey YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"identifiers": ["57001117335", "88000012345", "31632578342"]}'
About this API
What this API does
The Tech Compass AU Modern Slavery Register API provides structured, searchable access to statements lodged under the Modern Slavery Act 2018 (Cth). Entities can search by ABN, entity name, industry sector, and lodgement year. The batch screen endpoint (Pro tier) accepts a list of ABNs and returns all associated statements in a single call — designed for supply chain due diligence workflows and automated procurement screening. The pipeline ingests a fresh snapshot quarterly and accumulates statements indefinitely via unique statement_id upsert.
Who uses this API
- Procurement and supply chain teams screening supplier ABNs for lodgement status and history
- Listed companies and fund managers building ESG supplier risk profiles
- Consultants preparing clients' own modern slavery statements under the Act
- Regulators and researchers mapping lodgement rates and sector exposure
- RegTech platforms embedding modern slavery compliance checks into onboarding workflows
- Financial institutions assessing supply chain risk as part of ESG lending criteria
Applicable compliance frameworks
- Modern Slavery Act 2018 (Cth) — mandatory lodgement for entities over AUD $100M revenue
- ASX Corporate Governance Principles and Recommendations — supply chain risk disclosure
- APRA CPG 229 — climate and ESG risk for regulated entities
- UN Guiding Principles on Business and Human Rights (UNGPs)
- OECD Guidelines for Multinational Enterprises — due diligence on supply chains
- Global Slavery Index — industry benchmarking
Data source
- Australian Border Force — modernslaveryregister.gov.au — Public records under the Modern Slavery Act 2018 (Cth)
Frequently asked questions
- How current is the data?
- The pipeline ingests a fresh snapshot quarterly (January, April, July, October). Statements lodged between snapshots will appear at the next scheduled ingest. The
ingested_atfield shows when Tech Compass last updated each record. - Does an empty result mean an entity is exempt?
- Not necessarily. An entity with annual consolidated revenue over AUD $100M that has no statement on record may be non-compliant, may have lodged under a different ABN (e.g. a parent entity joint filing), or the most recent snapshot may pre-date their lodgement. Always check
related_statementsfor prior-year history and use thenamefilter if the ABN lookup returns no results. - What is a joint statement?
- A parent entity may lodge a single joint statement covering multiple subsidiaries. All covered entities appear in
included_entitiesand their ABNs are included inall_abns. A subsidiary that appears only inincluded_entities(notreporting_entities) has not lodged independently but is covered by the joint statement. - Why does annual_revenue show a band instead of a number?
- The register collects revenue bands (
100-150M,500-600M,1BN+, etc.) rather than exact figures. The API returns this field as published. - Can I get the full statement text?
- Not via the API. The
statement_urlfield links to the original PDF statement on the register. The API provides structured metadata only.
Related APIs
- AU Entity Intelligence API — ASIC company status and ABR lookup for ABN verification
- Compliance Monitoring API (CMaaS) — automated watchlist alerts for new statements
- AU Financial Advisers Register API — ASIC Financial Advisers Register