Skip to Content

List Occupations by Skills Match

GET
/v1/occupation/{userId}/{onetCode}/{location}/{radius}
Parameters
string


api token is required field
string


userId is required field
string

ex: 29-1141.00

onetCode is required field
string

city, state(reston, va) or state (VA) or zipcode (20191)

location is required field
string

ex: 25

integer

ex: 0

integer

ex: 10

string

ex: 2,6

boolean

ex: true or false

Example Code

using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using System.Collections.Specialized;
using System.Linq;

namespace CareerOneStopAPISample
{
    class Program
    {
        static void Main(string[] args)
        {
            CreateRequest().Wait();
        }
        private static async Task CreateRequest()
        {
            var qs = new NameValueCollection();
            qs["startRecord"] = "value";                        
            qs["pageSize"] = "value";                        
            qs["workPrefCodes"] = "value";                        
            qs["enableMetaData"] = "value";                        
            
            var uri = new UriBuilder(Uri.UriSchemeHttps, "api.careeronestop.org")
            {
                Path = "/v1/occupation/{userId}/{onetCode}/{location}/{radius}",
                Query = string.Join("&", qs.AllKeys.Select(key => key + "=" + Uri.EscapeUriString(qs[key])))
            };
            
            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/occupation/{userId}/{onetCode}/{location}/{radius}")
                .setParameter("startRecord", "value")
                .setParameter("pageSize", "value")
                .setParameter("workPrefCodes", "value")
                .setParameter("enableMetaData", "value")
		.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();
	}
   }
}


Response Structure
                        {
  "OccupationMatchResult": [
    {
      "AnnualWage": "string",
      "BrightOutlook": true,
      "EducationTitle": "string",
      "GreenOccupation": true,
      "HourlyWage": "string",
      "JobCount": 6,
      "OccupationCode": "string",
      "OccupationDescription": "string",
      "OccupationTitle": "string",
      "MatchValue": 10.0,
      "VideoCode": "string",
      "VideoTitle": "string",
      "AnnualWageRate": {},
      "HourlyWageRate": {}
    }
  ],
  "TotalRecords": 1,
  "MetaData": {
    "Publisher": "string",
    "Sponsor": "string",
    "LastAccessDate": 3,
    "CitationSuggested": "string",
    "DataSource": [
      {
        "DataName": "string",
        "DataSourceName": "string",
        "DataSourceUrl": "string",
        "DataLastUpdate": "string",
        "DataVintageOrVersion": "string",
        "DataDescription": "string",
        "DataSourceCitation": "string"
      }
    ]
  }
}
                    
                        <OccupationMatchResultViewModel xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/XPAND.CareerOneStop.WebApi.ViewModels">
  <MetaData xmlns:d2p1="http://schemas.datacontract.org/2004/07/XPAND.CareerOneStop.WebApi.Core.MetaData">
    <d2p1:CitationSuggested>string</d2p1:CitationSuggested>
    <d2p1:DataSource>
      <d2p1:MetaDataSource>
        <d2p1:DataDescription>string</d2p1:DataDescription>
        <d2p1:DataLastUpdate>string</d2p1:DataLastUpdate>
        <d2p1:DataName>string</d2p1:DataName>
        <d2p1:DataSourceCitation>string</d2p1:DataSourceCitation>
        <d2p1:DataSourceName>string</d2p1:DataSourceName>
        <d2p1:DataSourceUrl>string</d2p1:DataSourceUrl>
        <d2p1:DataVintageOrVersion>string</d2p1:DataVintageOrVersion>
      </d2p1:MetaDataSource>
    </d2p1:DataSource>
    <d2p1:LastAccessDate>3</d2p1:LastAccessDate>
    <d2p1:Publisher>string</d2p1:Publisher>
    <d2p1:Sponsor>string</d2p1:Sponsor>
  </MetaData>
  <OccupationMatchResult>
    <OccupationMatch>
      <AnnualWage>string</AnnualWage>
      <AnnualWageRate xmlns:d4p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.MySkillsMyFuture" />
      <BrightOutlook>true</BrightOutlook>
      <EducationTitle>string</EducationTitle>
      <GreenOccupation>true</GreenOccupation>
      <HourlyWage>string</HourlyWage>
      <HourlyWageRate xmlns:d4p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.MySkillsMyFuture" />
      <JobCount>6</JobCount>
      <MatchValue>10</MatchValue>
      <OccupationCode>string</OccupationCode>
      <OccupationDescription>string</OccupationDescription>
      <OccupationTitle>string</OccupationTitle>
      <VideoCode>string</VideoCode>
      <VideoTitle>string</VideoTitle>
    </OccupationMatch>
  </OccupationMatchResult>
  <TotalRecords>1</TotalRecords>
</OccupationMatchResultViewModel>