Documentation
Milypay API
Pay-per-call Australian data for AI agents, settled in AUD stablecoins on the x402 rail. Business identity, company register, address, super funds, weather, postage, BSB, ABS statistics, and public transport. Responses are JSON. No API keys.
Base URL https://api.milypay.xyz
Catalog pay.sh · namespace milysec/*
Agent guide: /agents.md · Try it: /demo
Payments (x402)
The API host charges per call over the x402 protocol, settled in AUDD on Solana via the PayAI facilitator. An unpaid request returns 402 with a base64 PAYMENT-REQUIRED challenge (price, asset, network, pay-to). An x402-aware client pays and retries with a PAYMENT-SIGNATURE header; the data returns in the same round-trip.
The same endpoints on the website host https://milypay.xyz/api/... and the live demo are free and per-IP rate limited, so you can try every service without paying. To run the real paid round-trip with a Solana wallet, see /pay.
# Paid (agents): returns 402, then pay + retrycurl https://api.milypay.xyz/au-business/abn/33051775556 # Free (try it): same data, no paymentcurl https://milypay.xyz/api/au-business/abn/33051775556Business identity
milysec/au-business · Australian Business Register (ATO)
Look up Australian businesses by ABN, ACN, or name.
GET /au-business/abn/{abn}Entity name, status, type, ACN, GST, business names, and location for an 11-digit ABN.
Request
curl https://api.milypay.xyz/au-business/abn/33051775556Response
{ "abn": "33051775556", "abnStatus": "Active", "acn": "051775556", "entityName": "TELSTRA CORPORATION LIMITED", "entityType": "Australian Public Company", "businessNames": ["YELLOW PAGES", "WHEREIS", "..."], "gstRegistered": true, "state": "VIC", "postcode": "3000"}GET /au-business/acn/{acn}Same entity record, resolved from a 9-digit ACN.
Request
curl https://api.milypay.xyz/au-business/acn/051775556Response
{ "abn": "33051775556", "entityName": "TELSTRA CORPORATION LIMITED", "...": "..." }GET /au-business/search?name={name}Matching ABNs for a business or entity name. Optional maxResults (default 10).
Request
curl "https://api.milypay.xyz/au-business/search?name=woolworths"Response
{ "matches": [ { "abn": "88000014675", "name": "WOOLWORTHS", "nameType": "Business Name", "abnStatus": "Active", "state": "NSW", "postcode": "2153", "score": 99 } ]}Company register
milysec/au-company · ASIC Company Register (data.gov.au)
ASIC company records: status, type, class, registration dates, and former names.
GET /au-company/acn/{acn}Company details for an ACN, including former names.
Request
curl https://api.milypay.xyz/au-company/acn/000014675Response
{ "acn": "000014675", "abn": "88000014675", "name": "Woolworths Group Limited", "status": "Registered", "type": "Australian public company", "class": "Limited by shares", "registrationDate": "1924-09-22", "deregistrationDate": null, "formerNames": ["Woolworths Ltd"]}GET /au-company/search?name={name}Companies matching a name, across current and former names (ASIC open data).
Request
curl "https://api.milypay.xyz/au-company/search?name=commonwealth bank"Response
{ "matches": [ { "acn": "123123124", "name": "Commonwealth Bank Of Australia", "status": "Registered", "formerName": false } ]}ASIC company extract
milysec/au-company-report · ASIC via Business API (DSP)
Official company extract PDF (directors, officeholders, share capital, registered office). Free gov open data does not include officeholders — this is the paid DSP product. Demo host = Business API sandbox (free, watermarked). api.milypay.xyz = live extract, always $12 via x402.
GET /au-company-report?acn={acn}&type=current|historicalOrder an ASIC company extract by ACN. Returns JSON metadata + pdfBase64. Live host always charged $12; website demos use sandbox.
Request
curl "https://api.milypay.xyz/au-company-report?acn=000014675&type=current"Response
{ "acn": "000014675", "type": "current", "requestId": 30679, "status": "finished", "environment": "live", "demo": false, "pdfBase64": "JVBERi0xLjcK...", "pdfBytes": 48210, "attribution": "Source: ASIC company extract ordered via Business API (DSP)"}POST /au-company-reportSame as GET with JSON body { "acn": "000014675", "type": "current" }.
Request
curl -X POST https://api.milypay.xyz/au-company-report -H 'content-type: application/json' -d '{"acn":"000014675","type":"current"}'Response
{ "acn": "000014675", "status": "finished", "pdfBase64": "..." }Address
milysec/au-address · G-NAF (Geoscape Australia)
Validate, search, and geocode any Australian address from the 16.9M-record G-NAF.
GET /au-address/validate?q={address}Best canonical match for a freeform address, with GNAF PID and geocode.
Request
curl "https://api.milypay.xyz/au-address/validate?q=1 bligh st sydney"Response
{ "valid": true, "match": { "address": "1 Bligh Street, Sydney NSW 2000", "gnafPid": "GANSW717886958", "locality": "Sydney", "state": "NSW", "postcode": "2000", "lat": -33.86486428, "lng": 151.2105094 }}GET /au-address/search?q={address}Ranked address matches for autocomplete. Optional limit (default 8).
Request
curl "https://api.milypay.xyz/au-address/search?q=120 collins st melbourne"Response
{ "count": 1, "results": [ { "address": "120 Collins Street, Melbourne VIC 3000", "...": "..." } ] }GET /au-address/geocode?q={address}Latitude and longitude for the best-matching address.
Request
curl "https://api.milypay.xyz/au-address/geocode?q=200 adelaide st brisbane"Response
{ "found": true, "lat": -27.46831, "lng": 153.02356, "address": "200 Adelaide Street, Brisbane City QLD 4000", "gnafPid": "GAQLD..." }Super funds
milysec/au-super · Super Fund Lookup (ATO)
Verify any Australian superannuation fund by ABN.
GET /au-super/abn/{abn}Fund name, status, type, complying status, and USIs/products.
Request
curl https://api.milypay.xyz/au-super/abn/65714394898Response
{ "abn": "65714394898", "abnStatus": "Active", "fundName": "The Trustee for AUSTRALIANSUPER", "fundType": "APRA Regulated Public Offer Fund", "complyingStatus": "APRA Registered", "state": "VIC", "postcode": "3000", "products": [ { "usi": "STA0100AU", "productName": "AustralianSuper", "contributionsRestricted": false } ]}Weather
milysec/au-weather · Open-Meteo (BOM ACCESS-G)
Current conditions and forecast for any Australian address or coordinate.
GET /au-weather?q={address} · ?lat={lat}&lng={lng}Geocodes the address (via G-NAF) then returns current conditions and a daily forecast. Optional days (default 7).
Request
curl "https://api.milypay.xyz/au-weather?q=120 collins st melbourne&days=3"Response
{ "location": { "address": "120 Collins Street, Melbourne VIC 3000", "lat": -37.81, "lng": 144.97 }, "current": { "temperature": 15.4, "apparentTemperature": 13.9, "humidity": 78, "windSpeed": 15, "weather": "Mainly clear" }, "daily": [ { "date": "2026-06-02", "tempMax": 16, "tempMin": 11, "weather": "Drizzle" } ]}Postage
milysec/au-postage · Australia Post (Postage Assessment Calculator)
Australia Post parcel rates and service options between postcodes, domestic or international.
GET /au-postage?from={pc}&to={pc}&weight={kg}Domestic parcel services and prices. Optional length/width/height in cm.
Request
curl "https://api.milypay.xyz/au-postage?from=3000&to=2000&weight=2"Response
{ "from": "3000", "to": "2000", "services": [ { "code": "AUS_PARCEL_REGULAR", "name": "Parcel Post", "price": 19.30 }, { "code": "AUS_PARCEL_EXPRESS", "name": "Express Post", "price": 23.80 } ]}GET /au-postage?country={cc}&weight={kg}International parcel services for a 2-letter country code.
Request
curl "https://api.milypay.xyz/au-postage?country=US&weight=1"Response
{ "country": "US", "services": [ { "code": "...", "name": "...", "price": 0 } ] }ABS statistics
milysec/au-abs · Australian Bureau of Statistics (Data API / SDMX)
Official ABS statistics via the SDMX Data API — 1,200+ dataflows including CPI, wages, population, census, and retail. No upstream API key. Attribution: ABS CC BY 4.0.
GET /au-abs/dataflows?q={query}Search or list ABS SDMX dataflows. Optional limit (default 50).
Request
curl "https://api.milypay.xyz/au-abs/dataflows?q=CPI&limit=5"Response
{ "count": 4, "total": 4, "dataflows": [ { "id": "CPI", "name": "Consumer Price Index (CPI)", "agency": "ABS", "version": "2.0.0" } ]}GET /au-abs/dataflow/{id}Dataflow structure and metadata for an id such as CPI, WPI, or RT.
Request
curl https://api.milypay.xyz/au-abs/dataflow/CPIResponse
{ "dataflow": "CPI", "agency": "ABS", "raw": { "...": "SDMX structure" } }GET /au-abs/data/{dataflow}?key={key}&startPeriod={period}Fetch series observations, normalised to JSON. Prefer a series key and startPeriod.
Request
curl "https://api.milypay.xyz/au-abs/data/CPI?key=1.10001.10.50.Q&startPeriod=2020"Response
{ "dataflow": "CPI", "name": "Consumer Price Index (CPI)", "seriesCount": 1, "series": [{ "key": "0:0:0:0:0", "observations": [{ "period": "2026-Q2", "value": 102.31 }] }]}GET /au-abs/cpi?startPeriod={period}Headline All groups CPI (Australia, quarterly) with latest index, QoQ and YoY % change. Catalogue 6401.0.
Request
curl "https://api.milypay.xyz/au-abs/cpi?startPeriod=2015"Response
{ "indicator": "CPI", "latest": { "period": "2026-Q2", "value": 102.31 }, "changeQoQPercent": 0.6, "changeYoYPercent": 3.94}Public transport
milysec/au-transit · GTFS-Realtime (Translink SEQ, Adelaide Metro)
Live vehicles, trip delays/ETAs, and service alerts (GTFS-RT). Regions: `seq` (QLD Translink), `sa` (Adelaide Metro), `vic` (metro/tram/bus/vline), `nsw` (buses/sydneytrains/metro/nswtrains/ferries/lightrail).
GET /au-transit/regionsLive and planned Australian transit regions.
Request
curl https://api.milypay.xyz/au-transit/regionsResponse
{ "live": [{ "id": "seq", "name": "South East Queensland", "operator": "Translink" }] }GET /au-transit/{region}/vehicles?limit=&routeId=Live vehicle positions. region=seq|sa.
Request
curl "https://api.milypay.xyz/au-transit/seq/vehicles?limit=10"Response
{ "count": 10, "vehicles": [{ "routeId": "589-4838", "lat": -27.72, "lon": 153.08 }] }GET /au-transit/{region}/trip-updatesDelays and stop ETAs for active trips.
Request
curl "https://api.milypay.xyz/au-transit/sa/trip-updates?limit=10"Response
{ "tripUpdates": [{ "routeId": "...", "stopTimeUpdates": [{ "arrivalDelaySec": 120 }] }] }GET /au-transit/{region}/alertsService alerts and disruptions.
Request
curl https://api.milypay.xyz/au-transit/seq/alertsResponse
{ "alerts": [{ "header": "...", "description": "..." }] }GET /au-transit/{region}/summaryCounts of vehicles, trip updates, and alerts plus a sample.
Request
curl https://api.milypay.xyz/au-transit/seq/summaryResponse
{ "vehicles": 1455, "tripUpdates": 800, "alerts": 12 }Energy (NEM)
milysec/au-energy · AEMO NEM ELEC_NEM_SUMMARY (no API key)
Live National Electricity Market wholesale spot prices ($/MWh), demand, generation, FCAS and interconnectors for NSW1, QLD1, SA1, TAS1, VIC1. Not retail tariffs. Gas and water planned.
GET /au-energyEnergy products catalogue.
Request
curl https://api.milypay.xyz/au-energyResponse
{ "products": [{ "id": "nem", "regions": ["NSW1","VIC1"] }] }GET /au-energy/nemAll NEM regions live snapshot.
Request
curl https://api.milypay.xyz/au-energy/nemResponse
{ "regions": [{ "regionId": "NSW1", "priceAudPerMwh": 50.84, "totalDemandMw": 10113 }] }GET /au-energy/nem/{region}One region. Accepts NSW1 or NSW, VIC1 or VIC, etc.
Request
curl "https://api.milypay.xyz/au-energy/nem/VIC"Response
{ "regionId": "VIC1", "priceAudPerMwh": 141.37, "fcas": { "raiseReg": 0.42 } }GET /au-energy/noticesRecent AEMO market notices.
Request
curl https://api.milypay.xyz/au-energy/noticesResponse
{ "notices": [{ "type": "NON-CONFORMANCE", "reference": "..." }] }Phone line lookup
milysec/au-phone · Twilio Lookup v2 (line_type_intelligence)
Validity, country, line type (mobile/landline/voip), and carrier. Not personal identity or caller name — that tier needs permitted-use attestation and is intentionally out of scope for anonymous x402 wallets.
GET /au-phone?number={e164}Line intel. AU 04… accepted. URL-encode + as %2B.
Request
curl "https://api.milypay.xyz/au-phone?number=%2B61412345678"Response
{ "valid": true, "e164": "+61412345678", "countryCode": "AU", "lineType": "mobile", "carrierName": "Telstra…", "note": "Line intelligence only…" }GET /au-phone/{e164}Same via path segment.
Request
curl "https://api.milypay.xyz/au-phone/%2B61412345678"Response
{ "valid": true, "lineType": "mobile", "carrierName": "…" }Market data (third-party)
milysec/markets · Birdeye (birdeye/data on pay.sh), resold by Milypay
Solana and multi-chain DeFi data - token prices, overviews, security, holders, trending. You pay Milypay in AUDD; Milypay pays Birdeye in USDC. Paid-only (no free tier, since each call costs us upstream). Path maps to Birdeye's /x402/* endpoints (47 available).
GET /markets/defi/price?address={mint}&chain=solanaReal-time token price.
Request
curl "https://api.milypay.xyz/markets/defi/price?address=So11111111111111111111111111111111111111112&chain=solana"Response
{ "success": true, "data": { "value": 67.94, "priceChange24h": -5.98, "updateUnixTime": 1780611789 } }GET /markets/defi/token_overview?address={mint}&chain=solanaFull token snapshot: price, volume, liquidity, market cap, metadata.
Request
curl "https://api.milypay.xyz/markets/defi/token_overview?address=DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263&chain=solana"Response
{ "data": { "name": "Bonk", "price": 0.0000047, "liquidity": 2397911, "marketCap": 391882289 } }GET /markets/defi/token_security?address={mint}&chain=solanaSecurity and rug-risk indicators for a token.
Request
curl "https://api.milypay.xyz/markets/defi/token_security?address={mint}&chain=solana"Response
{ "data": { "...": "security analysis" } }Data & attribution
- Business and super: Australian Business Register and Super Fund Lookup, Australian Taxation Office.
- Company: ASIC Company Register, published open on data.gov.au. Official search: ASIC company search (about the registers). Official company extracts (directors / officeholders) are ordered via Business API DSP at
/au-company-report($12 live). - Address: Incorporates G-NAF © Geoscape Australia, open G-NAF licence. Per-call lookups only.
- Weather: Open-Meteo.com (CC BY 4.0), Australian model BOM ACCESS-G.
- Statistics: Australian Bureau of Statistics Data API (SDMX), ABS Data API. Licensed under Creative Commons Attribution 4.0 International.
Rate limits apply on the free host (per IP). Government data is provided as-is; verify against primary sources where required.