Observed since 20 Oct, 17:31 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
A python client to interact with ABN Lookup services
A python client to interact with ABN Lookup services
This library provides a Python interface to the Australian Business Register (ABR) XML Search API. All API methods are based on the official ABR documentation.
python3 -m pip install 'abn-lookup-service @ git+https://github.com/tmck-code/abn-lookup-service'
You'll need an ABN Lookup GUID from the Australian Business Register. Set it as an environment variable:
export ABN_LOOKUP_GUID="your-guid-here"
The package includes a command-line interface:
# Search by ABN
abn-lookup-service abn --abn 53004085616
# Search by name
abn-lookup-service name --name "Telstra" --state "VIC" --limit 5
# Search by postcode
abn-lookup-service postcode --postcode "3000" --state "VIC"
# Advanced name search
abn-lookup-service name-advanced --name "Commonwealth Bank" --state "NSW" --legalName "Y"
Run with --help to see all available commands and options:
abn-lookup-service --help
usage: lookup.py [-h] {abn-status,charity,registration-event,update-event,name,abn,asic,postcode,name-advanced} ...
ABN Lookup Client
positional arguments:
{abn-status,charity,registration-event,update-event,name,abn,asic,postcode,name-advanced}
abn-status Search by ABN status
charity Search by charity
registration-event Search by registration event
update-event Search by update event
name Search by name
abn Search by ABN
asic Search by ASIC
postcode Search by postcode
name-advanced Advanced search by name
options:
-h, --help show this help message and exit
abn-lookup-service name --help
usage: lookup.py name [-h] --name NAME --state {NSW,ACT,VIC,QLD,SA,WA,TAS,NT} [--limit LIMIT]
options:
-h, --help show this help message and exit
--name NAME Name to search for
--state {NSW,ACT,VIC,QLD,SA,WA,TAS,NT}
State to filter results by
--limit LIMIT Maximum number of results to return
from abn_lookup_service.lookup import ABNLookupClient
import os
# Initialize the client
client = ABNLookupClient(authentication_guid=os.environ['ABN_LOOKUP_GUID'])
# Search by ABN
for result in client.search_by_abn('53004085616'):
print(result)
# Search by business name
for result in client.search_by_name(name='Telstra', state='VIC'):
print(result)
# {"ABN": {"identifierValue": "53653884756", "identifierStatus": "Active"}, "mainName": {"organisationName": "MOONTH MOTORS PTY LTD", "score": "98", "isCurrentIndicator": "Y"}, "mainBusinessPhysicalAddress": {"stateCode": "VIC", "postcode": "3031", "isCurrentIndicator": "Y"}}
# ...
from abn_lookup_service.lookup import ABNLookupClient
import os
client = ABNLookupClient(authentication_guid=os.environ['ABN_LOOKUP_GUID'])
# Advanced name search with filters
results = client.search_by_name_advanced(
name='Commonwealth Bank',
state='NSW',
legalName='Y',
minimumScore=80,
maxSearchResults=10
)
for result in results:
# Access result fields
abn = result.get('ABN', {}).get('identifierValue')
name = result.get('mainName', {}).get('organisationName')
print(f"ABN: {abn}, Name: {name}")
# ABN: 48045546848, Name: COMMONWEALTH BANK OF AUSTRALIA
# ABN: 53004085616, Name: COMMONWEALTH BANK OF AUSTRALIA
# ...
Search for an entity by ABN.
Parameters:
abn (str, required): The ABN to search forincludeHistoricalDetails (str, optional): 'Y' or 'N' (default: 'N')Search for an entity by ASIC number (ACN, ARBN, ARSN, ARFN).
Parameters:
asic (str, required): The ASIC number to search forincludeHistoricalDetails (str, optional): 'Y' or 'N' (default: 'N')Search for entities by name (simple protocol).
Parameters:
name (str, required): Name to search forpostcode (str, optional): Filter by postcodelegalName (str, optional): 'Y' to search legal names onlybusinessName (str, optional): 'Y' to search business names onlytradingName (str, optional): 'Y' to search trading names onlystate (str, optional): Filter by state (NSW, ACT, VIC, QLD, SA, WA, TAS, NT)Advanced search for entities by name with additional filters.
Parameters:
name (str, required): Name to search forpostcode (str, optional): Filter by postcodelegalName (str, optional): 'Y' to search legal names onlybusinessName (str, optional): 'Y' to search business names onlytradingName (str, optional): 'Y' to search trading names onlystate (str, optional): Filter by statesearchWidth (str, optional): Search width (narrow, typical, wide)minimumScore (int, optional): Minimum matching score (0-100)maxSearchResults (int, optional): Maximum number of results to returnactiveABNsOnly (str, optional): 'Y' to return only active ABNsSearch for entities by postcode.
Parameters:
postcode (str, required): The postcode to search forSearch for entities by ABN status.
Parameters:
postcode (str, optional): Filter by postcodeactiveABNsOnly (str, optional): 'Y' to return only active ABNscurrentGSTRegistrationOnly (str, optional): 'Y' to return only GST registered entitiesentityTypeCode (str, optional): Filter by entity type codeSearch for entities by update event.
Parameters:
updatedate (str, required): Update date (YYYY-MM-DD format)postcode (str, optional): Filter by postcodestate (str, optional): Filter by stateentityTypeCode (str, optional): Filter by entity type codeSearch for entities by registration event.
Parameters:
month (str, required): Month (1-12)year (str, required): Year (YYYY format)postcode (str, optional): Filter by postcodestate (str, optional): Filter by stateentityTypeCode (str, optional): Filter by entity type codeSearch for charities.
Parameters:
postcode (str, optional): Filter by postcodestate (str, optional): Filter by statecharityTypeCode (str, optional): Filter by charity type codeconcessionTypeCode (str, optional): Filter by concession type codeThis doc section is for developers contributing to the project.
Build the docker image
docker build -f test/Dockerfile -t abn-lookup-service .
Run the tests with
docker run \
-it \
-v "$PWD":/app \
abn-lookup-service:latest \
bash -c 'pytest -vv test'
uv sync --all-groups
. .venv/bin/activate
pytest -vv -s test/
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.2.0 | 17 May 2026 | 4 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitHub
Observed since 20 Oct, 17:31 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:7374ed09fb4e55d7fb85e857880f31513c105fbdf15574f49370c26ec4faf7bb