Overview

Introduction

The Career Coach US Jobs API is a RESTful service providing aggregated data from millions of job postings across online sources. It delivers insights into recent job availability, hiring companies, and in-demand skills across the United States. All endpoints follow a JSON:API-like format, with a top-level data object containing objects or arrays with type, id, and attributes.

While careers represent long-term occupations (e.g., Web Developer, O*NET 15-1254.00), jobs represent specific positions at a time and place (e.g., Web Developer role at Lightcast in Moscow, ID). Using the Jobs API together with the Careers API provides a full picture: long-term occupational context alongside current job demand.

Support: Please contact your Lightcast / Career Coach account manager for technical or customer support regarding API use.

Data Overview

The API features three main datasets:

  1. Timeseries of Job Postings – Number of unique job postings per month, total unique postings, and total companies posting, filtered by region, career (O*NET code), and time period.
  2. Companies Posting Jobs – List of companies posting jobs for a specified region, career, and time period.
  3. Skills Data – List of hard and soft skills associated with a given career, with the number of unique postings requiring each skill, filtered by region, career, and time period.

All queries require specifying an O*NET code, geographic region(s), and a date range.

O*NET Information

This page includes information from O*NET OnLine by the U.S. Department of Labor, Employment and Training Administration (USDOL/ETA). Used under the CC BY 4.0 license. O*NET® is a trademark of USDOL/ETA. Lightcast has modified all or some of this information. USDOL/ETA has not approved, endorsed, or tested these modifications.

Resource Structure

The main collections in this API have routes prefixed by /jobs. Additionally, there is a separate skill search endpoint: /skill-search.

The API provides access to the following collections:

  • Timeseries
  • Companies
  • Skills
  • Skill Search

The structure for each collection is:

/jobs/us/{geographyLevel}/{geographyID}/{careerCode}/{collection}

Available geography levels:

  • nation
  • state
  • msa
  • county
  • zip – ZIP code data is derived from county data

Example:

/jobs/us/msa/35620/13-2011.01/timeseries

Breakdown:

  • /us/msa/35620 – Metropolitan Statistical Area code for New York City
  • /13-2011.01 – O*NET code for accountants
  • /timeseries – Monthly job postings collection (default past 6 months if unspecified)

API Endpoint

There are multiple endpoints within this category. Refer to individual API docs under the Career Coach US Jobs section.

Request Headers

(*) Indicates the action to be required

All requests must include the following headers:

Header KeyValueDescription
*AuthorizationBearer <ACCESS_TOKEN>This is the token obtained from the Authentication API. Include it in this header to authorize the request. (This must be included in all authenticated requests)
Content-Typeapplication/jsonRequired for endpoints that accept a request body. Specifies that the body is in JSON format.

Authentication

All endpoints in this category require an OAuth 2.0 Bearer Token for authentication. Tokens are granted through Lightcast’s Authentication API and are valid for 1 hour.

To access the Career Coach US Jobs API, the token must include the following scope:

  • jobs (for expanded access)

Sample Request

curl --request POST \
  --url https://auth.emsicloud.com/connect/token \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data client_id=CLIENT_ID \
  --data client_secret=CLIENT_SECRET \
  --data grant_type=client_credentials \
  --data scope=jobs

Request Parameters

ParameterTypeDescription
client_idstringThe client ID provided by Lightcast.
client_secretstringThe client secret associated with your client ID.
grant_typestringMust be set to client_credentials.
scopestringUse jobs based on your access.

Sample Response

{
  "access_token": "<ACCESS_TOKEN>",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Note that tokens expire after 3600 seconds. To maintain uninterrupted access, refresh the token before it expires. To know more about this, refer to the Authentication guide.

Response Parameters

ParameterTypeDescription
access_tokenstringThe token used to authorize the API requests.
expires_inintegerNumber of seconds before the token expires.
token_typestringIndicates the type of token. (Always Bearer)
Example Request

Sample Request

Example: Get top 10 skills for Software Developers (O*NET 15-1252.00) in San Francisco (MSA 41860) for the past 6 months:

curl --request GET \
--url 'https://cc.emsiservices.com/jobs/us/msa/41860/15-1252.00/skills?limit=10' \
--header 'Authorization: Bearer <ACCESS_TOKEN>'

Sample Response

{
  "data": {
    "attributes": {
      "date-range": {
        "start": "2017-12",
        "end": "2018-06",
        "months": 6,
        "context": "6 months"
      },
      "skills": [
        { "name": "Java (Programming Language)", "unique-postings": 7057 },
        { "name": "Software Development", "unique-postings": 4537 },
        { "name": "JavaScript (Programming Language)", "unique-postings": 4532 },
        { "name": "Software Engineering", "unique-postings": 3765 },
        { "name": "Agile Software Development", "unique-postings": 3605 },
        { "name": "SQL (Programming Language)", "unique-postings": 3272 },
        { "name": "Software Engineer", "unique-postings": 2912 },
        { "name": "Python (Programming Language)", "unique-postings": 2806 },
        { "name": "Amazon Web Services", "unique-postings": 2621 },
        { "name": "Cascading Style Sheets (CSS)", "unique-postings": 2512 }
      ],
      "onet-id": "15-1252.00",
      "total-unique-postings": 19427
    },
    "id": "15-1252.00",
    "type": "skills"
  }
}

Status Code Summary

CodeMeaningDescription
200OKRequest was successful.
400Bad RequestThe request was unacceptable, often due to missing a required parameter.
401UnauthorizedAuthentication error.
404Not FoundResource not found.

Versioning

The Career Coach US Jobs API is currently at version 1.0. New data updates, fields, and minor hotfixes may be added at any time and are not considered breaking changes.

Data is typically refreshed once per quarter, as new economic information becomes available. Clients will be notified when new data or features are released.

In the rare event that a version is deprecated, clients will receive at least 90 days’ notice to update their queries to the new format.