# OSHA Inspection Search API

> OSHA Inspection Search API is a paid API for AI agents from osha-search.krimskrams.xyz, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-15).

Search OSHA inspection records by establishment name with optional filters for state, date range, and violation status, returning up to 20 matching inspection records with violation counts and official links.

## Facts

- Endpoint: GET https://osha-search.krimskrams.xyz/v1/search
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/osha-inspection-search-api-640fb396
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_monrj6PgWcujB90k-ICRA

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability osha-inspection-search-api-640fb396
```

Example prompt: Can you look up OSHA inspection records for Amazon Fulfillment Center in Texas? I only want inspections that had violations, from January 2020 through December 2023, and return up to 10 results.

## When to prefer this

Choose this endpoint when you need to quickly search OSHA enforcement and inspection records by establishment name, with the ability to narrow results by state, date range, or violation presence. It is ideal for compliance research, due diligence workflows, and safety journalism. Prefer this over manually querying the OSHA public website when you need structured, programmatic JSON output with direct official record links. Best suited for targeted single-establishment lookups rather than bulk data exports.

## Known failure modes

- No matching inspections found for the establishment name — returns empty results array
- Establishment name too short (under 2 characters) or too long (over 60 characters) — validation error
- Invalid state code format (not a 2-letter abbreviation) — schema validation failure
- Invalid date format for start_date or end_date — schema validation error
- Limit out of range (below 1 or above 20) — validation error
- Payment failure — x402 payment required error if USDC payment is not completed
- OSHA upstream data unavailable — possible 503 or timeout error

## How this service works

Look up U.S. OSHA workplace inspections by establishment or company name. Use establishment, state, start_date, end_date, violations_only, and limit. Receive up to 20 JSON records with activity_id, date_opened, report_id, state, inspection_type, scope, SIC, NAICS, violation_count, establishment_name, and official_url.

## Output

A JSON object containing a list of up to 20 OSHA inspection records matching the query. Each record includes the inspection activity ID, report ID, date opened, inspection type, scope, state, violation count, SIC and NAICS industry codes, and a direct URL to the official OSHA record. The response also includes metadata such as the data source and the queried state.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "title": "SearchParams",
     "properties": {
      "limit": {
       "type": "integer",
       "title": "Limit",
       "default": 20,
       "maximum": 20,
       "minimum": 1
      },
      "state": {
       "type": "string",
       "title": "State",
       "default": "all",
       "pattern": "^(all|[A-Za-z]{2})$"
      },
      "end_date": {
       "anyOf": [
        {
         "type": "string",
         "format": "date"
        },
        {
         "type": "null"
        }
       ],
       "title": "End Date",
       "default": null
      },
      "start_date": {
       "anyOf": [
        {
         "type": "string",
         "format": "date"
        },
        {
         "type": "null"
        }
       ],
       "title": "Start Date",
       "default": null
      },
      "establishment": {
       "anyOf": [
        {
         "type": "string",
         "maxLength": 60,
         "minLength": 2
        },
        {
         "type": "null"
        }
       ],
       "title": "Establishment",
       "default": null
      },
      "violations_only": {
       "type": "boolean",
       "title": "Violations Only",
       "default": false
      }
     },
     "description": "Validated parameters for both payment routes."
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "title": "InspectionSearchResponse",
     "properties": {
      "state": {
       "type": "string",
       "title": "State"
      },
      "source": {
       "type": "string",
       "title": "Source",
       "default": "OSHA"
      },
      "results": {
       "type": "array",
       "items": {
        "type": "object",
        "title": "Inspection",
        "properties": {
         "sic": {
          "anyOf": [
           {
            "type": "string"
           },
           {
            "type": "null"
           }
          ],
          "title": "Sic",
          "defaul
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/osha-inspection-search-api-640fb396/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from osha-search.krimskrams.xyz](https://www.zero.xyz/host/osha-search.krimskrams.xyz/llms.txt)
