Web API: List Training Programs

List training programs

The 'List Training Programs' API enables developers to input a location and get a list of Training Programs and other related information.

About this data

The API provides search results for Training Programs based on a location entered. This data is found in the Local Training Finder on www.CareerOneStop.org. For more information on the data, go to the tool's help page.

Resource URL

https://api.careeronestop.org/v2/training/programs/{userId}/{keyword}/{location}/{radius}/{programLength}/{school}/{programName}/{programFormat}/{occupation}/{filterBySource}/{area}/{sortColumns}/{sortDirection}/{startRecord}/{limitRecord}

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["radius"] = "value";                       

           

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

            {

                Path = "/v2/training/programs/{userId}/{keyword}/{location}/{radius}/{programLength}/{school}/{programName}/{programFormat}/{occupation}/{filterBySource}/{area}/{sortColumns}/{sortDirection}/{startRecord}/{limitRecord}",

                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", "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("/v2/training/programs/{userId}/{keyword}/{location}/{radius}/{programLength}/{school}/{programName}/{programFormat}/{occupation}/{filterBySource}/{area}/{sortColumns}/{sortDirection}/{startRecord}/{limitRecord}")

                .setParameter("radius", "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 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 The search term. To find all training programs in a given location, use “0” for the keyword. You must provide a keyword, a location that is not nationwide, or both; both parameters cannot be empty.
location
String
Yes A city, state (Chicago, IL) or state (IL) or ZIP code (61299). For nationwide results, use location of "0" (zero).
radius
String Yes Radius size in miles around a city or a ZIP code.Currently, the 2 endpoints handle radius differently, one optional and at the end. Make radius optional for *both*
programLength
String Yes This is a filter to limit the records based on the selected program length from the initial resultset. The required filter can be obtained from the filterlist values.
school
String Yes A filter to limit the records based on the selected college or provider from the initial resultset.
programName
String Yes This is a filter to limit the records based on the selected program name from the initial resultset. The required filter can be obtained from the filterlist values.
programFormat
String Yes A filter to limit records based on format: In-person, online, a mix of in-person and online: or any combination of those 3 values.
occupation
String Yes A filter to limit the records based on the selected occupation from the initial resultset.
filterBySource
String Yes A filter to limit records based on source of records: Return Y or W = only WIOA / ETP data from Dept of Labor P = only IPEDS data from NCES at Dept of Education 0 (zero) or WP = both (default)
area
String Yes This is a filter to limit the records based on the selected area from the initial resultset
sortColumns
String Yes

This value is for sorting the columns. Valid value is School and default value is 0 for relevance

sortDirection
String Yes Use this parameter to set the ordering of the results. Valid values are ASC, DESC and 0. Default value is 0 for relevance.
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.
enableMetaData
boolean
optional Use this parameter to determine whether to include MetaData in the response. True- Include metadata False - exclude metadata (default)

Response Structure


 {

"SchoolPrograms": [

{

"DetailId": 250859110103,

"CipCode": null,

"CipTitle": "Information Technology",

"EtaProgramName": "CompTIA Network+",

"Format": [

"In-person"

],

"AwLevelCode": 1,

"AwardLevel": "Certificate, less than 12 weeks",

"Credential": "CompTIA Network+",

"DataSource": "Y",

"NumberCompleted": null,

"OccupationsList": null,

"SchoolIDUnique": 5077,

"SchoolName": "LINXEVE Academy",

"SchoolURL": null,

"Address": "5999 Stevenson Ave Suite 340",

"City": "Alexandria",

"StateAbbr": "VA",

"State": "Virginia",

"Zip": "22034",

"Phone": null,

"Distance": null,

"Latitude": "38.813277",

"Longitude": "-77.136534"

}

],

"RecordCount": 13,

"DidYouMean": null,

"IsAutoCorrectionUsed": false,

"ProgramLengthCountList": [

{

"Item": "Certificate, less than 12 weeks (6)",

"Count": 6,

"Value": "Certificate~D~ less than 12 weeks",

"IsSelected": false

},

{

"Item": "Certificate, 12 weeks to less than 1 year (7)",

"Count": 7,

"Value": "Certificate~D~ 12 weeks to less than 1 year",

"IsSelected": false

}

],

"SchoolCountList": [

{

"Item": "LINXEVE Academy (6)",

"Count": 6,

"Value": "LINXEVE Academy",

"IsSelected": false

},

{

"Item": "Salvation Academy (6)",

"Count": 6,

"Value": "Salvation Academy",

"IsSelected": false

},

{

"Item": "Computer CO.R.E. (1)",

"Count": 1,

"Value": "Computer CO~A~R~A~E~A~",

"IsSelected": false

}

],

"ProgramCountList": [

{

"Item": "Information Technology (12)",

"Count": 12,

"Value": "Information Technology",

"IsSelected": false

},

{

"Item": "Computer and Information Sciences, General (1)",

"Count": 1,

"Value": "Computer and Information Sciences~D~ General",

"IsSelected": false

}

],

"FormatCountList": [

{

"Item": "In-person (13)",

"Count": 13,

"Value": "In~B~person",

"IsSelected": true

}

],

"OccupationCountList": [

{

"Item": "Computer Network Architects (13)",

"Count": 13,

"Value": "Computer Network Architects",

"IsSelected": true

},

{

"Item": "Data Scientists (12)",

"Count": 12,

"Value": "Data Scientists",

"IsSelected": false

},

{

"Item": "Information Security Analysts (12)",

"Count": 12,

"Value": "Information Security Analysts",

"IsSelected": false

},

{

"Item": "Software Developers (12)",

"Count": 12,

"Value": "Software Developers",

"IsSelected": false

},

{

"Item": "Computer Occupations, All Other (1)",

"Count": 1,

"Value": "Computer Occupations~D~ All Other",

"IsSelected": false

},

{

"Item": "Computer Science Teachers, Postsecondary (1)",

"Count": 1,

"Value": "Computer Science Teachers~D~ Postsecondary",

"IsSelected": false

},

{

"Item": "Database Administrators (1)",

"Count": 1,

"Value": "Database Administrators",

"IsSelected": false

},

{

"Item": "Home Health Aides (1)",

"Count": 1,

"Value": "Home Health Aides",

"IsSelected": false

},

{

"Item": "Medical and Health Services Managers (1)",

"Count": 1,

"Value": "Medical and Health Services Managers",

"IsSelected": false

},

{

"Item": "Network and Computer Systems Administrators (1)",

"Count": 1,

"Value": "Network and Computer Systems Administrators",

"IsSelected": false

},

{

"Item": "Nurse Practitioners (1)",

"Count": 1,

"Value": "Nurse Practitioners",

"IsSelected": false

},

{

"Item": "Nursing Instructors and Teachers, Postsecondary (1)",

"Count": 1,

"Value": "Nursing Instructors and Teachers~D~ Postsecondary",

"IsSelected": false

},

{

"Item": "Personal Care Aides (1)",

"Count": 1,

"Value": "Personal Care Aides",

"IsSelected": false

},

{

"Item": "Registered Nurses (1)",

"Count": 1,

"Value": "Registered Nurses",

"IsSelected": false

},

{

"Item": "Web and Digital Interface Designers (1)",

"Count": 1,

"Value": "Web and Digital Interface Designers",

"IsSelected": false

}

],

"AreaCountList": [

{

"Item": "Arlington (15)",

"Count": 15,

"Value": "Arlington",

"IsSelected": false

},

{

"Item": "Alexandria (13)",

"Count": 13,

"Value": "Alexandria",

"IsSelected": true

},

{

"Item": "Sterling (12)",

"Count": 12,

"Value": "Sterling",

"IsSelected": false

},

{

"Item": "Fairfax (7)",

"Count": 7,

"Value": "Fairfax",

"IsSelected": false

},

{

"Item": "Abingdon (4)",

"Count": 4,

"Value": "Abingdon",

"IsSelected": false

},

{

"Item": "Cedar Bluff (4)",

"Count": 4,

"Value": "Cedar Bluff",

"IsSelected": false

},

{

"Item": "Dublin (3)",

"Count": 3,

"Value": "Dublin",

"IsSelected": false

},

{

"Item": "Mclean (3)",

"Count": 3,

"Value": "Mclean",

"IsSelected": false

},

{

"Item": "Midlothian (3)",

"Count": 3,

"Value": "Midlothian",

"IsSelected": false

},

{

"Item": "Falls Church (2)",

"Count": 2,

"Value": "Falls Church",

"IsSelected": false

},

{

"Item": "Middletown (2)",

"Count": 2,

"Value": "Middletown",

"IsSelected": false

},

{

"Item": "Reston (2)",

"Count": 2,

"Value": "Reston",

"IsSelected": false

},

{

"Item": "Richmond (2)",

"Count": 2,

"Value": "Richmond",

"IsSelected": false

},

{

"Item": "Wytheville (2)",

"Count": 2,

"Value": "Wytheville",

"IsSelected": false

},

{

"Item": "Franklin (1)",

"Count": 1,

"Value": "Franklin",

"IsSelected": false

},

{

"Item": "Henrico (1)",

"Count": 1,

"Value": "Henrico",

"IsSelected": false

},

{

"Item": "Herndon (1)",

"Count": 1,

"Value": "Herndon",

"IsSelected": false

},

{

"Item": "Lynchburg (1)",

"Count": 1,

"Value": "Lynchburg",

"IsSelected": false

},

{

"Item": "Norfolk (1)",

"Count": 1,

"Value": "Norfolk",

"IsSelected": false

},

{

"Item": "South Boston (1)",

"Count": 1,

"Value": "South Boston",

"IsSelected": false

},

{

"Item": "Springfield (1)",

"Count": 1,

"Value": "Springfield",

"IsSelected": false

},

{

"Item": "Vienna (1)",

"Count": 1,

"Value": "Vienna",

"IsSelected": false

}

],

"EtpCount": 13,

"SearchedOn": {

"KeywordEntered": "Pediatric Nurse",

"IsCode": false,

"FormattedCode": null,

"Title": "Pediatric Nurse",

"Type": null,

"DataSetType": null,

"SchoolOrProgram": "P"

},

"Metadata": {

"Publisher": "CareerOneStop publishes this API (www.careeronestop.org/Developers/WebAPI/web-api.aspx)",

"Sponsor": "U.S. Department of Labor, Employment and Training Administration",

"LastAccessDate": "2026-05-14T10:39:56",

"CitationSuggested": "U.S. Department of Education, National Center for Education Statistics, Integrated Postsecondary Education Data System (IPEDS) (https://nces.ed.gov/ipeds/), Institutional Characteristics, and Completions. U.S. Department of Labor, Employment and Training Administration, ETP Performance Data (www.trainingproviderresults.gov/#!/about). Find more information including data update schedules at CareerOneStop's Data Sources (https://www.careeronestop.org/Help/data-sources.aspx).",

"DataSource": [

{

"DataName": "Training data from NCES IPEDS",

"DataSourceName": "U.S. Department of Education, National Center for Education Statistics, Integrated Postsecondary Education Data System (IPEDS) (https://nces.ed.gov/ipeds/), Institutional Characteristics, and Completions",

"DataSourceUrl": "https://nces.ed.gov/ipeds/",

"DataLastUpdate": "October 2024",

"DataVintageOrVersion": "Institutional Characteristics 2023-24 and Completions 2022-23",

"DataDescription": "IPEDS is a system of 12 interrelated survey components conducted annually that gathers data from every college, university, and technical and vocational institution that participates in the federal student financial aid programs. ",

"DataSourceCitation": "IPEDS data are from U.S. Department of Education, National Center for Education Statistics, Integrated Postsecondary Education Data System (IPEDS) (https://nces.ed.gov/ipeds/), Institutional Characteristics, and Completions"

},

{

"DataName": "Training data from US DOL ETP / WIOA",

"DataSourceName": "U.S. Department of Labor, Employment and Training Administration, ETP Performance Data (www.trainingproviderresults.gov/#!/about)",

"DataSourceUrl": "http://www.trainingproviderresults.gov/#!/about",

"DataLastUpdate": "July 2024",

"DataVintageOrVersion": "2023",

"DataDescription": "Through the Workforce Innovation and Opportunity Act (WIOA), the federal government has made training more accessible for eligible individuals determined to be in need of training. Data from TrainingProviderResults.gov, includes all training programs eligible to be funded through WIOA.",

"DataSourceCitation": "ETP/WIOA training data are from U.S. Department of Labor, Employment and Training Administration, ETP Performance Data (www.trainingproviderresults.gov/#!/about)."

}

]

}

}

<ProgramList

xmlns:i="http://www.w3.org/2001/XMLSchema-instance"

xmlns="http://schemas.datacontract.org/2004/07/XPAND.CareerOneStop.WebApi.ViewModels.Training.Programs">

<AreaCountList

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:ItemCount>

<d2p1:Count>15</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Arlington (15)</d2p1:Item>

<d2p1:Value>Arlington</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>13</d2p1:Count>

<d2p1:IsSelected>true</d2p1:IsSelected>

<d2p1:Item>Alexandria (13)</d2p1:Item>

<d2p1:Value>Alexandria</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>12</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Sterling (12)</d2p1:Item>

<d2p1:Value>Sterling</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>7</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Fairfax (7)</d2p1:Item>

<d2p1:Value>Fairfax</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>4</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Abingdon (4)</d2p1:Item>

<d2p1:Value>Abingdon</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>4</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Cedar Bluff (4)</d2p1:Item>

<d2p1:Value>Cedar Bluff</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>3</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Dublin (3)</d2p1:Item>

<d2p1:Value>Dublin</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>3</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Mclean (3)</d2p1:Item>

<d2p1:Value>Mclean</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>3</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Midlothian (3)</d2p1:Item>

<d2p1:Value>Midlothian</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>2</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Falls Church (2)</d2p1:Item>

<d2p1:Value>Falls Church</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>2</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Middletown (2)</d2p1:Item>

<d2p1:Value>Middletown</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>2</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Reston (2)</d2p1:Item>

<d2p1:Value>Reston</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>2</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Richmond (2)</d2p1:Item>

<d2p1:Value>Richmond</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>2</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Wytheville (2)</d2p1:Item>

<d2p1:Value>Wytheville</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Franklin (1)</d2p1:Item>

<d2p1:Value>Franklin</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Henrico (1)</d2p1:Item>

<d2p1:Value>Henrico</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Herndon (1)</d2p1:Item>

<d2p1:Value>Herndon</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Lynchburg (1)</d2p1:Item>

<d2p1:Value>Lynchburg</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Norfolk (1)</d2p1:Item>

<d2p1:Value>Norfolk</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>South Boston (1)</d2p1:Item>

<d2p1:Value>South Boston</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Springfield (1)</d2p1:Item>

<d2p1:Value>Springfield</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Vienna (1)</d2p1:Item>

<d2p1:Value>Vienna</d2p1:Value>

</d2p1:ItemCount>

</AreaCountList>

<DidYouMean

xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true"/>

<EtpCount>13</EtpCount>

<FormatCountList

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:ItemCount>

<d2p1:Count>13</d2p1:Count>

<d2p1:IsSelected>true</d2p1:IsSelected>

<d2p1:Item>In-person (13)</d2p1:Item>

<d2p1:Value>In~B~person</d2p1:Value>

</d2p1:ItemCount>

</FormatCountList>

<IsAutoCorrectionUsed>false</IsAutoCorrectionUsed>

<Metadata

xmlns:d2p1="http://schemas.datacontract.org/2004/07/XPAND.CareerOneStop.WebApi.Core.MetaData">

<d2p1:CitationSuggested>U.S. Department of Education, National Center for Education Statistics, Integrated Postsecondary Education Data System (IPEDS) (https://nces.ed.gov/ipeds/), Institutional Characteristics, and Completions. U.S. Department of Labor, Employment and Training Administration, ETP Performance Data (www.trainingproviderresults.gov/#!/about). Find more information including data update schedules at CareerOneStop's Data Sources (https://www.careeronestop.org/Help/data-sources.aspx).</d2p1:CitationSuggested>

<d2p1:DataSource>

<d2p1:MetaDataSource>

<d2p1:DataDescription>IPEDS is a system of 12 interrelated survey components conducted annually that gathers data from every college, university, and technical and vocational institution that participates in the federal student financial aid programs. </d2p1:DataDescription>

<d2p1:DataLastUpdate>October 2024</d2p1:DataLastUpdate>

<d2p1:DataName>Training data from NCES IPEDS</d2p1:DataName>

<d2p1:DataSourceCitation>IPEDS data are from U.S. Department of Education, National Center for Education Statistics, Integrated Postsecondary Education Data System (IPEDS) (https://nces.ed.gov/ipeds/), Institutional Characteristics, and Completions</d2p1:DataSourceCitation>

<d2p1:DataSourceName>U.S. Department of Education, National Center for Education Statistics, Integrated Postsecondary Education Data System (IPEDS) (https://nces.ed.gov/ipeds/), Institutional Characteristics, and Completions</d2p1:DataSourceName>

<d2p1:DataSourceUrl>https://nces.ed.gov/ipeds/</d2p1:DataSourceUrl>

<d2p1:DataVintageOrVersion>Institutional Characteristics 2023-24 and Completions 2022-23</d2p1:DataVintageOrVersion>

</d2p1:MetaDataSource>

<d2p1:MetaDataSource>

<d2p1:DataDescription>Through the Workforce Innovation and Opportunity Act (WIOA), the federal government has made training more accessible for eligible individuals determined to be in need of training. Data from TrainingProviderResults.gov, includes all training programs eligible to be funded through WIOA.</d2p1:DataDescription>

<d2p1:DataLastUpdate>July 2024</d2p1:DataLastUpdate>

<d2p1:DataName>Training data from US DOL ETP / WIOA</d2p1:DataName>

<d2p1:DataSourceCitation>ETP/WIOA training data are from U.S. Department of Labor, Employment and Training Administration, ETP Performance Data (www.trainingproviderresults.gov/#!/about).</d2p1:DataSourceCitation>

<d2p1:DataSourceName>U.S. Department of Labor, Employment and Training Administration, ETP Performance Data (www.trainingproviderresults.gov/#!/about)</d2p1:DataSourceName>

<d2p1:DataSourceUrl>http://www.trainingproviderresults.gov/#!/about</d2p1:DataSourceUrl>

<d2p1:DataVintageOrVersion>2023</d2p1:DataVintageOrVersion>

</d2p1:MetaDataSource>

</d2p1:DataSource>

<d2p1:LastAccessDate>2026-05-14T10:43:55</d2p1:LastAccessDate>

<d2p1:Publisher>CareerOneStop publishes this API (www.careeronestop.org/Developers/WebAPI/web-api.aspx)</d2p1:Publisher>

<d2p1:Sponsor>U.S. Department of Labor, Employment and Training Administration</d2p1:Sponsor>

</Metadata>

<OccupationCountList

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:ItemCount>

<d2p1:Count>13</d2p1:Count>

<d2p1:IsSelected>true</d2p1:IsSelected>

<d2p1:Item>Computer Network Architects (13)</d2p1:Item>

<d2p1:Value>Computer Network Architects</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>12</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Data Scientists (12)</d2p1:Item>

<d2p1:Value>Data Scientists</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>12</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Information Security Analysts (12)</d2p1:Item>

<d2p1:Value>Information Security Analysts</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>12</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Software Developers (12)</d2p1:Item>

<d2p1:Value>Software Developers</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Computer Occupations, All Other (1)</d2p1:Item>

<d2p1:Value>Computer Occupations~D~ All Other</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Computer Science Teachers, Postsecondary (1)</d2p1:Item>

<d2p1:Value>Computer Science Teachers~D~ Postsecondary</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Database Administrators (1)</d2p1:Item>

<d2p1:Value>Database Administrators</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Home Health Aides (1)</d2p1:Item>

<d2p1:Value>Home Health Aides</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Medical and Health Services Managers (1)</d2p1:Item>

<d2p1:Value>Medical and Health Services Managers</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Network and Computer Systems Administrators (1)</d2p1:Item>

<d2p1:Value>Network and Computer Systems Administrators</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Nurse Practitioners (1)</d2p1:Item>

<d2p1:Value>Nurse Practitioners</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Nursing Instructors and Teachers, Postsecondary (1)</d2p1:Item>

<d2p1:Value>Nursing Instructors and Teachers~D~ Postsecondary</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Personal Care Aides (1)</d2p1:Item>

<d2p1:Value>Personal Care Aides</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Registered Nurses (1)</d2p1:Item>

<d2p1:Value>Registered Nurses</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Web and Digital Interface Designers (1)</d2p1:Item>

<d2p1:Value>Web and Digital Interface Designers</d2p1:Value>

</d2p1:ItemCount>

</OccupationCountList>

<ProgramCountList

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:ItemCount>

<d2p1:Count>12</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Information Technology (12)</d2p1:Item>

<d2p1:Value>Information Technology</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Computer and Information Sciences, General (1)</d2p1:Item>

<d2p1:Value>Computer and Information Sciences~D~ General</d2p1:Value>

</d2p1:ItemCount>

</ProgramCountList>

<ProgramLengthCountList

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:ItemCount>

<d2p1:Count>6</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Certificate, less than 12 weeks (6)</d2p1:Item>

<d2p1:Value>Certificate~D~ less than 12 weeks</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>7</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Certificate, 12 weeks to less than 1 year (7)</d2p1:Item>

<d2p1:Value>Certificate~D~ 12 weeks to less than 1 year</d2p1:Value>

</d2p1:ItemCount>

</ProgramLengthCountList>

<RecordCount>13</RecordCount>

<SchoolCountList

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:ItemCount>

<d2p1:Count>6</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>LINXEVE Academy (6)</d2p1:Item>

<d2p1:Value>LINXEVE Academy</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>6</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Salvation Academy (6)</d2p1:Item>

<d2p1:Value>Salvation Academy</d2p1:Value>

</d2p1:ItemCount>

<d2p1:ItemCount>

<d2p1:Count>1</d2p1:Count>

<d2p1:IsSelected>false</d2p1:IsSelected>

<d2p1:Item>Computer CO.R.E. (1)</d2p1:Item>

<d2p1:Value>Computer CO~A~R~A~E~A~</d2p1:Value>

</d2p1:ItemCount>

</SchoolCountList>

<SchoolPrograms>

<ProgramItem>

<Address>5999 Stevenson Ave Suite 340</Address>

<AwLevelCode>1</AwLevelCode>

<AwardLevel>Certificate, less than 12 weeks</AwardLevel>

<CipCode i:nil="true"/>

<CipTitle>Information Technology</CipTitle>

<City>Alexandria</City>

<Credential>CompTIA Network+</Credential>

<DataSource>Y</DataSource>

<DetailId>250859110103</DetailId>

<Distance i:nil="true"/>

<EtaProgramName>CompTIA Network+</EtaProgramName>

<Format

xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">

<d4p1:string>In-person</d4p1:string>

</Format>

<Latitude>38.813277</Latitude>

<Longitude>-77.136534</Longitude>

<NumberCompleted

xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true"/>

<OccupationsList

xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" i:nil="true"/>

<Phone i:nil="true"/>

<SchoolIDUnique>5077</SchoolIDUnique>

<SchoolName>LINXEVE Academy</SchoolName>

<SchoolURL i:nil="true"/>

<State>Virginia</State>

<StateAbbr>VA</StateAbbr>

<Zip>22034</Zip>

</ProgramItem>

</SchoolPrograms>

<SearchedOn

xmlns:d2p1="http://schemas.datacontract.org/2004/07/API.CareerOneStop.DTO.Training">

<d2p1:DataSetType i:nil="true"/>

<d2p1:FormattedCode i:nil="true"/>

<d2p1:IsCode>false</d2p1:IsCode>

<d2p1:KeywordEntered>Pediatric Nurse</d2p1:KeywordEntered>

<d2p1:SchoolOrProgram>P</d2p1:SchoolOrProgram>

<d2p1:Title>Pediatric Nurse</d2p1:Title>

<d2p1:Type i:nil="true"/>

</SearchedOn>

</ProgramList>

Response Parameters

Name Description Type
SchoolPrograms Schools (Programs) Object
DetailId Program Detail Identifier Integer
CipCode Code for this program, from the CIP taxonomy String
CipTitle Title of this program, from the CIP taxonomy String
EtaProgramName Title of this program; only available for ETP WIOA programs. No taxonomy is used to validate, limit, enhance or in any way influence this field. String
Format Program format online or in-person Object
AwLevelCode Code associated with the award level, otherwise known as program length. Like IPEDS’ award level, but compressed by and for CareerOneStop. Integer
AwardLevel Text corresponding to (and explaining) the AwLevelCode String
Credential Credential earned. Populated only for ETP / WIOA programs String
DataSource “W” or “Y” = source of this record is ETP WIOA String
NumberCompleted For each program length (a/k/a awardlevel), that text plus the number completed. Object
OccupationsList Occupations associated with CIP programs of this training program Object
SchoolIDUnique Unique school (provider) ID that you can use in Get Details endpoints (longer than “schoolId”) Integer
SchoolName Name of the training provider String
SchoolURL School Website URL String
Address Street address of the provider. This and all other address fields are not necessarily the location of this particular training. String
City City of the training provider String
StateAbbr 2-letter abbreviation from USPS String
State Full state name String
Zip Zip Code String
Phone Phone Number String
Distance Distance of the training provider from location in the request String
Latitude Latitude Coordinate String
Longitude Longitude Coordinate String
RecordCount Count of results Integer
DidYouMean This is in API but not microservice Object
IsAutoCorrectionUsed Auto Correction Used Boolean
ProgramLengthCountList List of program lengths in the result set, and the count of results in each. If the result set has only one program length value, then programCountList is null. Use these values to filter in a subsequent API call. Same structure as ProgramLengthCountList. Object
Item Item Name String
Count Total Count Integer
Value Value. Same as “Item” but with special characters encoded. String
IsSelected Is this value selected? Boolean
SchoolCountList List of schools (providers) in the result set, and the count of results in each. If the result set has only one school value, then schoolCountList is null. Use these values to filter in a subsequent API call. Same structure as ProgramLengthCountList. Object
ProgramCountList List of programs in the result set, and the count of results in each. If the result set has only one program value, then programCountList is null. Use these values to filter in a subsequent API call. Same structure as ProgramLengthCountList. Object
FormatCountList List of formats in the result set, and the count of results in each. If the result set has only one format value, then formatCountList is null. Use these values to filter in a subsequent API call. Same structure as ProgramLengthCountList. Object
OccupationCountList List of occupations connected to programs in the resultset, and the count of results in each. If there is only one occupation value, then occupationCountList is null. Use these values to filter in a subsequent API call. Object
AreaCountList Area Count List Object
EtpCount ETP Count Integer
SearchedOn Info about the API call Object
KeywordEntered The keyword given in the URI String
IsCode True = search term is an occupation code Boolean
FormattedCode Formatted occupation code String
Title If search term was an occupation code, the corresponding occupation title String
Type XPAND will document all possible values and their meanings. String
DataSetType XPAND will document all possible values and their meanings. String
SchoolOrProgram S = school (provider, institution) P = Program String
Metadata Information about the source of the API Object
Publisher Publisher of the API String
Sponsor Sponsor of the API String
LastAccessDate When the API was run, using UTC (ISO 8601) format String
CitationSuggested If you use this data, CareerOneStop suggests you use this citation. String
DataSource The data source object(s) Object
DataName Name of data String
DataSourceName Name of data source String
DataSourceUrl Url of data source String
DataLastUpdate Date when CareerOneStop last updated this data String
DataVintageOrVersion Version or vintage of the data String
DataDescription Description of the data String
DataSourceCitation Suggested citation for this data source 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.