asicapidocs

Authorised representatives register API

Browse ASIC's registers of securities and futures industry authorised representatives by name or number, then purchase and read a representative extract.

Before the Australian financial services licence regime began in 2002, individuals who dealt in securities or futures on behalf of a licensed dealer or broker were recorded as authorised representatives, each with an ASIC representative number and one or more authorities held from a licensee. ASIC keeps the securities industry representatives register (SP) and the futures industry representatives register (FP), which compliance teams and researchers still use to confirm a person's licensing history, the licensees they represented, whether an authority was verified with the licensee, and any suspension. Three operations cover these registers: browse by name or representative number for free; purchase a representative extract, current or historical, which is the only billed step; and read the extract you hold, free, for 12 months. The extract includes former names, addresses and the names the person was known to a dealer by. The purchasing guide explains the model.

Browse a register

Browse returns representative summaries with the authorities each one held. It is free and never billed.

GEThttps://api.asicapi.dev/v1/registers/{register}/entries

Path parameters

Prop

Type

Query parameters

Provide either number, or both name and givenName.

Prop

Type

Example request

Request
curl "https://api.asicapi.dev/v1/registers/SP/entries?name=NGUYEN&givenName=THANH" \
  -H "Authorization: Bearer $ASICAPI_KEY"

Example response

Response
{
  "object": "list",
  "data": [
    {
      "object": "registerEntry",
      "register": { "code": "SP", "label": "Securities industry representatives" },
      "number": "245871",
      "party": {
        "type": "person",
        "person": { "familyName": "NGUYEN", "givenNames": ["THANH", "VAN"], "formatted": "THANH VAN NGUYEN" },
        "birth": null,
        "organisation": null
      },
      "from": "1994-08-22",
      "to": "2002-03-10",
      "isFormerName": false,
      "suspended": false,
      "address": {
        "careOf": null,
        "line1": "LEVEL 8",
        "street": "55 EXAMPLE STREET",
        "locality": "MELBOURNE",
        "state": "VIC",
        "postcode": "3000",
        "country": "AUSTRALIA"
      },
      "underAppeal": null,
      "authorities": [
        {
          "object": "authority",
          "register": { "code": "SD", "label": "Securities dealer" },
          "licenceNumber": "10234",
          "notVerified": false,
          "licensee": {
            "type": "organisation",
            "person": null,
            "birth": null,
            "organisation": {
              "number": "004085616",
              "numberType": { "code": "ACN", "label": "Australian Company Number" },
              "name": "SOUTHERN CROSS STOCKBROKING PTY LTD",
              "abn": "53004085616"
            }
          },
          "appointedAt": "1998-11-02",
          "ceasedAt": "2002-03-10",
          "status": { "code": "E", "label": "Ceased/Former" },
          "suspended": false
        },
        {
          "object": "authority",
          "register": { "code": "IA", "label": "Investment adviser" },
          "licenceNumber": "20871",
          "notVerified": true,
          "licensee": {
            "type": "person",
            "person": { "familyName": "WALKER", "givenNames": ["MARGARET"], "formatted": "MARGARET WALKER" },
            "birth": null,
            "organisation": null
          },
          "appointedAt": "1994-08-22",
          "ceasedAt": "1998-10-30",
          "status": { "code": "E", "label": "Ceased/Former" },
          "suspended": false
        }
      ]
    }
  ],
  "hasMore": false,
  "nextCursor": null,
  "totalCount": null,
  "meta": {
    "billable": false,
    "product": null,
    "requestId": "req_01J8ZK3V7Q0M2X"
  }
}

Response fields

FieldTypeDescription
objectstringAlways list.
data[].objectstringAlways registerEntry. This is the summary form; the read endpoint below returns the full form.
data[].registerobjectThe register browsed, { code, label } from the register types table.
data[].numberstringASIC representative number. Pass it to the purchase and read endpoints.
data[].partyobjectThe representative. Always type: "person"; birth is null on browse results.
data[].fromstring (date)Date the representative first appeared on the register.
data[].tostring (date) or nullDate the representative ceased, or null while current.
data[].isFormerNamebooleantrue when the matched name is a former name.
data[].suspendedbooleanAlways false at entry level for SP and FP; suspension is reported per authority.
data[].addressobject or nullAddress recorded for the representative.
data[].underAppealnullNot applicable to authorised representatives.
data[].authorities[]arrayAuthorities the representative held from licensees.
data[].authorities[].objectstringAlways authority.
data[].authorities[].registerobjectRegister of the licensee granting the authority (SD, IA for SP representatives; FB, FD for FP representatives), from the register types table.
data[].authorities[].licenceNumberstringLicence or registration number of the licensee. Use it with the professional registers endpoints.
data[].authorities[].notVerifiedbooleantrue when the authority information has not been verified with the licensee.
data[].authorities[].licenseeobjectParty object for the licensee: a person or an organisation with ACN or ARBN.
data[].authorities[].appointedAtstring (date)Date the authority was granted.
data[].authorities[].ceasedAtstring (date) or nullDate the authority ceased.
data[].authorities[].statusobject or nullC current or E ceased, from the record status table.
data[].authorities[].suspendedbooleantrue when the representative is currently under suspension by ASIC in respect of this authority.
hasMorebooleanWhether another page is available.
nextCursorstring or nullCursor for the next page. See pagination.
totalCountnullASIC does not report a total for register browses.
metaobjectBrowsing is free: billable is false and product is null.

Purchase a representative extract

Buying the extract is the one billed step. ASIC returns the data in the same call, so the response is 201 Created with the complete extract, stored under your account for 12 months. Choose history here: it decides whether ceased authorities and addresses are included and whether representatives who ceased before 2002 can be found at all.

POSThttps://api.asicapi.dev/v1/registers/{register}/entries/{number}/extracts

Path parameters

Prop

Type

Request body

Prop

Type

Send Content-Type: application/json. An Idempotency-Key header is honoured for 24 hours so a retried request returns the extract already purchased instead of buying it again.

Example request

Request
curl -X POST https://api.asicapi.dev/v1/registers/SP/entries/245871/extracts \
  -H "Authorization: Bearer $ASICAPI_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 4d7f1a2c-sp-245871-2026-09-04" \
  -d '{ "history": true }'

Example response

Response
{
  "object": "extract",
  "id": "ext_01J9AR4T7V0W3X6Y",
  "kind": "register",
  "type": "historical",
  "subject": {
    "object": "registerEntry",
    "register": { "code": "SP", "label": "Securities industry representatives" },
    "number": "245871",
    "party": {
      "type": "person",
      "person": { "familyName": "NGUYEN", "givenNames": ["THANH", "VAN"], "formatted": "THANH VAN NGUYEN" },
      "birth": null,
      "organisation": null
    }
  },
  "purchasedAt": "2026-09-04T03:52:08Z",
  "asOf": "2026-09-04T03:52:06Z",
  "expiresAt": "2027-09-04T03:52:08Z",
  "disclaimer": "This extract contains information derived from the Australian Securities and Investments Commission's (ASIC) database under section 1274A of the Corporations Act 2001. Please advise ASIC of any error which you may identify.",
  "register": { "code": "SP", "label": "Securities industry representatives" },
  "number": "245871",
  "representative": {
    "number": "245871",
    "name": { "familyName": "NGUYEN", "givenNames": ["THANH", "VAN"], "formatted": "THANH VAN NGUYEN" },
    "birth": { "date": "1968-11-30", "locality": "SAIGON", "stateOrCountry": "VIETNAM" },
    "formerNames": [
      { "familyName": "NGUYEN", "givenNames": ["THANH"], "formatted": "THANH NGUYEN" }
    ]
  },
  "authorities": [
    {
      "object": "authority",
      "register": { "code": "SD", "label": "Securities dealer" },
      "licenceNumber": "10234",
      "notVerified": false,
      "licensee": {
        "type": "organisation",
        "person": null,
        "birth": null,
        "organisation": {
          "number": "004085616",
          "numberType": { "code": "ACN", "label": "Australian Company Number" },
          "name": "SOUTHERN CROSS STOCKBROKING PTY LTD",
          "abn": "53004085616"
        }
      },
      "appointedAt": "1998-11-02",
      "ceasedAt": "2002-03-10",
      "status": { "code": "E", "label": "Ceased/Former" },
      "suspended": false
    },
    {
      "object": "authority",
      "register": { "code": "IA", "label": "Investment adviser" },
      "licenceNumber": "20871",
      "notVerified": true,
      "licensee": {
        "type": "person",
        "person": { "familyName": "WALKER", "givenNames": ["MARGARET"], "formatted": "MARGARET WALKER" },
        "birth": null,
        "organisation": null
      },
      "appointedAt": "1994-08-22",
      "ceasedAt": "1998-10-30",
      "status": { "code": "E", "label": "Ceased/Former" },
      "suspended": false
    }
  ],
  "addresses": [
    {
      "object": "address",
      "type": { "code": "PA", "label": "Principal Place of Practice" },
      "status": { "code": "E", "label": "Ceased/Former" },
      "from": "1998-11-02",
      "to": "2002-03-10",
      "address": {
        "careOf": null,
        "line1": "LEVEL 8",
        "street": "55 EXAMPLE STREET",
        "locality": "MELBOURNE",
        "state": "VIC",
        "postcode": "3000",
        "country": "AUSTRALIA"
      }
    },
    {
      "object": "address",
      "type": { "code": "RB", "label": "Representative's Business address" },
      "status": { "code": "E", "label": "Ceased/Former" },
      "from": "1994-08-22",
      "to": "1998-10-30",
      "address": {
        "careOf": "C/- WALKER FINANCIAL",
        "line1": null,
        "street": "12 SAMPLE STREET",
        "locality": "GEELONG",
        "state": "VIC",
        "postcode": "3220",
        "country": "AUSTRALIA"
      }
    }
  ],
  "knownAs": [
    { "familyName": "NGUYEN", "givenNames": ["TOM"], "formatted": "TOM NGUYEN" }
  ],
  "meta": {
    "billable": true,
    "product": "register_extract",
    "requestId": "req_01J9AR4T7V0W3X6Y"
  }
}

Response fields

FieldTypeDescription
objectstringAlways extract.
idstringExtract id, prefixed ext_. Pass it as the extract query parameter on the read endpoint, or to GET /v1/extracts/{id}.
kindstringAlways register.
typestringcurrent when history was false, historical when it was true.
subjectobjectSummary of what was purchased: object (registerEntry), register, number and party.
purchasedAttimestampWhen the extract was bought from ASIC, RFC 3339 UTC.
asOftimestampThe moment ASIC produced the data. The extract is a snapshot at this time and never refreshes.
expiresAttimestampWhen the extract stops being readable, 12 months after purchasedAt.
disclaimerstringASIC's section 1274A disclaimer, to be displayed with the extract.
registerobjectThe register requested, { code, label } from the register types table.
numberstringThe ASIC representative number requested.
representativeobjectThe representative's details.
representative.numberstringASIC representative number.
representative.nameobjectCurrent name as a person name object (familyName, givenNames[], formatted).
representative.birthobject or nullBirth details (date, locality, stateOrCountry) where ASIC holds them.
representative.formerNames[]arrayUp to ten former names, each a person name object.
authorities[]arrayAuthorities held from licensees, with the same shape as on browse results: object, register, licenceNumber, notVerified, licensee, appointedAt, ceasedAt, status, suspended. A current extract lists current authorities; a historical extract also lists ceased ones.
addresses[]arrayAddress records in the sequence principal place of practice (PA) then representative's business address (RB). Each has object (address), type (register address types), status (record status), from, to and the address composite.
knownAs[]arrayNames the representative was known to a dealer by, each a person name object.
metaobjectbillable is true in production and false in the sandbox; product is register_extract.

Read a representative entry

Reads the most recent representative extract you hold for the number. It is free and never contacts ASIC; the data is the snapshot taken when the extract was purchased.

GEThttps://api.asicapi.dev/v1/registers/{register}/entries/{number}

Path parameters

Prop

Type

Query parameters

Prop

Type

Example request

Request
curl https://api.asicapi.dev/v1/registers/SP/entries/245871 \
  -H "Authorization: Bearer $ASICAPI_KEY"

Example response

Response
{
  "object": "registerEntry",
  "register": { "code": "SP", "label": "Securities industry representatives" },
  "number": "245871",
  "extract": {
    "id": "ext_01J9AR4T7V0W3X6Y",
    "type": "historical",
    "purchasedAt": "2026-09-04T03:52:08Z",
    "asOf": "2026-09-04T03:52:06Z"
  },
  "representative": {
    "number": "245871",
    "name": { "familyName": "NGUYEN", "givenNames": ["THANH", "VAN"], "formatted": "THANH VAN NGUYEN" },
    "birth": { "date": "1968-11-30", "locality": "SAIGON", "stateOrCountry": "VIETNAM" },
    "formerNames": [
      { "familyName": "NGUYEN", "givenNames": ["THANH"], "formatted": "THANH NGUYEN" }
    ]
  },
  "authorities": [
    {
      "object": "authority",
      "register": { "code": "SD", "label": "Securities dealer" },
      "licenceNumber": "10234",
      "notVerified": false,
      "licensee": {
        "type": "organisation",
        "person": null,
        "birth": null,
        "organisation": {
          "number": "004085616",
          "numberType": { "code": "ACN", "label": "Australian Company Number" },
          "name": "SOUTHERN CROSS STOCKBROKING PTY LTD",
          "abn": "53004085616"
        }
      },
      "appointedAt": "1998-11-02",
      "ceasedAt": "2002-03-10",
      "status": { "code": "E", "label": "Ceased/Former" },
      "suspended": false
    },
    {
      "object": "authority",
      "register": { "code": "IA", "label": "Investment adviser" },
      "licenceNumber": "20871",
      "notVerified": true,
      "licensee": {
        "type": "person",
        "person": { "familyName": "WALKER", "givenNames": ["MARGARET"], "formatted": "MARGARET WALKER" },
        "birth": null,
        "organisation": null
      },
      "appointedAt": "1994-08-22",
      "ceasedAt": "1998-10-30",
      "status": { "code": "E", "label": "Ceased/Former" },
      "suspended": false
    }
  ],
  "addresses": [
    {
      "object": "address",
      "type": { "code": "PA", "label": "Principal Place of Practice" },
      "status": { "code": "E", "label": "Ceased/Former" },
      "from": "1998-11-02",
      "to": "2002-03-10",
      "address": {
        "careOf": null,
        "line1": "LEVEL 8",
        "street": "55 EXAMPLE STREET",
        "locality": "MELBOURNE",
        "state": "VIC",
        "postcode": "3000",
        "country": "AUSTRALIA"
      }
    },
    {
      "object": "address",
      "type": { "code": "RB", "label": "Representative's Business address" },
      "status": { "code": "E", "label": "Ceased/Former" },
      "from": "1994-08-22",
      "to": "1998-10-30",
      "address": {
        "careOf": "C/- WALKER FINANCIAL",
        "line1": null,
        "street": "12 SAMPLE STREET",
        "locality": "GEELONG",
        "state": "VIC",
        "postcode": "3220",
        "country": "AUSTRALIA"
      }
    }
  ],
  "knownAs": [
    { "familyName": "NGUYEN", "givenNames": ["TOM"], "formatted": "TOM NGUYEN" }
  ],
  "meta": {
    "billable": false,
    "product": null,
    "requestId": "req_01J9AR9Z2A5B8C1D"
  }
}

Response fields

FieldTypeDescription
objectstringAlways registerEntry. The browse endpoint returns the summary form of the same object; this endpoint returns the full form read from your extract.
registerobjectThe register requested, { code, label }.
numberstringThe ASIC representative number requested.
extractobjectThe extract this response was read from: id, type (current or historical), purchasedAt, asOf. Ceased authorities and addresses are present only when type is historical.
representative, authorities[], addresses[], knownAs[]sectionsIdentical to the sections of the purchase response above.
metaobjectReads are free: billable is false and product is null.

Errors

CodeHTTP statusApplies toWhen
register_invalid400All{register} is not SP or FP.
browse_key_too_short400Browsename or givenName has fewer than two alphabetic characters, or one was supplied without the other.
validation_error422Browse, purchase, readNeither number nor a name pair was supplied, or both were; the purchase body is not valid JSON; or extract is malformed.
extract_type_invalid400Purchasehistory is not a boolean.
no_matches404Browse, purchaseNo representatives match the name or number, or no representative with that number on that register. Purchase with history: true for representatives who ceased before 2002.
extract_required402ReadYou hold no extract for this representative. details.purchase carries the POST that would satisfy the request; see below.
extract_not_found404ReadThe extract query parameter names an extract that does not exist, is for a different representative or is not a register extract.
extract_expired410ReadThe extract is more than 12 months old. Purchase again.
extract_owner_mismatch403ReadThe extract named by extract was purchased under a different account.
product_unavailable_in_jurisdiction403PurchaseRegister extracts are not enabled for your account's jurisdiction.
idempotency_conflict409PurchaseThe Idempotency-Key was already used with a different request.
asic_unavailable503Browse, purchaseThe ASIC database is offline. Reads of extracts you hold are unaffected.
402 Payment Required
{
  "error": {
    "type": "extract_required_error",
    "code": "extract_required",
    "message": "Representative details are part of a register extract. Purchase one with POST /v1/registers/SP/entries/245871/extracts.",
    "param": null,
    "asicCode": null,
    "requestId": "req_01J9AR9Z2A5B8C1D",
    "docUrl": "https://asicapi.dev/docs/errors#extract_required",
    "details": {
      "purchase": {
        "method": "POST",
        "path": "/v1/registers/SP/entries/245871/extracts",
        "body": { "history": false },
        "product": "register_extract"
      }
    }
  }
}

Notes from the ASIC register

  • Browse, purchase, read. Browsing is free, the POST is the only step ASIC charges for, and every read of the resulting extract is free for 12 months. A read never refreshes the data; to see changes lodged since extract.asOf, purchase again. When you hold both a current and a historical extract, the read endpoint returns the most recently purchased one unless you name a specific extract. See the purchasing guide.
  • Both names are required to browse. Unlike the other registers, browsing SP or FP by name requires a family name and a first given name, each with at least two alphabetic characters. ASIC returns every representative whose names match. Browsing by ASIC representative number returns one representative.
  • Historical extracts. Authorised representatives whose authorities ceased before the Financial Services Reform Act 2001 took effect only appear in a historical extract. If a purchase with history: false returns no_matches for a number you found by browsing, purchase again with history: true. Nothing is billed for a purchase that returns no_matches.
  • Unverified authorities. notVerified: true means ASIC recorded the authority from the representative's side and has not confirmed it with the licensee. Treat such authorities as claimed rather than confirmed.
  • Suspension is per authority. ASIC flags suspension on the authority record, not the representative. A representative may have one suspended authority and another in good standing.
  • Licensees link back to the professional registers. Each authority names the licensee and its licence number on the SD, IA, FB or FD register. You can purchase and read the licensee's own extract through the professional registers endpoints with that licence number.
  • Address order. Addresses are supplied in the sequence principal place of practice (PA) then representative's business address (RB).
  • Former names and known-as names. ASIC records up to ten former names for a representative, plus any names by which a dealer knew them. Both are useful when reconciling a representative against a person search.
  • Current representatives live elsewhere. People authorised under an AFS licence today are not on the SP or FP registers. Their licence roles appear on a purchased person extract as licence records with types such as FR (financial services representative).
  • Sandbox. Test keys return placeholder names such as "FAMILY NAME, GIVEN NAME1", the purchase succeeds with meta.billable set to false, and the extract is stored and readable as in production. See sandbox.

On this page