API reference
Income and corporate actions
Dividends with franking and DRP prices, AMIT tax components, corporate actions and official tax FX rates.
Corporate actions
/v1/corporate-actions Splits, consolidations, demergers, mergers, returns of capital, symbol and name changes and delistings. type says which detail object is filled in, the others have null fields. from and to bound the effective date.
Query parameters
symbolsarray of strings RequiredComma separated identifiers, up to 100, like ASX:VAS, isin:AU000000VAS1 or ins_...
Up to 100 items
fromdateFirst day, YYYY-MM-DD
todateLast day, YYYY-MM-DD
freshbooleanSkip our cache and fetch from sources. Items fetched fresh cost double
formatstringResponse format
One of
jsoncsvDefaults to json
typesarray of stringsComma separated action types, every type when empty
Response
dataarray of objectsShow 4 fields
actionsarray of objectsOldest effective date first
Show 11 fields
announcedDatedate or nulldelistingobjectShow 1 field
reasonstring or nullAs the exchange gave it
demergerobjectShow 4 fields
auobjectShow 1 field
costBaseApportionmentPctnumber or nullShare of the original cost base that moves to the demerged company, as the ATO sets it
childstring or nullThe demerged company's symbol, null until it's known
childNamestring or nullThe demerged company
rationumber or nullDemerged shares for every share held
effectiveDatedateThe ex date of splits and demergers, the first day under a new symbol or name, the last trading day before a delisting
mergerobjectShow 4 fields
acquirerstring or nullSymbol of the company whose shares are paid
cashnumber or nullCash for every share held
currencystring or nullrationumber or nullAcquirer shares for every share held
nameChangeobjectShow 2 fields
newstring or nulloldstring or null
returnOfCapitalobjectShow 2 fields
amountnumber or nullPer share
currencystring or null
splitobjectFilled in for split and consolidation
Show 2 fields
newnumber or nullShares held after, for every old number of shares
oldnumber or nullShares held before
statusstringOne of
announcedconfirmedcompletedcancelledsymbolChangeobjectShow 2 fields
newstring or nulloldstring or null
typestringOne of
splitconsolidationdemergermergerreturn_of_capitalsymbol_changename_changedelisting
asOftimestampThe point in time this data describes. For history and events it's the date of the newest record, or the end of your range when there are none. Live values give when they were observed, and reference data gives when we last checked it with a source
instrumentobjectWhat the symbol resolved to
Show 7 fields
countrystring or nullcurrencystring or nullidstringmicstring or nullnamestringsymbolstringtypestringOne of
equityetffundindexfxcryptotokenratefuturecommoditybond
symbolstringThe symbol as sent
errorsarray of objectsShow 3 fields
codestringOne of
invalid_symbolinstrument_not_foundnot_supporteddata_unavailabledata_pendingsource_failedmessagestringsymbolstring
metaobjectShow 2 fields
creditsintegerCredits this call cost
requestIdstring
Errors
400 Bad Request401 Unauthorized402 Payment Required403 Forbidden422 Unprocessable Entity429 Too Many Requests500 Internal Server Error503 Service Unavailable
Every error body is problem+json with a stable code. See errors.
Dividends and distributions
/v1/dividends Every dividend with its dates, the amount as declared and adjusted for later splits, reinvestment plan details and Australian franking. from and to bound the ex date. Status firms up from announced to confirmed to paid.
Query parameters
symbolsarray of strings RequiredComma separated identifiers, up to 100, like ASX:VAS, isin:AU000000VAS1 or ins_...
Up to 100 items
fromdateFirst day, YYYY-MM-DD
todateLast day, YYYY-MM-DD
freshbooleanSkip our cache and fetch from sources. Items fetched fresh cost double
formatstringResponse format
One of
jsoncsvDefaults to json
Response
dataarray of objectsShow 4 fields
asOftimestampThe point in time this data describes. For history and events it's the date of the newest record, or the end of your range when there are none. Live values give when they were observed, and reference data gives when we last checked it with a source
dividendsarray of objectsOldest ex date first
Show 11 fields
adjustedAmountnumberPer share today, after every split and consolidation since the ex date
amountnumberPer share as declared
auobjectAustralian franking, null fields elsewhere
Show 4 fields
conduitForeignIncomenumber or nullPer share, in the dividend's currency
frankedPctnumber or nullShare of the dividend that is franked, 0 to 100
frankingCreditnumber or nullPer share, in the dividend's currency
taxRatePctnumber or nullCompany tax rate the credit was worked out at
currencystringdeclaredDatedate or nulldrpobjectDividend reinvestment plan, null fields when there is none
Show 2 fields
discountPctnumber or nullDiscount to market the plan gives, 0 to 100
pricenumber or nullReinvestment price per share, in the dividend's currency
exDatedatepayDatedate or nullrecordDatedate or nullstatusstringOne of
announcedconfirmedpaidcancelledtypestringOne of
regularinterimfinalspecialreturn_of_capitalcapital_gains
instrumentobjectWhat the symbol resolved to
Show 7 fields
countrystring or nullcurrencystring or nullidstringmicstring or nullnamestringsymbolstringtypestringOne of
equityetffundindexfxcryptotokenratefuturecommoditybond
symbolstringThe symbol as sent
errorsarray of objectsShow 3 fields
codestringOne of
invalid_symbolinstrument_not_foundnot_supporteddata_unavailabledata_pendingsource_failedmessagestringsymbolstring
metaobjectShow 2 fields
creditsintegerCredits this call cost
requestIdstring
Errors
400 Bad Request401 Unauthorized402 Payment Required403 Forbidden422 Unprocessable Entity429 Too Many Requests500 Internal Server Error503 Service Unavailable
Every error body is problem+json with a stable code. See errors.
Australian trust tax components
/v1/tax/au/components AMIT attribution components of every distribution in an Australian financial year, per unit. basis is estimate until the issuer publishes its final annual (AMMA) figures. Components the issuer didn't report are null.
Query parameters
symbolsarray of strings RequiredComma separated identifiers, up to 100, like ASX:VAS, isin:AU000000VAS1 or ins_...
Up to 100 items
freshbooleanSkip our cache and fetch from sources. Items fetched fresh cost double
formatstringResponse format
One of
jsoncsvDefaults to json
financialYearintegerNamed by the year it ends in, so 2026 runs 1 July 2025 to 30 June 2026. Defaults to the current one
From 2000 to 2100
Response
dataarray of objectsShow 5 fields
asOftimestampThe point in time this data describes. For history and events it's the date of the newest record, or the end of your range when there are none. Live values give when they were observed, and reference data gives when we last checked it with a source
distributionsarray of objectsShow 24 fields
amitCostBaseDecreasenumber or nullamitCostBaseIncreasenumber or nullbasisstringOne of
estimatefinalcashDistributionnumber or nullcgtConcessionnumber or nullcurrencystringdiscountedCapitalGainsNtapnumber or nullOn other than taxable Australian property
discountedCapitalGainsTapnumber or nullOn taxable Australian property
exDatedate or nullforeignIncomenumber or nullAssessable foreign income grossed up for the foreign tax paid on it
foreignIncomeTaxOffsetnumber or nullfrankedDividendsnumber or nullfrankingCreditsnumber or nullindexedCapitalGainsnumber or nullinterestnumber or nullnetExemptIncomenumber or nullnonAssessableNonExemptnumber or nullotherCapitalGainsNtapnumber or nullotherCapitalGainsTapnumber or nullotherIncomenumber or nullotherNonAttributablenumber or nullpayDatedateunfrankedCfiDividendsnumber or nullUnfranked dividends that are conduit foreign income
unfrankedDividendsnumber or null
financialYearintegerinstrumentobjectWhat the symbol resolved to
Show 7 fields
countrystring or nullcurrencystring or nullidstringmicstring or nullnamestringsymbolstringtypestringOne of
equityetffundindexfxcryptotokenratefuturecommoditybond
symbolstringThe symbol as sent
errorsarray of objectsShow 3 fields
codestringOne of
invalid_symbolinstrument_not_foundnot_supporteddata_unavailabledata_pendingsource_failedmessagestringsymbolstring
metaobjectShow 2 fields
creditsintegerCredits this call cost
requestIdstring
Errors
400 Bad Request401 Unauthorized402 Payment Required403 Forbidden422 Unprocessable Entity429 Too Many Requests500 Internal Server Error503 Service Unavailable
Every error body is problem+json with a stable code. See errors.
Official FX rates for tax
/v1/tax/fx Rates a tax authority publishes for converting foreign amounts, as distinct from market FX, which lives in prices.daily under FX: symbols. Each rate is dated on the last day of its period. Pairs go in the direction the authority publishes, like AUDUSD for the RBA and USDCAD for the BoC.
Query parameters
authoritystring RequiredOne of
RBAATOECBHMRCIRSBOCpairsarray of strings RequiredComma separated currency pairs, up to 100
Up to 100 items
periodstringWhat each rate stands for. year_end is the rate on the last day of the tax year
One of
dailymonthlyyearlyyear_endDefaults to daily
fromdateFirst day, YYYY-MM-DD
todateLast day, YYYY-MM-DD
freshbooleanSkip our cache and fetch from sources. Items fetched fresh cost double
formatstringResponse format
One of
jsoncsvDefaults to json
Response
dataarray of objectsShow 5 fields
asOftimestampThe point in time this data describes. For history and events it's the date of the newest record, or the end of your range when there are none. Live values give when they were observed, and reference data gives when we last checked it with a source
basestringpairstringquotestringratesarray of objectsShow 2 fields
datedateratenumberUnits of quote per unit of base
errorsarray of objectsShow 3 fields
codestringOne of
invalid_symbolnot_supporteddata_unavailabledata_pendingsource_failedmessagestringpairstringThe pair upper cased, or as sent when it isn't a pair
metaobjectShow 2 fields
creditsintegerCredits this call cost
requestIdstring
Errors
400 Bad Request401 Unauthorized402 Payment Required403 Forbidden422 Unprocessable Entity429 Too Many Requests500 Internal Server Error503 Service Unavailable
Every error body is problem+json with a stable code. See errors.