Skip navigation

Reference Manual

Overview

O*NET Web Services uses a RESTful external site web services API. Currently all resources are read-only and accessed with the GET method. Access is limited to registered developers; you can obtain access credentials and instructions by signing up for the developer program. Before you sign up, you can try our interactive demo to see the API in action. The services currently use the O*NET 29.1 Database.

Sample code

Code samples, including utility libraries and full working examples, are available on GitHub external site for the following languages:

These samples demonstrate how to use your Web Services credentials, how to check for errors, and how to parse JSON results. Each language includes a full working demo of the occupation keyword search.

JSON or XML format

By default, web service responses are returned in XML format. To receive data in JSON format instead, you must send an HTTP Accept header as part of your URL request:

Accept: application/json

Both formats are fully supported and return the same information. Throughout this documentation, examples are provided in both JSON and XML, with JSON presented by default for readability. Click the "XML" tab to see the XML formatting for a given example.

Error handling

JSON XML
{
   "error" : "The required parameter \"keyword\" was not provided."
}

Error conditions in the web services API are indicated with HTTP status codes. When a client calls a service incorrectly, an error response may be returned, along with a 422 status code. This can happen when:

  • A required parameter (such as the keyword parameter in the Search careers service) is not provided, or a parameter was not formatted correctly.
  • Information is requested for a non-existent or obsolete O*NET-SOC code.
  • No data is available for a particular career or parameter. For example, no Knowledge data is available for Legislators.

As with any web service, clients should also be prepared to handle other HTTP errors, such as 404 or 500. Only errors with a 422 code will contain a JSON or XML error response.

About O*NET Web Services

https://services.onetcenter.org/ws/about/
JSON XML
{
   "taxonomy" : {
      "url" : "https://www.onetcenter.org/taxonomy.html",
      "name" : "O*NET-SOC 2019"
   },
   "database" : {
      "url" : "https://www.onetcenter.org/database.html",
      "name" : "O*NET 29.1"
   },
   "api_version" : 1.9
}

This response provides version information for the data returned through these services. Two elements are returned:

  • The taxonomy element specifies the version of the O*NET-SOC taxonomy, which determines the set of O*NET-SOC codes and titles in use. The url attribute links to the O*NET Resource Center, where detailed information and taxonomy history may be found.
  • The database element indicates the version of the O*NET database in use. The database includes information such as KSA, Job Zone, and Interest ratings, which are updated more frequently than the taxonomy. The url attribute links to the O*NET Resource Center, where the full O*NET Database may be downloaded in several formats.
  • The api_version element indicates the version of the Web Services API in use. This number is incremented only when the structure of the web services responses are changed, not when the data is updated.

The taxonomy and database will be updated regularly to match those in use at My Next Move and O*NET OnLine.

Service categories

https://services.onetcenter.org/ws/
JSON XML
{
   "resource" : [
      {
         "href" : "https://services.onetcenter.org/ws/about/",
         "title" : "About O*NET Web Services"
      },
      {
         "href" : "https://services.onetcenter.org/ws/mnm/",
         "title" : "My Next Move services"
      },
      {
         "href" : "https://services.onetcenter.org/ws/mpp/",
         "title" : "Mi Próximo Paso services"
      },
      {
         "href" : "https://services.onetcenter.org/ws/veterans/",
         "title" : "My Next Move for Veterans services"
      },
      {
         "href" : "https://services.onetcenter.org/ws/online/",
         "title" : "O*NET OnLine services"
      },
      {
         "href" : "https://services.onetcenter.org/ws/taxonomy/",
         "title" : "O*NET-SOC Taxonomy services"
      },
      {
         "href" : "https://services.onetcenter.org/ws/database/",
         "title" : "O*NET Database services"
      }
   ]
}

This response lists the top-level web service resources available. O*NET Web Services APIs are organized into four major groups, each based on the features of an O*NET website. For more information, see:

Full list of O*NET Web Services APIs