asicapidocs

Get a person's roles, licences and shareholdings

Read a person's ASIC personal name extract as JSON: every directorship, secretary and liquidator role, registered licence, shareholding and lodged document.

A personal name extract is ASIC's record of everything one person does on the companies register: the companies where they are or were a director, secretary, alternate director or external administrator, any registered liquidator or auditor registration they hold, the shareholdings ASIC records for them in proprietary companies, and the documents lodged that name them. This endpoint returns that extract as a single person object and is the fastest way to answer "what companies is this person a director of" for KYC, credit and conflict-of-interest checks. It reads from the most recent person extract you hold for the person and is free; the extract itself is purchased once with POST /v1/people/extracts, as explained in the purchasing guide.

GEThttps://api.asicapi.dev/v1/people/{personId}

Path parameters

Prop

Type

Query parameters

Prop

Type

Whether ceased records and shareholdings are present is decided when the extract is purchased (history and includeShareholdings on the POST), not here.

Example request

Request
curl "https://api.asicapi.dev/v1/people/prs_8f3k2m9q" \
  -H "Authorization: Bearer $ASICAPI_KEY"

Example response

Response
{
  "object": "person",
  "id": "prs_8f3k2m9q",
  "searchId": "psr_01J9AB3CD4EFG5HJ6KM7NP8QR",
  "asicIdentifier": "012345678",
  "name": {
    "familyName": "SMITH",
    "givenNames": ["JANE", "LOUISE"],
    "formatted": "JANE LOUISE SMITH"
  },
  "birth": {
    "date": "1975-04-03",
    "locality": "MELBOURNE",
    "stateOrCountry": "VIC"
  },
  "formerName": null,
  "extract": {
    "id": "ext_01J9AG8K1L4M7N2P",
    "type": "historical",
    "purchasedAt": "2026-09-04T03:12:44Z",
    "asOf": "2026-09-04T03:12:41Z"
  },
  "includeShareholdings": true,
  "notices": [
    {
      "type": "acnc_charity",
      "acn": "009136109",
      "text": "This company is registered as a charity with the Australian Charities and Not-for-Profits Commission (ACNC). To find out if the person is a current director of this company, search the company on the Charities register at www.acnc.gov.au."
    }
  ],
  "roles": [
    {
      "object": "role",
      "role": { "code": "DR", "label": "Director" },
      "status": { "code": "C", "label": "Current" },
      "appointedAt": "2015-02-01",
      "ceasedAt": null,
      "company": {
        "acn": "004085616",
        "formatted": "004 085 616",
        "numberType": { "code": "ACN", "label": "Australian Company Number" },
        "name": "ACME WIDGETS PTY LTD",
        "type": { "code": "APTY", "label": "Australian Proprietary Company" },
        "status": { "code": "REGD", "label": "Registered" },
        "abn": "53004085616",
        "registeredCharity": false
      },
      "address": {
        "careOf": null,
        "line1": "UNIT 7",
        "street": "45 STATION STREET",
        "locality": "HAWTHORN",
        "state": "VIC",
        "postcode": "3122",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "0E5123456", "qualifier": null }
    },
    {
      "object": "role",
      "role": { "code": "DR", "label": "Director" },
      "status": { "code": "C", "label": "Current" },
      "appointedAt": "2021-09-14",
      "ceasedAt": null,
      "company": {
        "acn": "009136109",
        "formatted": "009 136 109",
        "numberType": { "code": "ACN", "label": "Australian Company Number" },
        "name": "NORTHERN RIVERS COMMUNITY FOUNDATION LTD",
        "type": { "code": "APUB", "label": "Australian Public Company" },
        "status": { "code": "REGD", "label": "Registered" },
        "abn": "27009136109",
        "registeredCharity": true
      },
      "address": {
        "careOf": null,
        "line1": "UNIT 7",
        "street": "45 STATION STREET",
        "locality": "HAWTHORN",
        "state": "VIC",
        "postcode": "3122",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "3E4455667", "qualifier": null }
    },
    {
      "object": "role",
      "role": { "code": "SR", "label": "Secretary" },
      "status": { "code": "E", "label": "Ceased/Former" },
      "appointedAt": "2009-06-15",
      "ceasedAt": "2014-11-30",
      "company": {
        "acn": "001000004",
        "formatted": "001 000 004",
        "numberType": { "code": "ACN", "label": "Australian Company Number" },
        "name": "BLUE HARBOUR HOLDINGS PTY LTD",
        "type": { "code": "APTY", "label": "Australian Proprietary Company" },
        "status": { "code": "REGD", "label": "Registered" },
        "abn": "71001000004",
        "registeredCharity": false
      },
      "address": {
        "careOf": null,
        "line1": null,
        "street": "18 BEACH ROAD",
        "locality": "MANLY",
        "state": "NSW",
        "postcode": "2095",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "7E1234567", "qualifier": null }
    },
    {
      "object": "role",
      "role": { "code": "VQ", "label": "Appointed Liquidator (Creditors Voluntary Winding Up)" },
      "status": { "code": "C", "label": "Current" },
      "appointedAt": "2023-03-20",
      "ceasedAt": null,
      "company": {
        "acn": "004249987",
        "formatted": "004 249 987",
        "numberType": { "code": "ACN", "label": "Australian Company Number" },
        "name": "SOUTHERN CROSS LOGISTICS PTY LTD",
        "type": { "code": "APTY", "label": "Australian Proprietary Company" },
        "status": { "code": "EXAD", "label": "** Under External Administration And/Or Controller Appointed **" },
        "abn": "38004249987",
        "registeredCharity": false
      },
      "address": {
        "careOf": "C/- HARBOUR INSOLVENCY",
        "line1": "LEVEL 12",
        "street": "200 QUEEN STREET",
        "locality": "MELBOURNE",
        "state": "VIC",
        "postcode": "3000",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "1E9876543", "qualifier": null }
    },
    {
      "object": "role",
      "role": { "code": "SH", "label": "Member" },
      "status": { "code": "C", "label": "Current" },
      "appointedAt": null,
      "ceasedAt": null,
      "company": {
        "acn": "004085616",
        "formatted": "004 085 616",
        "numberType": { "code": "ACN", "label": "Australian Company Number" },
        "name": "ACME WIDGETS PTY LTD",
        "type": { "code": "APTY", "label": "Australian Proprietary Company" },
        "status": { "code": "REGD", "label": "Registered" },
        "abn": "53004085616",
        "registeredCharity": false
      },
      "address": {
        "careOf": null,
        "line1": "UNIT 7",
        "street": "45 STATION STREET",
        "locality": "HAWTHORN",
        "state": "VIC",
        "postcode": "3122",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "0E5123456", "qualifier": null }
    }
  ],
  "licences": [
    {
      "object": "licence",
      "type": { "code": "RQ", "label": "Registered Liquidator" },
      "status": { "code": "C", "label": "Current" },
      "licenceNumber": "12345",
      "licenceStatus": { "code": "APPR", "label": "Application approved and licence granted" },
      "from": "2010-01-01",
      "to": null,
      "address": {
        "careOf": null,
        "line1": "LEVEL 12",
        "street": "200 QUEEN STREET",
        "locality": "MELBOURNE",
        "state": "VIC",
        "postcode": "3000",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "5E0011223", "qualifier": null }
    }
  ],
  "shareholdings": [
    {
      "object": "shareholding",
      "classCode": "ORD",
      "numberHeld": 500,
      "beneficiallyOwned": true,
      "fullyPaid": true,
      "status": { "code": "C", "label": "Current" },
      "jointHolding": false,
      "company": {
        "acn": "004085616",
        "formatted": "004 085 616",
        "numberType": { "code": "ACN", "label": "Australian Company Number" },
        "name": "ACME WIDGETS PTY LTD",
        "type": { "code": "APTY", "label": "Australian Proprietary Company" },
        "status": { "code": "REGD", "label": "Registered" },
        "abn": "53004085616",
        "registeredCharity": false
      },
      "address": {
        "careOf": null,
        "line1": "UNIT 7",
        "street": "45 STATION STREET",
        "locality": "HAWTHORN",
        "state": "VIC",
        "postcode": "3122",
        "country": "AUSTRALIA"
      },
      "sourceDocument": { "documentNumber": "0E5123456", "qualifier": null }
    }
  ],
  "documents": [
    {
      "object": "document",
      "documentNumber": "1E9876543",
      "formCode": "505",
      "formDescription": "Notification of appointment or cessation of an external administrator",
      "subForms": [],
      "receivedAt": "2023-03-22",
      "processedAt": "2023-03-23",
      "effectiveAt": "2023-03-20",
      "qualifier": null,
      "pageCount": 3,
      "imaged": true,
      "underRequisition": false,
      "xbrlAvailable": false,
      "xbrlDocumentNumber": null,
      "status": null,
      "priced": null
    },
    {
      "object": "document",
      "documentNumber": "0E5123456",
      "formCode": "484",
      "formDescription": "Change to company details",
      "subForms": [
        { "code": "484A", "description": "Change officeholder name or address" },
        { "code": "484E", "description": "Change to members register" }
      ],
      "receivedAt": "2015-02-09",
      "processedAt": "2015-02-10",
      "effectiveAt": "2015-02-01",
      "qualifier": null,
      "pageCount": 4,
      "imaged": true,
      "underRequisition": false,
      "xbrlAvailable": false,
      "xbrlDocumentNumber": null,
      "status": null,
      "priced": null
    },
    {
      "object": "document",
      "documentNumber": "7E1234567",
      "formCode": "370",
      "formDescription": "Notification by officeholder of resignation or retirement",
      "subForms": [],
      "receivedAt": "2014-12-02",
      "processedAt": "2014-12-04",
      "effectiveAt": "2014-11-30",
      "qualifier": null,
      "pageCount": 0,
      "imaged": false,
      "underRequisition": false,
      "xbrlAvailable": false,
      "xbrlDocumentNumber": null,
      "status": null,
      "priced": null
    }
  ],
  "meta": {
    "billable": false,
    "product": null,
    "requestId": "req_01J9AC7T2W9X4Y6Z"
  }
}

Response fields

FieldTypeDescription
objectstringAlways person.
idstringThe person id you requested.
searchIdstringThe people search that produced this person id.
asicIdentifierstringASIC's internal identifier for the personal name record, up to 9 digits. Stable across searches.
nameobjectCurrent name: familyName, givenNames[], formatted.
birthobjectdate (ISO 8601 or null), locality, stateOrCountry. All null when ASIC has no birth record.
formerNameobject or nullFormer name that matched the search, in the same shape as name. null when the current name matched.
extractobjectThe extract this response was read from: id, type (current or historical), purchasedAt, asOf. Ceased records are present only when type is historical.
includeShareholdingsbooleanWhether the extract was purchased with shareholdings and Member roles.
notices[]arrayText ASIC requires to be shown with the extract. Empty when none applies.
notices[].typestringacnc_charity when the person is a director of a company registered with the ACNC, or same_name when birth details are unknown and the record may cover more than one person.
notices[].acnstring or nullThe company the notice relates to, for acnc_charity. null for same_name.
notices[].textstringThe notice text, verbatim as ASIC requires it to be displayed.
roles[]arrayCompany roles held by the person. See list a person's roles for the paginated, filterable form.
roles[].objectstringAlways role.
roles[].rolecodeOffice holder role from the office holder roles table (for example DR Director, SR Secretary, VQ Appointed Liquidator), or SH Member when the extract includes shareholdings.
roles[].statuscodeC current, E ceased. Ceased roles appear only in a historical extract.
roles[].appointedAtdate or nullAppointment date. null for Member roles and where ASIC has no date.
roles[].ceasedAtdate or nullCessation date for ceased roles.
roles[].companyobjectCompany summary: acn, formatted, numberType, name, type, status, abn, registeredCharity. numberType is the heading ASIC gives the number (ACN, ARBN, ARSN or plain Number).
roles[].addressobject or nullThe address recorded for the person in that role.
roles[].sourceDocumentobject or nullDocument that last changed the role record: documentNumber and qualifier (for example AR 2019 for an annual return year).
licences[]arrayRegistrations and licences held by the person as a natural person.
licences[].objectstringAlways licence.
licences[].typecodeLicence or register role from the person licence and register roles table, for example RQ Registered Liquidator, RA Registered Auditor, FR Financial Services Representative, DD Disqualified Persons.
licences[].statuscodeC current, E ceased.
licences[].licenceNumberstring or nullRegistration or licence number, when the register uses one.
licences[].licenceStatuscode or nullLicence status from the licence statuses table, for example APPR, SUSP, NOAC.
licences[].fromdateStart of the registration or licence.
licences[].todate or nullEnd of the registration or licence.
licences[].addressobject or nullAddress recorded on the licence or register.
licences[].sourceDocumentobject or nullDocument that last changed the licence record.
shareholdings[]arrayShareholdings ASIC records for the person. Empty when includeShareholdings is false. See list a person's shareholdings.
shareholdings[].objectstringAlways shareholding.
shareholdings[].classCodestringShare class code as the company uses it, for example ORD.
shareholdings[].numberHeldintegerNumber of shares held in that class.
shareholdings[].beneficiallyOwnedboolean or nullWhether the shares are held beneficially.
shareholdings[].fullyPaidboolean or nullWhether the shares are fully paid.
shareholdings[].statuscodeC current, E ceased.
shareholdings[].jointHoldingbooleanWhether the holding is joint.
shareholdings[].companyobjectSummary of the issuing company, same shape as roles[].company.
shareholdings[].addressobject or nullMember address recorded by the company.
shareholdings[].sourceDocumentobject or nullDocument that last changed the holding.
documents[]arrayDocuments lodged in relation to the person, newest first. See list a person's documents.
documents[].objectstringAlways document.
documents[].documentNumberstring9-character ASIC document number.
documents[].formCodestringASIC form code, for example 484. See ASIC form codes.
documents[].formDescriptionstringForm title.
documents[].subForms[]arraySub-form codes and descriptions where the form has schedules, for example 484E.
documents[].receivedAtdateDate ASIC received the document.
documents[].processedAtdate or nullDate ASIC processed it.
documents[].effectiveAtdate or nullEffective date of the change reported.
documents[].qualifierstring or nullAnnual return or financial report year, for example AR 2019.
documents[].pageCountintegerNumber of imaged pages. 0 means the image is not currently retrievable.
documents[].imagedbooleanfalse when pageCount is 0.
documents[].underRequisitionbooleanWhether ASIC has requisitioned the document for correction.
documents[].xbrlAvailablebooleanWhether XBRL financial data accompanies the document.
documents[].xbrlDocumentNumberstring or nullDocument number of the XBRL file when xbrlAvailable is true.
documents[].statusnullForm status is only supplied on company document lists; always null here.
documents[].pricednullPricing indicator is only supplied on company document lists; always null here.
metaobjectReads are free: billable is false, product is null, requestId echoes X-Request-Id. The billing record is on the purchase response.

Errors

CodeHTTP statusWhen
extract_required402You hold no person extract for this person. details.purchase tells you exactly what to POST; see the example below.
extract_not_found404The extract query parameter names an extract that does not exist, belongs to another person or is not a person extract.
extract_expired410The extract named by extract, or the only extract you hold for the person, is more than 12 months old. Purchase again.
extract_owner_mismatch403The extract named by extract was purchased under a different account.
person_not_found404The person id is malformed or was never returned by a search under your account.
validation_error422extract is not a well-formed extract id.

The 402 response names the purchase that would satisfy the request:

402 Payment Required
{
  "error": {
    "type": "extract_required_error",
    "code": "extract_required",
    "message": "A person's roles, licences and shareholdings are part of a person extract. Purchase one with POST /v1/people/extracts.",
    "param": null,
    "asicCode": null,
    "requestId": "req_01J9AC7T2W9X4Y6Z",
    "docUrl": "https://asicapi.dev/docs/errors#extract_required",
    "details": {
      "purchase": {
        "method": "POST",
        "path": "/v1/people/extracts",
        "body": {
          "searchId": "psr_01J9AB3CD4EFG5HJ6KM7NP8QR",
          "personIds": ["prs_8f3k2m9q"],
          "history": false,
          "includeShareholdings": false
        },
        "product": "person_extract"
      }
    }
  }
}

Notes from the ASIC register

  • Reads are free; purchases are not. This endpoint never contacts ASIC. It returns the most recent person extract you hold, bought with POST /v1/people/extracts, and each read is free for the 12 months the extract is stored. To see lodgements made since extract.asOf, purchase again. See the purchasing guide.
  • Person ids and search expiry. ASIC retains name search results for one month, so a person id can only be used to purchase for 30 days after its search. Reading an extract you already hold with that id keeps working for the life of the extract. If the search has expired and you need fresh data, search again by name; asicIdentifier is the durable reference for matching the new id to the old one.
  • Nine hundred and ninety-nine roles. ASIC abandons an extract with more than 999 roles. This affects professional directors and registered liquidators with long careers, and surfaces as person_too_many_roles on the purchase, never here.
  • Charity directors. When the person is a director of a company registered with the Australian Charities and Not-for-profits Commission, ASIC sets registeredCharity to true on that company and requires this text to be displayed: "This company is registered as a charity with the Australian Charities and Not-for-Profits Commission (ACNC). To find out if the person is a current director of this company, search the company on the Charities register at www.acnc.gov.au." asicapi returns it in notices[] with type acnc_charity. The flag is only returned when the subject of the extract is a director of a charity; ASIC's own record of a charity's directors may be out of date because charities report to the ACNC instead.
  • Same-name notice. Where birth details are not recorded, ASIC requires this note under the name: "Note: This information may relate to more than one person. Where birth details are not recorded for persons with the same name, their information may be displayed under a single name entry." asicapi returns it in notices[] with type same_name whenever birth.date is null.
  • Role ordering. Roles follow ASIC's role sequence (management roles, then external administration, scheme and other roles), with current before ceased and ceased roles in reverse chronological order. Member roles are listed last.
  • Member roles and shareholdings. When the extract was purchased with includeShareholdings, ASIC adds a SH Member role for each company in which the person is a recorded member, alongside the detailed shareholdings[] entries. For each share class of a proprietary company ASIC records only the twenty largest members plus any member tied with the twentieth. A ceased shareholding may mean the person dropped out of the top twenty, not that they sold their shares.
  • ABNs. ASIC receives a feed from the Australian Business Register and adds the ABN to each company where one exists; abn is null otherwise.
  • Source documents. sourceDocument identifies the document that made the latest change to the record. Annual returns are qualified as AR 1998 and financial reports as FR 1998. Order the image with image orders.
  • XBRL. For financial reports lodged with XBRL data, xbrlAvailable is true and the XBRL document number is supplied in xbrlDocumentNumber. The XBRL file is not listed as a separate document.
  • Unknown codes. ASIC adds codes to its tables without notice. When asicapi does not recognise a code, label equals code.

On this page