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

# Get occupancy policies

> Get details about all occupancy policies in organization



## OpenAPI

````yaml https://api2.rhombussystems.com/api/openapi/public.json post /api/policy/getOccupancyPolicies
openapi: 3.0.1
info:
  contact:
    email: developer@rhombussystems.com
  description: >-
    This API is for use by Rhombus customers and partners.


    ## Authentication


    All requests require two headers:

    - `x-auth-scheme` — The authentication scheme identifier. Use `api-token`
    for standard API key auth, or `partner-api-token` for partner API auth.

    - `x-auth-apikey` — Your Rhombus API key.


    Example:

    ```

    POST /api/camera/getMinimalCameraStateList

    x-auth-scheme: api-token

    x-auth-apikey: YOUR_API_KEY

    Content-Type: application/json

    ```
  title: Rhombus API
  version: '1.0'
servers:
  - description: Production Server
    url: https://api2.rhombussystems.com
security:
  - ApiKeyAuth: []
paths:
  /api/policy/getOccupancyPolicies:
    post:
      tags:
        - Policy Webservice
      summary: Get occupancy policies
      description: Get details about all occupancy policies in organization
      operationId: getOccupancyPolicies
      parameters:
        - description: >-
            Authentication scheme identifier. Use `api-token` for standard API
            key authentication, `partner-api-token` for partner API key
            authentication. Must be paired with the `x-auth-apikey` header
            containing your API key.
          example: api-token
          in: header
          name: x-auth-scheme
          required: true
          schema:
            type: string
            default: api-token
            enum:
              - api-token
              - api
              - partner-api-token
              - partner-api
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Policy_GetOccupancyPoliciesWSRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Policy_GetOccupancyPoliciesWSResponse'
          description: OK
components:
  schemas:
    Policy_GetOccupancyPoliciesWSRequest:
      type: object
      description: Request object for getting all occupancy policies in the organization.
    Policy_GetOccupancyPoliciesWSResponse:
      type: object
      description: Response object containing all occupancy policies in the organization.
      properties:
        error:
          type: boolean
          nullable: true
        errorMsg:
          type: string
          nullable: true
        policies:
          type: array
          description: List of occupancy policies in the organization
          items:
            $ref: '#/components/schemas/OccupancyPolicyType'
          nullable: true
        warningMsg:
          type: string
          nullable: true
    OccupancyPolicyType:
      type: object
      description: List of occupancy policies using the schedule
      properties:
        description:
          type: string
          nullable: true
        name:
          type: string
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        scheduledTriggers:
          type: array
          items:
            $ref: '#/components/schemas/OccupancyScheduledTriggerType'
          nullable: true
        uuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
    OccupancyScheduledTriggerType:
      type: object
      properties:
        occupancyThresholdSec:
          type: integer
          format: int32
          nullable: true
        schedule:
          $ref: '#/components/schemas/WeeklyRepeatingScheduleType'
        triggerSet:
          type: array
          items:
            $ref: '#/components/schemas/ActivityEnum'
          nullable: true
          uniqueItems: true
        vacancyThresholdSec:
          type: integer
          format: int32
          nullable: true
    WeeklyRepeatingScheduleType:
      type: object
      allOf:
        - type: object
          properties:
            intervalList:
              type: array
              items:
                $ref: '#/components/schemas/WeeklyMinuteIntervalType'
              nullable: true
      nullable: true
      properties:
        internalWriteOnly:
          type: boolean
          nullable: true
        mutable:
          type: boolean
          nullable: true
        name:
          type: string
          nullable: true
        oneTimeUse:
          type: boolean
          nullable: true
        orgUuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
        strategy:
          $ref: '#/components/schemas/ScheduleStrategyEnum'
        uuid:
          type: string
          format: RUUID
          description: base 64 (url-safe) uuid string
          example: AAAAAAAAAAAAAAAAAAAAAA
          nullable: true
    ActivityEnum:
      type: string
      enum:
        - SOUND_LOUD
        - SOUND_GUN_SHOT
        - TAMPER
        - VISUAL_TAMPER
        - MOTION_TAMPER
        - MOTION
        - MOTION_HUMAN
        - MOTION_CAR
        - MOTION_ANIMAL
        - FACE
        - FACE_IDENTIFIED
        - FACE_UNIDENTIFIED
        - FACE_BLACKLISTED
        - FACE_ALERT
        - POSE_ANOMALOUS
        - POSE_FALL
        - LICENSEPLATE
        - LICENSEPLATE_IDENTIFIED
        - LICENSEPLATE_UNIDENTIFIED
        - LICENSEPLATE_ALERT
        - LICENSEPLATE_BLACKLISTED
        - LICENSEPLATE_TRUSTED
        - PEOPLECOUNT_HIGH
        - PEOPLECOUNT_HIGH_RESET
        - PEOPLECOUNT_LOW
        - PEOPLECOUNT_LOW_RESET
        - HUMAN_ENTER
        - HUMAN_EXIT
        - CAR_ENTER
        - CAR_EXIT
        - TEMPERATURE_EXCEEDED_HIGH
        - TEMPERATURE_EXCEEDED_LOW
        - HUMIDITY_EXCEEDED_HIGH
        - HUMIDITY_EXCEEDED_LOW
        - PM25_EXCEEDED_HIGH
        - TVOC_EXCEEDED_HIGH
        - ETOH_EXCEEDED_HIGH
        - IAQ_EXCEEDED_HIGH
        - CO2_EXCEEDED_HIGH
        - CO2_EXCEEDED_LOW
        - PROBE_TEMPERATURE_EXCEEDED_HIGH
        - PROBE_TEMPERATURE_EXCEEDED_LOW
        - PROBE_DISCONNECTED
        - PROBE_CONNECTED
        - HEAT_INDEX_EXCEEDED_HIGH
        - PRESSURE_EXCEEDED_HIGH
        - PRESSURE_EXCEEDED_LOW
        - PM10_EXCEEDED_HIGH
        - PM40_EXCEEDED_HIGH
        - PM100_EXCEEDED_HIGH
        - VOC_IDX_EXCEEDED_HIGH
        - NOX_IDX_EXCEEDED_HIGH
        - FORMALDEHYDE_EXCEEDED_HIGH
        - CARBON_MONOXIDE_EXCEEDED_HIGH
        - AQI_EXCEEDED_HIGH
        - DOOR_AJAR
        - DOOR_OPENED
        - DOOR_CLOSED
        - BUTTON_SINGLE_PRESSED
        - BUTTON_DOUBLE_PRESSED
        - BUTTON_LONG_PRESSED
        - TAG_ARRIVED
        - TAG_DEPARTED
        - TAG_MOVED
        - TAG_POSITIONING_CHANGED
        - TAG_BOUNDARY_INGRESS
        - TAG_BOUNDARY_EGRESS
        - TAG_PANIC
        - BADGE_AUTHORIZED
        - BADGE_UNAUTHORIZED
        - BADGE_UNAUTHORIZED_V2
        - BADGE_AJAR
        - BADGE_MANUAL
        - BADGE_FORCED_OPEN
        - BADGE_LOCKDOWN
        - BADGE_REQUEST_TO_EXIT
        - BADGE_DURESS
        - BADGE_SECURITY_BREACH
        - BADGE_TAMPER
        - BADGE_FACE_MISMATCH
        - POS_ORDER
        - GUN_DETECT_EVENT
        - IOT_SOUND_AGGRESSION
        - IOT_SOUND_HELP
        - IOT_AIR_CO
        - IOT_AIR_CO2
        - IOT_AIR_MASKING
        - IOT_AIR_THC
        - IOT_AIR_VAPE
        - IOT_AIR_VOC
        - IOT_AIR_TEMP
        - IOT_TAMPER
        - IOT_GUNSHOT
        - IOT_BUTTON_SINGLE_CLICK
        - IOT_BUTTON_DOUBLE_CLICK
        - IOT_BUTTON_HOLD
        - IOT_PANIC_BUTTON_TRIGGERED
        - AUDIO_SOUND_SIGNIFICANT
        - AUDIO_SOUND_LOUD
        - AUDIO_SOUND_ABUSIVE
        - AUDIO_SOUND_GREETING
        - AUDIO_SOUND_HELP
        - AUDIO_SOUND_GUN
        - AUDIO_SOUND_GLASS_BREAK
        - AUDIO_SOUND_ALARM_SMOKE_FIRE
        - AUDIO_SOUND_ALARM_CARBON_MONOXIDE
        - AUDIO_SOUND_SIREN
        - CLIMATE_VOC
        - CLIMATE_VAPE
        - CLIMATE_SMOKE
        - CLIMATE_THC
        - CLIMATE_CO2
        - CLIMATE_ETOH
        - CLIMATE_PM25
        - CLIMATE_IAQ
        - CLIMATE_LEAK
        - SOUND_AGGRESSION
        - SOUND_HELP
        - AIR_CO
        - AIR_CO2
        - AIR_MASKING
        - AIR_THC
        - AIR_VAPE
        - AIR_VOC
        - MASK_MISSING
        - HELMET_MISSING
        - GLOVES_MISSING
        - PIR_OCCUPIED
        - PIR_MOVEMENT
        - PIR_VACANT
        - CUSTOM
        - VISITOR_ARRIVED
        - VISITOR_DEPARTED
        - AC_DR_CONNECTED
        - AC_DR_DISCONNECTED
        - AC_DPI_DOOR_OPEN
        - AC_DPI_DOOR_CLOSED
        - AC_DPI_DOOR_AJAR
        - AC_DPI_DOOR_FORCED_OPEN
        - AC_DSR_UNLOCKED
        - AC_DSR_LOCKED
        - AC_DB_TRIGGERED
        - AC_PANIC_BUTTON_TRIGGERED
        - AC_REMOTE_UNLOCK
        - AC_BADGE_AUTHORIZED
        - AC_BADGE_UNAUTHORIZED
        - AC_BADGE_FACE_MISMATCH
        - AC_LOCKDOWN_ACTIVATED
        - AC_LOCKDOWN_DEACTIVATED
        - AC_TAMPER_PROX
        - AC_TAMPER_ACCEL
        - AC_TAMPER_SWITCH
        - AC_GR_ACTIVE
        - AC_GR_INACTIVE
        - AC_GI_ACTIVE
        - AC_GI_INACTIVE
        - AC_REX_ACTIVE
        - AC_REX_INACTIVE
        - AC_APERIO_DEVICE_DISCONNECTED
        - AC_APERIO_DEVICE_CONNECTED
        - AC_APERIO_DEVICE_REBOOT
        - AC_APERIO_DEVICE_TAMPER
        - AC_APERIO_LOW_BATTERY
        - AC_APERIO_FLAT_BATTERY
        - AC_APERIO_OK_BATTERY
        - POWER_SWITCH_BATTERY
        - POWER_SWITCH_PRIMARY
        - CUSTOM_LLM_BOOLEAN_TRUE
        - CUSTOM_LLM_BOOLEAN_FALSE
        - CUSTOM_LLM_THRESHOLD_EXCEEDED_LOW
        - CUSTOM_LLM_THRESHOLD_EXCEEDED_HIGH
        - ALM_AUTHORITIES_CONTACTED
        - ALM_MONITORING_ENABLED
        - ALM_MONITORING_DISABLED
        - ALM_MONITORING_SETTINGS_CHANGE
        - ALM_THREAT_CASE_CLOSED
        - ALM_THREAT_DETECTED
        - ALM_MONITORING_EVENT_DETECTED
        - ROBOT_DOG_DETECTED
        - ROBOT_ARRIVED_AT_WAYPOINT
        - ROBOT_ARRIVED_AT_POSE
        - ROBOT_WAITING_AT_POSE
        - ROBOT_MANUAL_CMD_VEL
        - ROBOT_MANUAL_ACTION
        - ROBOT_MANUAL_POSTURE
        - ROBOT_NAVIGATE_TO_POSE_START
        - ROBOT_NAVIGATE_TO_POSE_END
        - ROBOT_NAVIGATE_TO_HOME_START
        - ROBOT_NAVIGATE_TO_HOME_END
        - ROBOT_NAVIGATE_TO_WAYPOINT_START
        - ROBOT_NAVIGATE_TO_WAYPOINT_END
        - ROBOT_ROUTE_RUN_START
        - ROBOT_ROUTE_RUN_END
        - ROBOT_LOW_BATTERY_DOCKING
        - ROBOT_IDLE_DOCKING
        - ROBOT_EMERGENCY
        - LOITER_HUMAN
        - ONGUARD_BADGE_AUTHORIZED
        - ONGUARD_BADGE_ANOMALY
        - ONGUARD_NO_ENTRY_MADE
        - ELEMENTS_BADGE_AUTHORIZED
        - ELEMENTS_BADGE_ANOMALY
        - ELEMENTS_NO_ENTRY_MADE
        - NETBOX_BADGE_AUTHORIZED
        - NETBOX_BADGE_ANOMALY
        - NETBOX_NO_ENTRY_MADE
        - UNKNOWN
    WeeklyMinuteIntervalType:
      type: object
      properties:
        minuteOfWeekStart:
          type: integer
          format: int32
          nullable: true
        minuteOfWeekStop:
          type: integer
          format: int32
          nullable: true
    ScheduleStrategyEnum:
      type: string
      enum:
        - WEEKLY_REPEATING_MINUTES
        - ABSOLUTE_SECONDS
        - REALTIME_RELATIVE_SECONDS
        - RELATIVE_DATETIME_INTERVALS
  securitySchemes:
    ApiKeyAuth:
      description: >-
        Your Rhombus API key. Must be accompanied by the `x-auth-scheme` header
        set to `api-token` (or `partner-api-token` for partner endpoints).
      in: header
      name: x-auth-apikey
      type: apiKey

````