OSHA · Authentication Profile

Osha Authentication

Authentication

OSHA secures its APIs with http and apiKey across 3 declared security schemes, as derived from its OpenAPI definitions.

ComplianceGovernmentHealth StandardsRegulatoryWorkplace SafetyFederalOpen DataEnforcementOccupational HealthInjury Reporting
Methods: http, apiKey Schemes: 3 OAuth flows: API key in: header, query

Security Schemes

ITABearerToken http
scheme: bearer
DOLDataApiKeyHeader apiKey
· in: header ()
DOLDataApiKeyQuery apiKey
· in: query ()

Source

Authentication Profile

osha-authentication.yml Raw ↑
generated: '2026-08-27'
method: searched
source: https://www.osha.gov/sites/default/files/ita/documentation/osha_injury-tracking-application-api-documentation-v1.pdf
docs:
  - https://www.osha.gov/sites/default/files/ita/documentation/osha_injury-tracking-application-api-documentation-v1.pdf
  - https://usdepartmentoflabor.github.io/Developer/beginner/
note: >-
  Derived from the provider's own published API documentation, not from an OpenAPI —
  neither OSHA nor DOL publishes a machine-readable contract for either surface.
  Two different auth models are in play across the two APIs this repo catalogs.
summary:
  types: [http, apiKey]
  http_schemes: [bearer]
  api_key_in: [header, query]
  oauth2_flows: []
  oidc: false
  mutual_tls: false
schemes:
  - name: ITABearerToken
    type: http
    scheme: bearer
    api: OSHA Injury Tracking Application (ITA) API
    base_url: https://www.osha.gov/oshaApi/v1
    header: 'Authorization: Bearer [ITA API Token]'
    applies_to: every ITA API call (establishments, forms/form300A, forms/caseData, submissions)
    token_issuance: >-
      Self-service, but account-gated: create an ITA account, log in at
      https://www.osha.gov/injuryreporting/ita and read the token from the API Token page.
      There is no public/anonymous read tier — the ITA API is a submission API for employers
      reporting their own 300A/300/301 injury and illness records.
    rotation: >-
      OSHA reissued every token in July 2018; the pre-2018 token format was invalidated
      outright. No rotation cadence or expiry is documented for the current format.
    source: https://www.osha.gov/sites/default/files/ita/documentation/osha_injury-tracking-application-api-documentation-v1.pdf
    observed:
      url: https://www.osha.gov/oshaApi/v1/establishments
      unauthenticated_status: 403
      fetched: '2026-08-27'
  - name: DOLDataApiKeyHeader
    type: apiKey
    in: header
    parameter_name: X-API-KEY
    api: OSHA Enforcement Data API (DOL data.dol.gov RESTful interface)
    base_url: https://data.dol.gov/get/
    source: https://usdepartmentoflabor.github.io/Developer/experienced/
    note: >-
      Key issuance is at https://devtools.dol.gov/developer, which the DOL developer portal
      itself flags as "New API Token Creation is Temporarily Disabled". A new integrator
      cannot obtain a credential for this surface today.
  - name: DOLDataApiKeyQuery
    type: apiKey
    in: query
    parameter_name: KEY
    api: DOL OData interface (api.dol.gov/V1)
    base_url: https://api.dol.gov/V1
    source: https://usdepartmentoflabor.github.io/Developer/experienced/
    note: >-
      Credential in the query string, so it lands in logs, proxies and browser history.
      Probed 2026-08-27: https://api.dol.gov/V1/DOLAgency/Agencies?KEY=test returns HTTP 403
      {"message":"Missing Authentication Token"} from AWS API Gateway.
gaps:
  - No OAuth 2.0, OpenID Connect or mTLS on any OSHA/DOL API surface.
  - No documented token expiry, refresh, scope or least-privilege model on the ITA bearer token.
  - No /.well-known/oauth-authorization-server or /.well-known/openid-configuration on any host (see well-known/osha-well-known.yml).

Work with this as data

Every security artifact here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/osha-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.