Banner: Web API: List tools and technology by keyword

Web API: List tools and technology by keyword

List tools and technology by keyword

The 'List Tools and Tech by Keyword' API enables developers to query and retrieve a list of O*NET defined tools and technologies for a specific keyword.

About this data

This Web API provides information about the instruments, machines and the computer software that are used in O*NET defined occupations. Data is collected and released publicly on an annual basis by O*NET. You can see the Tools & Technology Finder on CareerOneStop. Click here for more information on the data.

Resource URL

https://api.careeronestop.org/v1/techtool/{userId}/{keyword}/{startRecord}/{limitRecord}

Example Code

using System;

using System.Net.Http;

using System.Net.Http.Headers;

using System.Threading.Tasks;

namespace CareerOneStopAPISample

{

    class Program

    {

        static void Main(string[] args)

        {

            CreateRequest().Wait();

        }

        private static async Task CreateRequest()

        {

   

            var uri = new UriBuilder(Uri.UriSchemeHttps, "api.careeronestop.org")

            {

                Path = "/v1/techtool/{userId}/{keyword}/{startRecord}/{limitRecord}"

            };

           

            using (var http = new HttpClient())

            {

                http.DefaultRequestHeaders.Accept.Clear();

                http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "Your API Token");

                http.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                var response = await http.GetAsync(uri.Uri).ConfigureAwait(false);

                if (response.IsSuccessStatusCode)

                {

                    var result = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

                }

            }

        }

    }

}
import java.io.IOException;

import java.net.URI;

import java.net.URISyntaxException;

import org.apache.http.HttpEntity;

import org.apache.http.client.methods.CloseableHttpResponse;

import org.apache.http.client.methods.HttpGet;

import org.apache.http.client.utils.URIBuilder;

import org.apache.http.impl.client.CloseableHttpClient;

import org.apache.http.impl.client.HttpClients;

import org.apache.http.util.EntityUtils;

public class CareerOneStopAPISample {

    public static void main(String[] args) throws IOException, URISyntaxException {

    URI uri = new URIBuilder()

        .setScheme("https")

        .setHost("api.careeronestop.org")

        .setPath("/v1/techtool/{userId}/{keyword}/{startRecord}/{limitRecord}")

        .build();

    CloseableHttpResponse response = null;

    HttpGet httpGet = null;

    try {

        CloseableHttpClient httpClient = HttpClients.createDefault();

        httpGet = new HttpGet(uri);

        httpGet.setHeader("Content-Type","application/json");

        httpGet.setHeader("Authorization", "Bearer Your API Token");

        response = httpClient.execute(httpGet);

        HttpEntity entity = response.getEntity();

        System.out.println(EntityUtils.toString(entity));

    } finally {

        if(httpGet != null) httpGet.releaseConnection();

        if(response != null) response.close();

    }

   }

}

Request Parameters

Refer to the following table for a list of the required and optional request parameters. All parameter names and values are case sensitive. Important: You must provide all required parameters. Submitting an empty request does not return all possible results; an empty request returns an error.

Parameter Name Value Required? Description
API Token
String
Yes
This value is the unique API Token provided during the CareerOneStop Web API registration process.
userId
String
Yes
This value is the unique UserID provided during the CareerOneStop Web API registration process.
keyword
String
Yes This value is the search term.
startRecord
Integer
Yes This value is to set the starting record. Default value 0 is for the first record.
limitRecord
Integer
Yes This value sets the limit of the maximum number of records to be returned. Default value is 10.

Response Structure

{   "RecordCount": 335,

  "DidYouMean": "",

  "AutoCorrection": "",

  "Techtools": [

    {

      "Category": "Information retrieval or search software",

      "Type": "Technology",

      "ExampleList": [

        {

          "Name": "ACT Contractors Forms software"

        },

        {

          "Name": "AeroPlanner"

        }

      ],

      "ExampleCount": "121",

      "OccupationList": [

        {

          "OnetCode": "23-1021.00",

          "OnetTitle": "Administrative Law Judges, Adjudicators, and Hearing Officers"

        },

        {

          "OnetCode": "25-1041.00",

          "OnetTitle": "Agricultural Sciences Teachers, Postsecondary"

        }

      ],

      "OccupationCount": "97"

    }

  ]

}
<TechTool xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/XPAND.CareerOneStop.WebApi.ViewModels">

<AutoCorrection/>

<DidYouMean/>

<RecordCount>335</RecordCount>

<Techtools>

    <TechTools>

        <Category>Information retrieval or search software</Category>

        <ExampleCount>121</ExampleCount>

        <ExampleList>

            <Example>

                <Name>ACT Contractors Forms software</Name>

            </Example>

            <Example>

                <Name>AeroPlanner</Name>

            </Example>

        </ExampleList>

        <OccupationCount>97</OccupationCount>

        <OccupationList>

            <OccupationInfo>

                <OnetCode>23-1021.00</OnetCode>

                <OnetTitle>Administrative Law Judges, Adjudicators, and Hearing Officers</OnetTitle>

            </OccupationInfo>

            <OccupationInfo>

                <OnetCode>25-1041.00</OnetCode>

                <OnetTitle>Agricultural Sciences Teachers, Postsecondary</OnetTitle>

            </OccupationInfo>

        </OccupationList>

        <Type>Technology</Type>

    </TechTools>

</Techtools>

</TechTool>

Response Parameters

Name Description Type
RecordCount
Number of search results Number
DidYouMean
Did You Mean
String
AutoCorrection
Populated if spell-checker suggests a corrected spelling for search term String
TechTools
Tech Tools
Object
   Category
Category String
   Type
Tool or technology String
   ExampleList
Example List Object
     Name
Name String
   ExampleCount
Example Count String
   OccupationList
List of occupations associated with this tool or technology Object
     OnetCode
O*Net Code String
     OnetTitle
O*Net Title String
OccupationCount
Occupation Count String

Errors

Error/Status Code Description
 200
OK / Success. The request went through successfully and there is a response body.
 400
Bad Request (Request was invalid or missing parameters)
 401    
Unauthorized. This error occurs specifically when authentication is required and has failed or has not yet been provided correctly. (ex: Invalid API Token)
 404
This error will be shown in two scenarios 1) Not found - (An error occurred) and 2) Not found - (No data available)
 500
Internal Server Error. This error will occur when there is something critically wrong in the API call.