Gathering parameters

WoAG Occupation Coding Service User Guide

Information on topics and models.

Released
30/06/2025

Listing available topics

Before coding against a topic (classification), you must confirm that the topic is supported by the application. You will also need to record its corresponding uriName for further calls to the API. 

Request syntax

GET /v1/topics HTTP/1.1
Host: string
Content-type: application/json
Authorisation: string

URI request parameters

The request does not use any URI parameters.

Request body

The request does not have a request body.

Response syntax

HTTP/1.1 200 OK
Content-type: application/json
[
    {
        "uriName": "string",
        "fullName": "string"
    }
]

Response elements

If the action is successful, the service sends back an HTTP 200 response. The API returns an array of Topic objects representing all the coding topics currently supported by the API.

Errors

For information about the errors that are common to all actions, see Errors and suggested actions.

Examples

Sample request

GET /v1/topics HTTP/1.1
Host: https://partner-coder.api.abs.gov.au
Content-type: application/json
Authorisation: example token

Sample response

HTTP/1.1 200 OK
Content-type: application/json
[
    {
        "uriName": "osca",
       "fullName": "OSCA - Occupation Standard Classification for Australia"
    }
]

Getting the input format for the latest model for a topic

Different models are coded against different input formats. If you are using the latest (default) model for your specified topic, you can get the input format via the following mechanism.

If you are using another model, the input format will be provided as part of the list of available models.

Request syntax

GET /v1/topics/{topic}/models/latest HTTP/1.1
Host: string
Content-type: application/json
Authorisation: string

URI request parameters
topic     The uriName for the coding topic of interest. This can be acquired by listing the available topics.
     Required: Yes

Request body

The request does not have a request body.

Response syntax

HTTP/1.1 200 OK
Content-type: application/json
{
    "modelId": "string",
    "modelVersion": number,
    "modelReleaseDate": "string",
    "modelType": "string",
    "inputFormat":  [
        "string"
    ],
    "topicStandard": "string",
    "topicVersion": "string"
}

Response elements

If the action is successful, the service sends back an HTTP 200 response. The API returns a Model object representing the latest model for the given topic, which includes the expected input format.

Errors

For information about the errors that are common to all actions, see Errors and suggested actions.

Example

Getting the latest occupation model:

Sample request

GET /v1/topics/osca/models/latest HTTP/1.1
Host: https://partner-coder.api.abs.gov.au
Content-type: application/json
Authorisation: example token

Sample response

HTTP/1.1 200 OK
Content-type: application/json
{
   "modelId": "00000000-0000-0000-0000-000000000000",
   "modelVersion": 2,
   "modelReleaseDate": "2023-12-20T06:06:44.514Z",
   "modelType": "hsvm2",
   "inputFormat": [
       "occp_text",
       "tasks_text"
    ],
   "topicStandard": "OSCA - Occupation Standard Classification for Australia",
   "topicVersion": "2024"
}

Listing available models for a given topic

To code against a specific machine learning model, you can browse the available models and their input formats by calling this endpoint. 

Request syntax

GET /v1/topics/{topic}/models HTTP/1.1
Host: string
Content-type: application/json
Authorisation: string

URI request parameters
topic     The uriName for the coding topic of interest. This can be acquired by listing the available topics.
     Required: Yes

Request body

The request does not have a request body.

Response syntax

HTTP/1.1 200 OK
Content-type: application/json
[
    {
        "modelId": "string",
        "modelVersion": number,
        "modelReleaseDate": "string",
        "modelType": "string",
        "inputFormat": [
           "string"
        ],
        "topicStandard": "string",
        "topicVersion": "string"
    }
]

Response elements

If the action is successful, the service sends back an HTTP 200 response. The API returns either a SynchronousCodeResponse object or an array of SynchronousCodeResponse objects corresponding to the input records.

Errors

For information about the errors that are common to all actions, see Errors and suggested actions. The following errors may occur when calling this service: 

No models found for topic {topic} :  No models are available for the provided topic parameter. Please reach out to the ABS to investigate why no model is available.  HTTP Status Code: 500 (Internal Server Error)

Example

Listing all ANZSCO models:

Sample request

GET /v1/topics/anzsco/models HTTP/1.1
Host: https://partner-coder.api.abs.gov.au
Content-type: application/json
Authorisation: example token

Sample response

HTTP/1.1 200 OK
Content-type: application/json
[
    {
       "modelId": "00000000-0000-0000-0000-000000000002",
       "modelVersion": 2,
       "modelReleaseDate": "2023-12-20T06:06:44.514Z",
       "modelType": "hsvm2",
        "inputFormat": [
           "occp_text",
           "tasks_text"
        ],
      "topicStandard": " ANZSCO - Australian and New Zealand Standard Classification of Occupations",
       "topicVersion": "2022"
    },
    {
      "modelId": "00000000-0000-0000-0000-000000000001",
       "modelVersion": 1,
       "modelReleaseDate": "2025-05-20T06:06:44.514Z",
       "modelType": "hsvm2",
       "inputFormat": [
           "occp_text",
           "tasks_text"
        ],
       "topicStandard": " ANZSCO - Australian and New Zealand Standard Classification of Occupations",
       "topicVersion": "2022"
    }
]

Back to top of the page