# BLS API: Get occupation wages

> Finds the latest published BLS pay and employment for an occupation in the US, a state, or a metro area, and compares it with the national median.

Unofficial. Not affiliated with or endorsed by BLS.

- Page: https://fous.com/methods/bls.gov/get-occupation-wages
- Method: `bls.gov/get_occupation_wages`, version 1
- Website: bls.gov
- Returns: occupation title, location, survey period, employment, median/10th/90th percentile annual wage, median hourly wage, national median, difference
- Effect: read (it gets data and changes nothing)
- Sign-in: none needed
- Cost: 1 credit per completed run (1¢ with pay as you go); failed runs are free

## Inputs

| Field | Type | Required | In the run below | Description |
|---|---|---|---|---|
| `location` | string | no | `"Los Angeles, CA"` | A US state or metro area, for example "Texas" or "Austin, TX". Defaults to the whole United States. Default "United States". |
| `job_title` | string | yes | `"registered nurse"` | Job in everyday words, for example "registered nurse". |
| `occupation_code` | string | no |  | Optional SOC occupation code, for example "29-1141". Overrides job title matching. Default "". |

## Output

From a run on Oct 23, 2026. Its input:

```json
{
  "location": "Los Angeles, CA",
  "job_title": "registered nurse"
}
```

Its output:

```json
{
  "link": "https://data.bls.gov/oes/#/area/0031080/2025",
  "currency": "USD",
  "location": "Los Angeles-Long Beach-Anaheim, CA",
  "soc_code": "29-1141",
  "area_code": "0031080",
  "survey_period": "May 2025",
  "number_employed": 109360,
  "occupation_title": "Registered Nurses",
  "median_annual_wage": 135560,
  "median_hourly_wage": 65.18,
  "annual_wage_10th_percentile": 100980,
  "annual_wage_90th_percentile": 174200,
  "national_median_annual_wage": 97550,
  "difference_from_national_median_percent": 38.96
}
```

## Run it

From code, with a Fous API key in `FOUS_API_KEY`; the answer's `data` holds the output:

```bash
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method":"bls.gov/get_occupation_wages","input":{"location":"Los Angeles, CA","job_title":"registered nurse"}}'
```

From an AI agent connected to the Fous MCP server: its `run` with the same method and input. To connect one, give it `set up https://fous.com/SKILL.md`.

## Ask your agent

- What do electricians make per year in Ohio compared with the national median?
- How much does a registered nurse earn in the Austin, TX metro area versus the US median wage?
- Show me median and 90th percentile pay for software developers in California.
- What is the hourly wage for paralegals in Denver, and how does it stack up nationally?
- Look up employment numbers and annual wage percentiles for SOC 29-1141 across the whole United States.

## Input schema

```json
{
  "type": "object",
  "required": [
    "job_title"
  ],
  "properties": {
    "location": {
      "type": "string",
      "default": "United States",
      "description": "A US state or metro area, for example \"Texas\" or \"Austin, TX\". Defaults to the whole United States."
    },
    "job_title": {
      "type": "string",
      "description": "Job in everyday words, for example \"registered nurse\"."
    },
    "occupation_code": {
      "type": "string",
      "default": "",
      "description": "Optional SOC occupation code, for example \"29-1141\". Overrides job title matching."
    }
  }
}
```

## Output schema

```json
{
  "type": "object",
  "required": [
    "occupation_title",
    "location",
    "survey_period",
    "currency",
    "link",
    "soc_code",
    "area_code"
  ],
  "properties": {
    "link": {
      "type": "string"
    },
    "currency": {
      "type": "string"
    },
    "location": {
      "type": "string"
    },
    "soc_code": {
      "type": "string"
    },
    "area_code": {
      "type": "string"
    },
    "survey_period": {
      "type": "string"
    },
    "number_employed": {
      "type": [
        "null",
        "integer"
      ]
    },
    "occupation_title": {
      "type": "string"
    },
    "median_annual_wage": {
      "type": [
        "null",
        "number"
      ]
    },
    "median_hourly_wage": {
      "type": [
        "null",
        "number"
      ]
    },
    "annual_wage_10th_percentile": {
      "type": [
        "null",
        "number"
      ]
    },
    "annual_wage_90th_percentile": {
      "type": [
        "null",
        "number"
      ]
    },
    "national_median_annual_wage": {
      "type": [
        "null",
        "number"
      ]
    },
    "difference_from_national_median_percent": {
      "type": [
        "null",
        "number"
      ]
    }
  }
}
```

## See more

- [BLS API: Get occupation outlook](https://fous.com/methods/bls.gov/get-occupation-outlook.md): Finds the best-matching Occupational Outlook Handbook profile for a job title and returns its pay, entry requirements, jobs and 10-year outlook.
- [BLS API: Get unemployment rate](https://fous.com/methods/bls.gov/get-unemployment-rate.md): Gets the latest seasonally adjusted unemployment rate and labor-force counts for the United States or a state, with up to 24 months of history.
- [BLS API: Get inflation rate](https://fous.com/methods/bls.gov/get-inflation-rate.md): Gets the latest U.S. Consumer Price Index inflation for a spending category, with up to 24 recent months of history. Monthly changes are seasonally adjusted; 12-month changes are not.
- [BLS API: Convert US dollars between months with CPI](https://fous.com/methods/bls.gov/calculate-inflation.md): Converts a US dollar amount from one month or annual average to another using the US city average CPI-U for all items, not seasonally adjusted. Defaults to the latest published month.
- [ZipRecruiter API: Get salary for a job title](https://fous.com/methods/ziprecruiter.com/get-salary.md): Looks up ZipRecruiter's salary page for a job title in the United States or one US state and returns typical pay, the percentile range and the top-paying cities. Only salary pages that exist publicly are returned.
- [PayScale API: Get salary for a job title](https://fous.com/methods/payscale.com/get-salary.md): Gets typical pay for a job title from PayScale research pages. You can narrow it to a country and a city.
- [Indeed API: Get salary for a job title](https://fous.com/methods/indeed.com/get-salary.md): Finds the typical pay for a job title in the United States or a U.S. city or state on Indeed's public salary pages, with the number of reported salaries, the last update date, and the top-paying cities and companies when shown.
- [U.S. Department of Labor API: Get minimum wage](https://fous.com/methods/dol.gov/get-minimum-wage.md): Gets a US state's or the federal hourly minimum wage from the Department of Labor, with the tipped cash wage and maximum tip credit, future dated increases, notes and the page's update date.
- [All BLS methods](https://fous.com/methods/bls.gov.md)
