> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oneshotagent.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Federal Labor Rates

> Look up the ceiling hourly rates federal contractors have agreed, by keyword.

Look up the ceiling hourly rates that contractors on US federal supply schedule contracts have agreed, matching your words against the labor category, contractor name and contract number (a keyword search, so a match is not always a job title), with the low, middle (median), average and high across every match, and the matching rates with the contractor, contract number, business size, education, years of experience, clearance and worksite. Use it to check whether a quoted hourly rate is in line with what the government pays. These are ceilings, the most the contract allows per hour, not what was paid. Rates are listed lowest first. Covers ceiling hourly rates on US federal supply schedule contracts. `total` is 0 and `summary` is null when nothing matches.

## Authentication

Requires x402 payment in the `payment-signature` header.

## Request Body

<ParamField body="role" type="string" required>
  Words to look up, for example software engineer. Matched as a keyword search across labor category, contractor name and contract number, so some rates may not be for that job title. 2 to 80 characters.
</ParamField>

<ParamField body="min_years_experience" type="integer">
  Only rates for roles that ask for at least this many years of experience. From 0 to 45.
</ParamField>

<ParamField body="education" type="string">
  Only rates for roles that ask for exactly this level of education. One of `high_school`, `associates`, `bachelors`, `masters`, `doctorate`.
</ParamField>

<ParamField body="limit" type="integer">
  The most rates to list. Default 10. The summary always covers every match. From 1 to 25. Defaults to `10`.
</ParamField>

<Snippet file="audit-context-params.mdx" />

## Response (200 OK)

Top-level envelope: `success` (boolean) and `data` (object). All fields below are nested under `data`.

<ResponseField name="data.request_id" type="string">
  Durable job ID for audit and lookup
</ResponseField>

<ResponseField name="data.status" type="string">
  Job status: `completed`
</ResponseField>

<ResponseField name="data.tool" type="string">
  Always `market_federal_labor_rates`
</ResponseField>

<ResponseField name="data.result" type="object">
  The answer, described under Result below
</ResponseField>

<ResponseField name="data.evidence" type="object">
  Where the answer came from and when
</ResponseField>

<ResponseField name="data.evidence.source" type="string">
  The public body the data comes from. Always `US General Services Administration`.
</ResponseField>

<ResponseField name="data.evidence.source_kind" type="string">
  `public` when the data comes from a public body, `commercial` otherwise
</ResponseField>

<ResponseField name="data.evidence.retrieved_at" type="string">
  When the lookup was made, as an ISO 8601 UTC time
</ResponseField>

<ResponseField name="data.evidence.as_of" type="string">
  When the source says the fact was last updated, or `null` when the source gives no date
</ResponseField>

## Result

Nested under `data.result`.

<ResponseField name="data.result.total" type="number">
  How many rates match the keyword, including any beyond `limit`.
</ResponseField>

<ResponseField name="data.result.summary" type="object">
  Null when nothing matches. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.summary.count" type="number">
  How many rates the figures cover.
</ResponseField>

<ResponseField name="data.result.summary.low_usd" type="number">
  The lowest ceiling hourly rate.
</ResponseField>

<ResponseField name="data.result.summary.median_usd" type="number">
  The middle ceiling hourly rate.
</ResponseField>

<ResponseField name="data.result.summary.average_usd" type="number">
  The average ceiling hourly rate.
</ResponseField>

<ResponseField name="data.result.summary.high_usd" type="number">
  The highest ceiling hourly rate.
</ResponseField>

<ResponseField name="data.result.rates" type="object[]">
  Rates.
</ResponseField>

<ResponseField name="data.result.rates[].role" type="string">
  The contractor's name for the labor category. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].hourly_rate_usd" type="number">
  The ceiling hourly rate in US dollars. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].contractor" type="string">
  Contractor. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].contract_number" type="string">
  Contract number. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].business_size" type="string">
  Business size. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].education" type="string">
  Education. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].min_years_experience" type="number">
  Min years experience. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].security_clearance" type="boolean">
  Security clearance. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].worksite" type="string">
  Worksite. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].contract_start_on" type="string">
  YYYY-MM-DD. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.rates[].contract_end_on" type="string">
  YYYY-MM-DD. `null` when the source gives no value.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://win.oneshotagent.com/v1/tools/lookup/market-federal-labor-rates \
    -H "Content-Type: application/json" \
    -H "payment-signature: <base64 x402 payment>" \
    -d '{
      "role": "software engineer",
      "limit": 1
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch("https://win.oneshotagent.com/v1/tools/lookup/market-federal-labor-rates", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "payment-signature": paymentProof,
    },
    body: JSON.stringify({
      "role": "software engineer",
      "limit": 1
    }),
  });
  ```

  ```typescript SDK theme={null}
  const result = await agent.tool('lookup/market-federal-labor-rates', {
    role: 'software engineer',
    limit: 1
  });
  console.log(result.data.result);
  console.log(result.data.evidence);
  ```
</RequestExample>

<ResponseExample>
  ```json Response (200) theme={null}
  {
    "success": true,
    "data": {
      "request_id": "uuid",
      "receipt_id": "rcpt_...",
      "status": "completed",
      "tool": "market_federal_labor_rates",
      "result": {
        "total": 4708,
        "summary": {
          "count": 4708,
          "low_usd": 29.27,
          "median_usd": 137.58,
          "average_usd": 144.61,
          "high_usd": 449.75
        },
        "rates": [
          {
            "role": "Intern Software Engineer",
            "hourly_rate_usd": 29.27,
            "contractor": "DIGNITAS TECHNOLOGIES, LLC",
            "contract_number": "47QREA22D000R",
            "business_size": "small",
            "education": "High School",
            "min_years_experience": 1,
            "security_clearance": false,
            "worksite": "Contractor Facility",
            "contract_start_on": "2022-03-04",
            "contract_end_on": "2027-03-03"
          }
        ]
      },
      "evidence": {
        "source": "US General Services Administration",
        "source_kind": "public",
        "retrieved_at": "2026-01-15T12:00:00.000Z",
        "as_of": null
      }
    }
  }
  ```
</ResponseExample>

<Info>Price: \$0.01 per lookup. See [Pricing](/pricing) for every tool.</Info>

## Notes

* Results return inline. The finished job stays available at `/v1/requests/{request_id}`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.