Get company share capital and share classes
Retrieve the issued share capital of an Australian company by ACN from the ASIC register, with each share class, shares issued, amount paid and amount unpaid.
Company share capital
The share capital section of an ASIC company extract lists each class of shares a company has issued (ordinary, preference, redeemable and so on) with the number of shares on issue, the total amount paid or taken to be paid, and the total amount still due and payable. For a managed investment scheme the same structure describes the interests issued. This endpoint returns those share classes as structured records, which is the quickest way to confirm a company's issued capital before looking at who holds it with the members endpoint. The data comes from a company extract you have already purchased with POST /v1/companies/{id}/extracts and is read back for free, as described in the purchasing guide.
https://api.asicapi.dev/v1/companies/{id}/share-capitalPath parameters
Prop
Type
Query parameters
Prop
Type
Example request
curl "https://api.asicapi.dev/v1/companies/004085616/share-capital?status=all" \
-H "Authorization: Bearer $ASICAPI_KEY"Example response
{
"object": "list",
"data": [
{
"object": "shareClass",
"classCode": "ORD",
"classTitle": "ORDINARY",
"status": { "code": "C", "label": "Current" },
"sharesIssued": 1000,
"amountPaid": "1000.00",
"amountDue": "0.00",
"sourceDocument": { "documentNumber": "0E5123456", "qualifier": null }
},
{
"object": "shareClass",
"classCode": "RPS",
"classTitle": "REDEEMABLE PREFERENCE",
"status": { "code": "C", "label": "Current" },
"sharesIssued": 250000,
"amountPaid": "187500.00",
"amountDue": "62500.00",
"sourceDocument": { "documentNumber": "2E2233445", "qualifier": null }
},
{
"object": "shareClass",
"classCode": "B",
"classTitle": "B CLASS",
"status": { "code": "E", "label": "Ceased/Former" },
"sharesIssued": 0,
"amountPaid": "0.00",
"amountDue": "0.00",
"sourceDocument": { "documentNumber": "7E1234567", "qualifier": "AR 2001" }
}
],
"hasMore": false,
"nextCursor": null,
"totalCount": null,
"extract": {
"id": "ext_01J9AC5D8R3YN7",
"type": "historical",
"purchasedAt": "2026-09-04T03:13:30Z",
"asOf": "2026-09-04T03:13:27Z"
},
"meta": { "billable": false, "product": null, "requestId": "req_01J8ZK8R5S6T7U" }
}Response fields
| Field | Type | Description |
|---|---|---|
object | string | Always list. |
data[] | shareClass[] | One record per share class, current classes first. |
data[].object | string | Always shareClass. |
data[].classCode | string | Share class code as notified by the company, for example ORD, A, RPS. Codes are chosen by the company and are only unique within the company. Use it to match holdings in the members list. |
data[].classTitle | string | Full title of the class as notified, for example ORDINARY. |
data[].status | code | C current or E ceased. |
data[].sharesIssued | integer or null | Number of shares (or scheme interests) issued in the class. |
data[].amountPaid | string or null | Total amount paid, or taken to be paid, on the shares in this class, as a decimal string in AUD. |
data[].amountDue | string or null | Total amount due and payable but not yet paid on the shares in this class. "0.00" when all shares are fully paid. |
data[].sourceDocument | object or null | Document that last changed this class, usually a Form 484 or Form 2205 (notification of resolutions regarding shares). qualifier is set for annual returns and financial reports. |
hasMore | boolean | Always false. |
nextCursor | string or null | Always null. |
totalCount | integer or null | null. |
extract | object | The extract the data was read from: id, type (current or historical), purchasedAt and asOf. Share issues or cancellations lodged after asOf are not reflected. |
meta.billable | boolean | Always false. Reading an extract you hold is free. |
meta.product | string or null | Always null. |
meta.requestId | string | Request identifier. |
Errors
| Code | HTTP | When it occurs |
|---|---|---|
extract_required | 402 | You hold no unexpired extract for this company, or you asked for status=former or status=all and only hold a current extract. error.details.purchase gives the request to make. |
extract_not_found | 404 | The extract id does not exist on your account. |
extract_expired | 410 | The extract id refers to an extract older than 12 months. |
extract_owner_mismatch | 403 | The extract id belongs to a different account, or is not an extract of this company. |
acn_invalid | 400 | The number fails the ASIC check digit test. |
company_not_found | 404 | No organisation with this identifier. |
abn_invalid | 400 | The ABN fails its check digit test. |
abn_not_acn_based | 400 | The ABN does not embed an ACN. |
abn_not_found | 404 | No company matches the ACN embedded in the ABN. |
extract_unavailable_for_type | 422 | ASIC does not issue extracts for this organisation type. |
validation_error | 422 | Unknown status value. |
unauthorized | 401 | Missing or invalid API key. |
rate_limited | 429 | Rate limit exceeded. |
asic_unavailable | 503 | The ASIC register is offline. |
Notes from the ASIC register
- Snapshot. Share capital reflects the register at
extract.asOf. A share issue notified after that date appears only in a newly purchased extract. - Companies without shares. Companies limited by guarantee (class
LMGT) and registered bodies have no share capital, sodatais empty. An empty list is not an error. - Members are limited to the top 20. ASIC prints the following note after the share capital section for every organisation type other than a managed investment scheme: For each class of shares issued by a proprietary company, ASIC records the details of the twenty members of the class (based on shareholdings). The details of any other members holding the same number of shares as the twentieth ranked member will also be recorded by ASIC on the database. Where available, historical records show that a member has ceased to be ranked amongst the twenty members. This may, but does not necessarily mean, that they have ceased to be a member of the company. The share capital totals cover all shares in the class, not just those held by the recorded members.
- Public companies. Since 1 July 1998 public companies are not required to notify ASIC of their members, but they must still notify changes to share capital, so this section is populated for public companies while the members list may be empty.
- Schemes. For a managed investment scheme (
MISM) each record describes a class of interests rather than shares and the top 20 note does not apply. - Amounts. ASIC records amounts paid and due in whole cents. asicapi returns them as decimal strings to avoid floating point rounding.
- Ceased classes. A ceased class is only present in a historical extract. Its
sharesIssuedis typically0and itssourceDocumentis the document that cancelled or converted the class.
Related
Purchase a company extract
Buy the current or historical extract this endpoint reads from.
Purchasing
How free lookups, purchased extracts and orders fit together.
Share capital and members
Share classes, paid and unpaid capital, and the top 20 members rule.
Company members
Who holds the shares in each class.
Documents
Find the Form 484 or 2205 that changed the capital.
List company addresses
Get the registered office, principal place of business and other ASIC-recorded addresses of an Australian company by ACN, with former addresses and dates.
List company members and shareholders
List the shareholders of an Australian proprietary company by ACN, with share class, number held, beneficial ownership, joint holders and addresses.