Endpoint Examples

/estimate

POST /estimate

Produces a compensation estimate based on many optional factors.

Code Examples

curl --request POST \
     --url https://api.lightcast.io/comp/estimate \
     --header 'accept: application/json' \
     --header 'authorization: Bearer <Access_Token>' \
     --header 'content-type: application/json' \    

Request Body Example

{
  "msa": "42660",
  "titles": [
    "ETCC677E49FBA73537"
  ],
  "keyword": "Hadoop OR Hive"
}

Response Examples

{
  "search_parameters": {
    "keyword": "Hadoop OR Hive",
    "socs": [
      "15-1252"
    ],
    "weight_field": "weight_v1",
    "skills": [
      "Java (Programming Language)"
    ],
    "skills_operator": 0,
    "companies": [],
    "industries": [],
    "ed_levels": [],
    "experiences": [
      -1
    ],
    "percentiles": [
      10,
      25,
      50,
      75,
      90
    ],
    "geography": {
      "type": "MSA",
      "code": "42660",
      "name": "Seattle-Tacoma-Bellevue, WA",
      "abbr": "",
      "counties": [
        "53061",
        "53033",
        "53053"
      ]
    }
  },
  "national_estimate": {
    "percentiles": [
      {
        "percentile": 10,
        "annual_salary": 95008,
        "hourly_salary": 45.67692307692307,
        "observations": 226,
        "observations_delta": 226
      },
      {
        "percentile": 25,
        "annual_salary": 124832,
        "hourly_salary": 60.01538461538462,
        "observations": 773,
        "observations_delta": 547
      },
      {
        "percentile": 50,
        "annual_salary": 150880,
        "hourly_salary": 72.53846153846153,
        "observations": 1814,
        "observations_delta": 1041
      },
      {
        "percentile": 75,
        "annual_salary": 185056,
        "hourly_salary": 88.96923076923076,
        "observations": 2951,
        "observations_delta": 1137
      },
      {
        "percentile": 90,
        "annual_salary": 220256,
        "hourly_salary": 105.8923076923077,
        "observations": 3520,
        "observations_delta": 569
      }
    ],
    "observations": 3767,
    "bySocInfo": [
      {
        "soc": "15-1252",
        "weighted": 16001
      }
    ],
    "log_issue_regionalization": false
  },
  "regional_estimate": {
    "percentiles": [
      {
        "percentile": 10,
        "annual_salary": 124587,
        "hourly_salary": 59.89750931173621,
        "observations": 226,
        "observations_delta": 226
      },
      {
        "percentile": 25,
        "annual_salary": 164737,
        "hourly_salary": 79.20058764775021,
        "observations": 773,
        "observations_delta": 547
      },
      {
        "percentile": 50,
        "annual_salary": 191931,
        "hourly_salary": 92.27454713875211,
        "observations": 1814,
        "observations_delta": 1041
      },
      {
        "percentile": 75,
        "annual_salary": 230372,
        "hourly_salary": 110.7557064541301,
        "observations": 2951,
        "observations_delta": 1137
      },
      {
        "percentile": 90,
        "annual_salary": 234486,
        "hourly_salary": 112.7337370118173,
        "observations": 3520,
        "observations_delta": 569
      }
    ],
    "observations": 0,
    "bySocInfo": [],
    "log_issue_regionalization": false
  },
  "national_employment": 1419522,
  "regional_employment": 73957,
  "socs_in_estimate": [
    {
      "soc": "15-1252",
      "name": "Software Developers",
      "national_employment": 1419522,
      "regional_employment": 73957
    }
  ],
  "timings": {
    "agnitio_national": 213,
    "agnitio_regional": 192,
    "gis": 0,
    "elastic_1": 63,
    "elastic_2": 13,
    "total": 621
  }
}
{
  "errors": [
    "Not enough data to form an estimate (unweighted)"
  ]
}

POST /estimate_by_experience

Produces multiple compensation estimates at once, once per year of experience.

Code Examples

curl --request POST \
     --url https://api.lightcast.io/comp/estimate_by_experience \
     --header 'accept: application/json' \
     --header 'authorization: Bearer <Access_Token>' \
     --header 'content-type: application/json' \     

Request Body Example

{
  "msa": "42660",
  "titles": [
    "ETCC677E49FBA73537"
  ],
  "keyword": "Hadoop OR Hive",
  "experiences": [
    1,
    3,
    5,
    10
  ]
}

Response Examples

{
  "search_parameters": {
    "keyword": "Hadoop OR Hive",
    "socs": [
      "15-1252"
    ],
    "weight_field": "weight_v1",
    "skills": [
      "Java (Programming Language)"
    ],
    "skills_operator": 0,
    "companies": [],
    "industries": [],
    "ed_levels": [],
    "experiences": [
      1,
      3,
      5,
      10
    ],
    "percentiles": [
      10,
      25,
      50,
      75,
      90
    ],
    "geography": {
      "type": "MSA",
      "code": "42660",
      "name": "Seattle-Tacoma-Bellevue, WA",
      "abbr": "",
      "counties": [
        "53061",
        "53033",
        "53053"
      ]
    }
  },
  "national_employment": 1419522,
  "regional_employment": 73957,
  "socs_in_estimate": [
    {
      "soc": "15-1252",
      "name": "Software Developers",
      "national_employment": 1419522,
      "regional_employment": 73957
    }
  ],
  "by_experience": [
    {
      "experience": 1,
      "national_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 73056,
            "hourly_salary": 35.12307692307692,
            "observations": 39,
            "observations_delta": 39
          },
          {
            "percentile": 25,
            "annual_salary": 90208,
            "hourly_salary": 43.36923076923077,
            "observations": 151,
            "observations_delta": 112
          },
          {
            "percentile": 50,
            "annual_salary": 122848,
            "hourly_salary": 59.06153846153846,
            "observations": 722,
            "observations_delta": 571
          },
          {
            "percentile": 75,
            "annual_salary": 145632,
            "hourly_salary": 70.01538461538462,
            "observations": 1612,
            "observations_delta": 890
          },
          {
            "percentile": 90,
            "annual_salary": 183520,
            "hourly_salary": 88.23076923076923,
            "observations": 2903,
            "observations_delta": 1291
          }
        ],
        "observations": 3767,
        "bySocInfo": [
          {
            "soc": "15-1252",
            "weighted": 16001
          }
        ],
        "log_issue_regionalization": false
      },
      "regional_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 95801,
            "hourly_salary": 46.05793659774125,
            "observations": 39,
            "observations_delta": 39
          },
          {
            "percentile": 25,
            "annual_salary": 119045,
            "hourly_salary": 57.23313421661313,
            "observations": 151,
            "observations_delta": 112
          },
          {
            "percentile": 50,
            "annual_salary": 156272,
            "hourly_salary": 75.13085609027982,
            "observations": 722,
            "observations_delta": 571
          },
          {
            "percentile": 75,
            "annual_salary": 181294,
            "hourly_salary": 87.16050839922985,
            "observations": 1612,
            "observations_delta": 890
          },
          {
            "percentile": 90,
            "annual_salary": 195377,
            "hourly_salary": 93.93113203004098,
            "observations": 2903,
            "observations_delta": 1291
          }
        ],
        "observations": 0,
        "bySocInfo": [],
        "log_issue_regionalization": false
      }
    },
    {
      "experience": 3,
      "national_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 79456,
            "hourly_salary": 38.2,
            "observations": 75,
            "observations_delta": 75
          },
          {
            "percentile": 25,
            "annual_salary": 101024,
            "hourly_salary": 48.56923076923077,
            "observations": 347,
            "observations_delta": 272
          },
          {
            "percentile": 50,
            "annual_salary": 131680,
            "hourly_salary": 63.30769230769231,
            "observations": 1104,
            "observations_delta": 757
          },
          {
            "percentile": 75,
            "annual_salary": 164832,
            "hourly_salary": 79.24615384615385,
            "observations": 2152,
            "observations_delta": 1048
          },
          {
            "percentile": 90,
            "annual_salary": 197600,
            "hourly_salary": 95,
            "observations": 3249,
            "observations_delta": 1097
          }
        ],
        "observations": 3767,
        "bySocInfo": [
          {
            "soc": "15-1252",
            "weighted": 16001
          }
        ],
        "log_issue_regionalization": false
      },
      "regional_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 104193,
            "hourly_salary": 50.09279744730247,
            "observations": 75,
            "observations_delta": 75
          },
          {
            "percentile": 25,
            "annual_salary": 133318,
            "hourly_salary": 64.0954255841957,
            "observations": 347,
            "observations_delta": 272
          },
          {
            "percentile": 50,
            "annual_salary": 167507,
            "hourly_salary": 80.53229299596288,
            "observations": 1104,
            "observations_delta": 757
          },
          {
            "percentile": 75,
            "annual_salary": 205195,
            "hourly_salary": 98.65167628310985,
            "observations": 2152,
            "observations_delta": 1048
          },
          {
            "percentile": 90,
            "annual_salary": 210366,
            "hourly_salary": 101.137705368004,
            "observations": 3249,
            "observations_delta": 1097
          }
        ],
        "observations": 0,
        "bySocInfo": [],
        "log_issue_regionalization": false
      }
    },
    {
      "experience": 5,
      "national_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 92960,
            "hourly_salary": 44.69230769230769,
            "observations": 188,
            "observations_delta": 188
          },
          {
            "percentile": 25,
            "annual_salary": 122848,
            "hourly_salary": 59.06153846153846,
            "observations": 722,
            "observations_delta": 534
          },
          {
            "percentile": 50,
            "annual_salary": 144096,
            "hourly_salary": 69.27692307692308,
            "observations": 1508,
            "observations_delta": 786
          },
          {
            "percentile": 75,
            "annual_salary": 176864,
            "hourly_salary": 85.03076923076924,
            "observations": 2609,
            "observations_delta": 1101
          },
          {
            "percentile": 90,
            "annual_salary": 214496,
            "hourly_salary": 103.1230769230769,
            "observations": 3463,
            "observations_delta": 854
          }
        ],
        "observations": 3767,
        "bySocInfo": [
          {
            "soc": "15-1252",
            "weighted": 16001
          }
        ],
        "log_issue_regionalization": false
      },
      "regional_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 121901,
            "hourly_salary": 58.60635383987663,
            "observations": 188,
            "observations_delta": 188
          },
          {
            "percentile": 25,
            "annual_salary": 162119,
            "hourly_salary": 77.941824142454,
            "observations": 722,
            "observations_delta": 534
          },
          {
            "percentile": 50,
            "annual_salary": 183301,
            "hourly_salary": 88.12561734163326,
            "observations": 1508,
            "observations_delta": 786
          },
          {
            "percentile": 75,
            "annual_salary": 220174,
            "hourly_salary": 105.852808157008,
            "observations": 2609,
            "observations_delta": 1101
          },
          {
            "percentile": 90,
            "annual_salary": 228354,
            "hourly_salary": 109.7855933735597,
            "observations": 3463,
            "observations_delta": 854
          }
        ],
        "observations": 0,
        "bySocInfo": [],
        "log_issue_regionalization": false
      }
    },
    {
      "experience": 10,
      "national_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 101024,
            "hourly_salary": 48.56923076923077,
            "observations": 347,
            "observations_delta": 347
          },
          {
            "percentile": 25,
            "annual_salary": 131040,
            "hourly_salary": 63,
            "observations": 1048,
            "observations_delta": 701
          },
          {
            "percentile": 50,
            "annual_salary": 161632,
            "hourly_salary": 77.70769230769231,
            "observations": 2072,
            "observations_delta": 1024
          },
          {
            "percentile": 75,
            "annual_salary": 187232,
            "hourly_salary": 90.01538461538462,
            "observations": 3011,
            "observations_delta": 939
          },
          {
            "percentile": 90,
            "annual_salary": 221536,
            "hourly_salary": 106.5076923076923,
            "observations": 3552,
            "observations_delta": 541
          }
        ],
        "observations": 3767,
        "bySocInfo": [
          {
            "soc": "15-1252",
            "weighted": 16001
          }
        ],
        "log_issue_regionalization": false
      },
      "regional_estimate": {
        "percentiles": [
          {
            "percentile": 10,
            "annual_salary": 132476,
            "hourly_salary": 63.69027851032375,
            "observations": 347,
            "observations_delta": 347
          },
          {
            "percentile": 25,
            "annual_salary": 172930,
            "hourly_salary": 83.13929926109641,
            "observations": 1048,
            "observations_delta": 701
          },
          {
            "percentile": 50,
            "annual_salary": 205608,
            "hourly_salary": 98.8502094587141,
            "observations": 2072,
            "observations_delta": 1024
          },
          {
            "percentile": 75,
            "annual_salary": 233081,
            "hourly_salary": 112.0580388143032,
            "observations": 3011,
            "observations_delta": 939
          },
          {
            "percentile": 90,
            "annual_salary": 235849,
            "hourly_salary": 113.3888800425412,
            "observations": 3552,
            "observations_delta": 541
          }
        ],
        "observations": 0,
        "bySocInfo": [],
        "log_issue_regionalization": false
      }
    }
  ],
  "timings": {
    "agnitio_national": 194,
    "agnitio_regional": 188,
    "gis": 0,
    "elastic_1": 22,
    "elastic_2": 14,
    "total": 556
  }
}
{
  "errors": [
    "Not enough data to form an estimate (unweighted)"
  ]
}

POST /by_msa

Takes multiple MSA codes and produces an estimate for each. This is much faster than making many separate calls to /estimate. The response format is much more minimal than that of the other estimation endpoints to reduce data size.

Code Examples

curl --request POST \
     --url https://api.lightcast.io/comp/by_msa \
     --header 'accept: application/json' \
     --header 'authorization: Bearer <Access_Token>' \
     --header 'content-type: application/json' \     

Request Body Example

{
  "msas": [
    "42660",
    "12060",
    "35620"
  ],
  "titles": [
    "ETCC677E49FBA73537"
  ],
  "keyword": "Hadoop OR Hive"
}

Response Examples

{
  "by_msa": [
    {
      "msa": "42660",
      "employment": 73957,
      "median_hourly": 92.27454713875211,
      "median_annual": 191931
    },
    {
      "msa": "12060",
      "employment": 37615,
      "median_hourly": 71.54127665245586,
      "median_annual": 148806
    },
    {
      "msa": "35620",
      "employment": 95289,
      "median_hourly": 82.72424579330809,
      "median_annual": 172066
    }
  ]
}
{
  "errors": [
    "Not enough data to form an estimate (unweighted)"
  ]
}