This is in beta. If you find something wrong, let us know

ABS Data API (Beta)


Getting Started

Using the API

Understanding SDMX Data

Worked Examples


Using the API

ABS Data API (Beta) offers two modes of operation:

GET Data

Data is returned using the following syntax: /data/{dataflowIdentifier}/{dataKey}?startPeriod={date value}&endPeriod={date value}&detail={value}&dimensionAtObservation={value}

Path Parameters


A Dataflow in SDMX is the artefact used to request data.

The syntax is the identifier of the agency maintaining the dataflow, followed by the identifier of the dataflow, followed by the dataflow version, separated by commas. {agencyId},{dataflowId},{version} eg. "ABS,CPI,1.0.0".

Version and agencyId are optional. If agencyId is not specified it will default to “all”. If version is not specified it will default to “latest.”

A list of all available dataflows can be returned using: GET /dataflow/{agencyId}


Data in the ABS Data API is structured in multi-dimensional datasets. The combination of dimensions and dimension members allows statistical data to be uniquely identified. Such a combination is known as a data key or series key and is used to filter data in a query.

Use "all" if you don't want to filter data. Note that this may return large data responses and can cause the API to time out.

The syntax is explained in the following worked example. Let’s say a dataset for property prices has three dimensions: Measure, Region and Frequency. Each of these dimensions has dimension members identified using codes. Measure dimension has a member Mean Property Price (code: M1), Region has member Australia (code: AUS) and Frequency has Quarterly (code Q). The data key is one or more codes for each dimension, separated by a dot (dimensions must be in the order they are defined in the data structure). The series key for the example above is: “M1.AUS.Q”

Wildcarding is supported by omitting all codes for the dimension to be wildcarded. Eg. to get data for all regions: “M1..Q”

The OR operator is supported using the + character. Eg. to get two Measure dimension members: “M1+M2.AUS.Q”

You can combine wildcarding and the OR operator. Eg. “M1+M2..Q”

Query Parameters

startPeriod and endPeriod

It is possible to define a date range for which observations should be returned by using the startPeriod and/or endPeriod parameters. The values should be given according to the syntax defined in ISO 8601 or as SDMX reporting periods. The values will vary depending on the frequency. Start and end dates are inclusive.

StartPeriod and endPeriod are optional. If no startPeriod is provided, data will be returned from the earliest period available. If no endPeriod is provided data will be returned to the latest period available.

The supported formats are:


Using the detail parameter, it is possible to specify the desired amount of information to be returned by the web service. Possible options are:


Using the dimensionAtObservation parameter, you can define the way the data should be organised in the returned message. Possible options are:


Response format can be specified as XML, JSON or CSV using the "accept" header. XML is the default.

GET Metadata

Metadata is returned using the following syntax: /{structureType}/{agencyId}/{structureId}/{structureVersion}? references={reference value}& detail={level of detail}

Only Structure Type and Agency ID are mandatory.

Path Parameters

Structure Type

The type of metadata you want to retrieve. Available structures:


The ID of the agency maintaining the structures. All structures in this API are currently maintained by the Australian Bureau of Statistics with Agency ID ABS.


The ID of the structure you are requesting. “all” will return all available structures of the specified structure type. If no structure ID is given, all is the default.


The version of the structure to retrieve. Three numbers separated by points, eg. "1.0.0".

If no version is given then the latest version available will be returned.

Query Parameters


Instruct the API to return (or not) artefacts referenced by the artefact(s) you are querying. Eg. the codelists and concepts used by the data structure you are querying. You can also retrieve the artefacts that use the artefact you are querying, eg. the dataflows that use the data structure queried.

In addition, a specific structure type may also be used (e.g. codelist, dataflow, etc.).


Specify the desired amount of detail to be returned. For example, it is possible to instruct the web service to return only basic information about the resource, this is known in SDMX as a stub.


Response format can be specified as XML or JSON using the "accept" header. XML is the default.

Last edited: 17 Feb 2021, 09:42:31