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

# Get an OSHA inspection

> OSHA enforcement inspections, from the Department of Labor’s enforcement data. OSHA’s rows as published, under OSHA’s own column names in camelCase. Each row also carries the employerId and siteId Effective matched it to (null if unmatched) and the OSHA file it came from. Needs the OSHA dataset enabled for your organization. Read-only; private, no-store. 



## OpenAPI

````yaml /openapi.json get /insurance/osha/inspections/{activityNr}
openapi: 3.0.3
info:
  title: Effective API
  version: 2.0.0
  description: The public Effective REST API. Authenticate using an Effective API key.
servers:
  - url: https://api.canary.effectiveai.app/api/v2
    description: Canary
security:
  - bearerAuth: []
paths:
  /insurance/osha/inspections/{activityNr}:
    get:
      tags:
        - OSHA
      summary: Get an OSHA inspection
      description: >-
        OSHA enforcement inspections, from the Department of Labor’s enforcement
        data. OSHA’s rows as published, under OSHA’s own column names in
        camelCase. Each row also carries the employerId and siteId Effective
        matched it to (null if unmatched) and the OSHA file it came from. Needs
        the OSHA dataset enabled for your organization. Read-only; private,
        no-store. 
      operationId: getOshaInspection
      parameters:
        - schema:
            type: string
            pattern: ^\d{1,12}$
            description: Inspection activity number.
          required: true
          description: Inspection activity number.
          name: activityNr
          in: path
      responses:
        '200':
          description: One inspection.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2OshaInspection'
        '400':
          description: >-
            invalid_request for invalid, unknown or repeated inputs;
            invalid_cursor means restart the list.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '401':
          description: Authentication required.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '403':
          description: >-
            dataset_not_enabled: the OSHA dataset is not enabled for this
            organization. Other credential restrictions use forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '404':
          description: 'not_found: no such employer, site or OSHA row.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '500':
          description: Unexpected server failure.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
        '503':
          description: A dependency is unavailable; respect Retry-After.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V2CodedError'
      security:
        - bearerAuth: []
components:
  schemas:
    V2OshaInspection:
      type: object
      properties:
        activityNr:
          type: string
          nullable: true
        reportingId:
          type: string
          nullable: true
        stateFlag:
          type: string
          nullable: true
        estabName:
          type: string
          nullable: true
        siteAddress:
          type: string
          nullable: true
        siteCity:
          type: string
          nullable: true
        siteState:
          type: string
          nullable: true
        siteZip:
          type: string
          nullable: true
        ownerType:
          type: string
          nullable: true
        ownerCode:
          type: string
          nullable: true
        advNotice:
          type: string
          nullable: true
        safetyHlth:
          type: string
          nullable: true
        sicCode:
          type: string
          nullable: true
        naicsCode:
          type: string
          nullable: true
        inspType:
          type: string
          nullable: true
        inspScope:
          type: string
          nullable: true
        whyNoInsp:
          type: string
          nullable: true
        unionStatus:
          type: string
          nullable: true
        safetyManuf:
          type: string
          nullable: true
        safetyConst:
          type: string
          nullable: true
        safetyMarit:
          type: string
          nullable: true
        healthManuf:
          type: string
          nullable: true
        healthConst:
          type: string
          nullable: true
        healthMarit:
          type: string
          nullable: true
        migrant:
          type: string
          nullable: true
        mailStreet:
          type: string
          nullable: true
        mailCity:
          type: string
          nullable: true
        mailState:
          type: string
          nullable: true
        mailZip:
          type: string
          nullable: true
        hostEstKey:
          type: string
          nullable: true
        nrInEstab:
          type: number
          nullable: true
        openDate:
          type: string
          nullable: true
        caseModDate:
          type: string
          nullable: true
        closeConfDate:
          type: string
          nullable: true
        closeCaseDate:
          type: string
          nullable: true
        ldDt:
          type: string
          nullable: true
        id:
          type: string
          description: The inspection’s activity number.
        employerId:
          type: string
          nullable: true
          pattern: ^emp_[0-9a-f]{20}$
          description: >-
            Employer Effective matched this row to, or null if it could not
            place it.
        siteId:
          type: string
          nullable: true
          pattern: ^site_[0-9a-f]{20}$
          description: Site Effective matched this row to, or null.
        sourceFile:
          $ref: '#/components/schemas/V2OshaSourceFile'
      required:
        - activityNr
        - reportingId
        - stateFlag
        - estabName
        - siteAddress
        - siteCity
        - siteState
        - siteZip
        - ownerType
        - ownerCode
        - advNotice
        - safetyHlth
        - sicCode
        - naicsCode
        - inspType
        - inspScope
        - whyNoInsp
        - unionStatus
        - safetyManuf
        - safetyConst
        - safetyMarit
        - healthManuf
        - healthConst
        - healthMarit
        - migrant
        - mailStreet
        - mailCity
        - mailState
        - mailZip
        - hostEstKey
        - nrInEstab
        - openDate
        - caseModDate
        - closeConfDate
        - closeCaseDate
        - ldDt
        - id
        - employerId
        - siteId
        - sourceFile
      description: >-
        One OSHA enforcement inspection. Fields are OSHA’s own column names in
        camelCase, with values as OSHA publishes them.
    V2CodedError:
      allOf:
        - $ref: '#/components/schemas/V2Error'
        - type: object
          properties:
            code:
              type: string
              minLength: 1
              description: Stable error code. Clients must tolerate unknown future codes.
            details:
              type: array
              items:
                type: object
                properties:
                  location:
                    type: string
                    enum:
                      - path
                      - query
                      - header
                      - body
                  path:
                    type: array
                    items:
                      type: string
                      maxLength: 64
                    maxItems: 12
                  code:
                    type: string
                    enum:
                      - required
                      - invalid_type
                      - invalid_value
                      - unknown_field
                  message:
                    type: string
                    minLength: 1
                    maxLength: 200
                required:
                  - location
                  - path
                  - code
                  - message
              minItems: 1
              maxItems: 20
              description: Bounded safe validation issues; may omit some invalid fields.
            requestId:
              type: string
              minLength: 1
              maxLength: 128
              description: >-
                Existing server correlation for this HTTP attempt, when
                available.
            dataset:
              type: string
              enum:
                - naic
                - osha
              description: Dataset needed for dataset_not_enabled.
            accessUrl:
              type: string
              nullable: true
              format: uri
              description: >-
                Where to add the product to your account, for
                product_access_required.
          required:
            - code
    V2OshaSourceFile:
      type: object
      properties:
        url:
          type: string
          description: OSHA or DOL file or API page the row was read from.
        sha256:
          type: string
          description: SHA-256 of that file as Effective downloaded it.
        retrievedAt:
          type: string
          description: When Effective downloaded it (RFC 3339).
      required:
        - url
        - sha256
        - retrievedAt
    V2Error:
      type: object
      properties:
        error:
          type: string
          minLength: 1
          description: Human-readable explanation of the failure.
      required:
        - error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'Effective API key. Send Authorization: Bearer sk-eai-...'

````

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