U.S. Department of Labor API: Get state overtime and break rules
Returns a state's overtime premium rule and its adult private-sector meal and paid rest break requirements, taken from U.S. Department of Labor state-law pages. The break tables were last revised in January 2023.
Unofficial. Not affiliated with or endorsed by U.S. Department of Labor.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- State, required
state US state name or two-letter postal code, for example Washington or WA.
CA
Input as JSON
{ "state": "CA"}Output
{ "state": "California", "dol_links": { "overtime": "https://www.dol.gov/agencies/whd/minimum-wage/state#ca" , "meal_breaks": "https://www.dol.gov/agencies/whd/state/meal-breaks" , "rest_periods": "https://www.dol.gov/agencies/whd/state/rest-periods" }, "overtime_rule": "1.5 times regular pay after 8 hours in a day, after 40 hours in a workweek, and for the first 8 hours on the seventh consecutive workday; double pay after 12 hours in a day or after 8 hours on the seventh day.", "meal_break_rule": "30 minutes, if work is for more than 5 hours per day, except when workday will be completed in 6 hours or less and there is mutual employer/employee consent to waive meal period. On-duty meal period counted as time worked and permitted only when nature of work prevents relief from all duties and the…" , "rest_break_rule": "Paid 10-minute rest period for each 4 hours worked or major fraction thereof; as practicable, in middle of each work period. Not required for employees whose total daily work time is less than 3 and ½ hours. This includes paid “recovery period” which means a cool down period afforded an employee to …", "exceptions_and_notes": "Overtime: Exceptions apply to an employee working pursuant to an alternative workweek adopted pursuant to applicable Labor Code sections and for time spent commuting. (See Labor Code section 510 for exceptions). Meal breaks coverage: Uniform application to industries under 14 Orders, including agric…", "only_federal_overtime_rule": false}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"dol.gov/get_overtime_and_break_rules","input":{"state":"CA"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "dol.gov/get_overtime_and_break_rules" , "input": { "state": "CA" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "dol.gov/get_overtime_and_break_rules" , "input": { "state": "CA" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run dol.gov/get_overtime_and_break_rules# with {"state":"CA"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "state" ], "properties": { "state": { "type": "string", "description": "US state name or two-letter postal code, for example Washington or WA." } }}Output schema
{ "type": "object", "required": [ "state", "overtime_rule", "only_federal_overtime_rule", "meal_break_rule", "rest_break_rule", "exceptions_and_notes", "dol_links" ], "properties": { "state": { "type": "string" }, "dol_links": { "type": "object", "properties": { "overtime": { "type": "string" }, "meal_breaks": { "type": "string" }, "rest_periods": { "type": "string" } } }, "overtime_rule": { "type": "string" }, "meal_break_rule": { "type": "string" }, "rest_break_rule": { "type": "string" }, "exceptions_and_notes": { "type": "string" }, "only_federal_overtime_rule": { "type": "boolean" } }}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
dol.gov/get_overtime_and_break_rules- Returns
- overtime rule, federal-only flag, meal break rule, rest break rule, notes, DOL links
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method dol.gov/get_overtime_and_break_rules with the inputs above.
Ask your agent
- What is the daily overtime rule in California for private employers?
- Does Texas require meal breaks for adult workers?
- Show me the paid rest break requirements for WA employees
- I need to know if Colorado overtime is federal-only or has its own state rule
- What are Ohio's meal and rest break rules for adult private-sector workers, and where can I read the official DOL state page?
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.
dol.gov/get_minimum_wageFinds 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.
bls.gov/get_occupation_wagesFinds the best-matching Occupational Outlook Handbook profile for a job title and returns its pay, entry requirements, jobs and 10-year outlook.
bls.gov/get_occupation_outlookGets current US land-border wait times for every crossing, or for crossings filtered by name, border and state. Lane values that are unavailable are null.
cbp.gov/get_border_wait_timesGets 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.gov/get_unemployment_rateLooks 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.
ziprecruiter.com/get_salaryFind Federal Register rules, proposed rules, notices, and presidential documents by topic, agency, publication dates, and comment status. Significant means designated significant by the source; documents without that designation show no.
federalregister.gov/search_rulesFinds current eCFR regulation sections for a topic or an exact CFR citation. Returns each section's text, last amendment date and the date the title is current through.
ecfr.gov/get_regulation