---
title: "List MSHA violations"
method: GET
path: "/v1/employers/{employer_id}/msha-violations"
tags: ["Employers"]
---

# List MSHA violations

`GET /v1/employers/{employer_id}/msha-violations`

Per-citation MSHA mine-safety enforcement records for an
employer.

Each row is one Mine Safety and Health Administration citation
carrying its violation_no, the mine it occurred at, the section of
the Mine Act cited, the agency's significant-and-substantial (S&S)
flag, the negligence classification, proposed vs paid penalty, and
whether the cited party was the mine operator or an on-site
contractor. Aggregate rollups already live on the employer profile
(`msha_violations`, `msha_assessed_penalties`); this endpoint backs
them with the underlying citation roster.

Lookup: MSHA records carry no zip5 (mines are keyed by mine_id +
county + state, not ZIP), so the join key is `(name_normalized,
state)` resolved through the employer's own profile row. Mirrors
the NLRB endpoint pattern.

Ordered: highest proposed_penalty first, then most-recent
violation_date -- the citations that matter most surface on page 1.

Metered: one lookup per call, same as the other detail endpoints.

## Path parameters

- `employer_id` string, required

## Query parameters

- `limit` integer
- `offset` integer

## Headers

- `X-Api-Key` string

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/fastdol/apis/fastdol-api.md) · [All operations](https://skmtc.net/fastdol/apis/fastdol-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fastdol/fastdol-api/revisions/f5a72ed18934/schema)
