Get skills

Get skills

Get skills

The Skills Matcher APIs provide developers with the ability to create their own user interface for something like our Skills Matcher. The Get Skills Web API provides 40 skills statements and ratings statements. Users can then rate their level for each skill. This Web API works in conjunction with the Submit Skills API to provide occupation matches based on those skill level ratings. You can see these APIs at work in the ;Skills Matcher tool on CareerOneStop.

About this data

Both Skills Matcher Web APIs are based on data from the Occupational Information Network (O*NET) taxonomy, created by the Department of Labor for cross-agency use by federal, state and local government entities. Data information can be found here.

Resource URL

https://api.careeronestop.org/v1/skillsmatcher/{userId}

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/skillsmatcher/{userId}"

            };

            

            using (var http = new HttpClient())

            {

                http.DefaultRequestHeaders.Accept.Clear();

                http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "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/skillsmatcher/{userId}")

        .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 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.

Response Structure

{

  "Skills": [

    {

      "ElementId": "string",

      "ElementName": "string",

      "DataPoint20": 3.0,

      "DataPoint35": 4.0,

      "DataPoint50": 5.0,

      "DataPoint65": 6.0,

      "DataPoint80": 7.0,

      "AnchorFirst": "string",

      "AnchorSecond": "string",

      "AnchorThrid": "string",

      "AnchorFourth": "string",

      "AnchorLast": "string",

      "Question": "string",

      "EasyReadDescription": "string"

    }

  ]

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

  <Skills>

    <Skill>

      <AnchorFirst>string</AnchorFirst>

      <AnchorFourth>string</AnchorFourth>

      <AnchorLast>string</AnchorLast>

      <AnchorSecond>string</AnchorSecond>

      <AnchorThrid>string</AnchorThrid>

      <DataPoint20>3</DataPoint20>

      <DataPoint35>4</DataPoint35>

      <DataPoint50>5</DataPoint50>

      <DataPoint65>6</DataPoint65>

      <DataPoint80>7</DataPoint80>

      <EasyReadDescription>string</EasyReadDescription>

      <ElementId>string</ElementId>

      <ElementName>string</ElementName>

      <Question>string</Question>

    </Skill>

  </Skills>

</SkillProfilerViewModel>

Response Parameters

Name
Description
Type
Parent
Skills
Skills
Object
Empty Cell
ElementId
Element Id
String
Empty Cell
ElementName
Element Name
String
Empty Cell
DataPoint20
Data Point 20
Decimal
Empty Cell
DataPoint35
Data Point 35
Decimal
Empty Cell
DataPoint50
Data Point 50
Decimal
Empty Cell
DataPoint65
Data Point 65
Decimal
Empty Cell
DataPoint80
Data Point 80
Decimal
Empty Cell
AnchorFirst
Anchor First
String
Empty Cell
AnchorSecond
Anchor Second
String
Empty Cell
AnchorThird
Anchor Third
String
Empty Cell
AnchorFourth
Anchor Fourth
String
Empty Cell
AnchorLast
Anchor Last
String
Empty Cell
Question
Question
String
Empty Cell
EasyReadDescription
Easy Read Description
String
Empty Cell

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.