Openpath orgs/sites API

Sites

OpenAPI Specification

openpath-orgs-sites-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: Openpath API Documentation auth orgs/sites API
  version: 1.0.0
  description: Authentication and Login
host: api.openpath.com
schemes:
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: orgs/sites
  description: Sites
paths:
  /orgs/{orgId}/sites:
    get:
      summary: List all sites
      operationId: listSites
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-role:w,o{params.orgId}-role:r,o{params.orgId}-admin:w,o{params.orgId}-admin:r,o{params.orgId}-hw:w,o{params.orgId}-hw:r,o{params.orgId}-rpt:w,o{params.orgId}-rpt:r,o{params.orgId}-dash:w,o{params.orgId}-dash:r,o{params.orgId}-dashActivity:w,o{params.orgId}-dashActivity:r,o{params.orgId}-dashCust:w,o{params.orgId}-dashCust:r,o{params.orgId}-user:w,o{params.orgId}-user:r,o{params.orgId}-site:w,o{params.orgId}-site:r,o{params.orgId}-siteGeneral:w,o{params.orgId}-siteGeneral:r,o{params.orgId}-musterReport:r,o{params.orgId}-musterReport:w,o{params.orgId}-occupancyReport:r,o{params.orgId}-occupancyReport:w,o{params.orgId}-parcelMgmtParcels:r,o{params.orgId}-parcelMgmtParcels:w,o:w,o:r,s-o:w,s-o:r,o{params.orgId}-sos:w,o{params.orgId}-videoAdmin:w<br/><br/>__Endpoint name__: listSites'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        minimum: 1
        maximum: 1000
        name: limit
        in: query
      - type: integer
        default: 0
        minimum: 0
        name: offset
        in: query
      - type: string
        default: name
        pattern: ^[a-zA-Z0-9.]+(,\s*[a-zA-Z0-9.]+)*$
        name: sort
        in: query
      - type: string
        default: asc
        pattern: ^(asc|desc)+(,\s*(asc|desc)+)*$
        name: order
        in: query
      - type: string
        name: q
        in: query
      - type: string
        name: filter
        in: query
      - type: string
        name: preFilter
        in: query
      - type: string
        default: ''
        name: options
        in: query
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '200':
          schema:
            type: object
            properties:
              totalCount:
                type: integer
              filteredCount:
                type: integer
              data:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: number
                    opal:
                      type: string
                    name:
                      type: string
                    address:
                      type: string
                      x-nullable: true
                    address2:
                      type: string
                      x-nullable: true
                    city:
                      type: string
                      x-nullable: true
                    state:
                      type: string
                      x-nullable: true
                    zip:
                      type: string
                      x-nullable: true
                    country:
                      type: string
                      x-nullable: true
                    phone:
                      type: string
                      x-nullable: true
                    createdAt:
                      type: string
                      format: date
                    updatedAt:
                      type: string
                      format: date
                    zoneCount:
                      type: integer
                    language:
                      type: string
                      x-nullable: true
                    userCount:
                      type: integer
                    contactName:
                      type: string
                      x-nullable: true
                    contactPhone:
                      type: string
                      x-nullable: true
                    boundary:
                      type: string
                      x-nullable: true
                    resources:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                          contentType:
                            type: string
                          fileName:
                            type: string
                          s3Data:
                            type: string
                          s3Key:
                            type: string
                          s3Bucket:
                            type: string
                          url:
                            type: string
                            x-nullable: true
                          createdAt:
                            type: string
                            format: date-time
                          updatedAt:
                            type: string
                            format: date-time
                        required:
                        - id
                        - name
                        - contentType
                        - fileName
                        - s3Data
                        - s3Key
                        - s3Bucket
                        - createdAt
                        - updatedAt
                    sosFacilityCampus:
                      x-nullable: true
                      type: object
                      properties:
                        siteId:
                          type: number
                        sosFacilityCampusIdExt:
                          type: string
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                      required:
                      - siteId
                      - sosFacilityCampusIdExt
                      - createdAt
                      - updatedAt
                    realUserGroups:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                        required:
                        - id
                  required:
                  - id
              meta:
                type: object
                properties:
                  accessToken:
                    x-nullable: true
                    type: object
                    properties:
                      scopeUpdatedAt:
                        type: string
                        format: date
                  siteSpecificAccess:
                    x-nullable: true
                    type: object
                    properties:
                      isSiteSpecific:
                        type: boolean
                      siteIds:
                        x-nullable: true
                        type: array
                        items:
                          type: integer
                      siteIdsByScope:
                        type: object
                        properties:
                          string:
                            x-nullable: true
                            type: array
                            items:
                              type: integer
                        x-nullable: true
          description: Successful
      x-op-scopes:
      - o{params.orgId}-role:w
      - o{params.orgId}-role:r
      - o{params.orgId}-admin:w
      - o{params.orgId}-admin:r
      - o{params.orgId}-hw:w
      - o{params.orgId}-hw:r
      - o{params.orgId}-rpt:w
      - o{params.orgId}-rpt:r
      - o{params.orgId}-dash:w
      - o{params.orgId}-dash:r
      - o{params.orgId}-dashActivity:w
      - o{params.orgId}-dashActivity:r
      - o{params.orgId}-dashCust:w
      - o{params.orgId}-dashCust:r
      - o{params.orgId}-user:w
      - o{params.orgId}-user:r
      - o{params.orgId}-site:w
      - o{params.orgId}-site:r
      - o{params.orgId}-siteGeneral:w
      - o{params.orgId}-siteGeneral:r
      - o{params.orgId}-musterReport:r
      - o{params.orgId}-musterReport:w
      - o{params.orgId}-occupancyReport:r
      - o{params.orgId}-occupancyReport:w
      - o{params.orgId}-parcelMgmtParcels:r
      - o{params.orgId}-parcelMgmtParcels:w
      - o:w
      - o:r
      - s-o:w
      - s-o:r
      - o{params.orgId}-sos:w
      - o{params.orgId}-videoAdmin:w
    post:
      summary: Create a site
      operationId: createSite
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-user:w,o{params.orgId}-site:w,o{params.orgId}-siteGeneral:w,o{params.orgId}-admin:w,o{params.orgId}-quickStart:w,o{params.orgId}-sos:w,o:w,s-o:w<br/><br/>__Endpoint name__: createSite'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - in: body
        name: body
        schema:
          type: object
          properties:
            name:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
            address:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            address2:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            city:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            zip:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            phone:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            language:
              x-nullable: true
              type: string
              enum:
              - en
              - fr
              - es
              - it
              - de
            country:
              type: string
              x-convert:
                trim: true
              x-nullable: true
            state:
              type: string
              x-convert:
                trim: true
              x-nullable: true
            contactName:
              type: string
              maxLength: 100
              x-nullable: true
            contactPhone:
              type: string
              maxLength: 20
              x-nullable: true
            boundary:
              type: string
              x-nullable: true
            resources:
              type: array
              items:
                type: object
                properties:
                  fileName:
                    type: string
                  fileBase64:
                    type: string
                required:
                - fileName
                - fileBase64
          required:
          - name
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '201':
          schema:
            type: object
            properties:
              data:
                type: object
                properties:
                  id:
                    type: number
                  opal:
                    type: string
                  name:
                    type: string
                  address:
                    type: string
                    x-nullable: true
                  address2:
                    type: string
                    x-nullable: true
                  city:
                    type: string
                    x-nullable: true
                  state:
                    type: string
                    x-nullable: true
                  zip:
                    type: string
                    x-nullable: true
                  country:
                    type: string
                    x-nullable: true
                  phone:
                    type: string
                    x-nullable: true
                  createdAt:
                    type: string
                    format: date
                  updatedAt:
                    type: string
                    format: date
                  zoneCount:
                    type: integer
                  language:
                    type: string
                    x-nullable: true
                  userCount:
                    type: integer
                  contactName:
                    type: string
                    x-nullable: true
                  contactPhone:
                    type: string
                    x-nullable: true
                  boundary:
                    type: string
                    x-nullable: true
                  resources:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                        contentType:
                          type: string
                        fileName:
                          type: string
                        s3Data:
                          type: string
                        s3Key:
                          type: string
                        s3Bucket:
                          type: string
                        url:
                          type: string
                          x-nullable: true
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                      required:
                      - id
                      - name
                      - contentType
                      - fileName
                      - s3Data
                      - s3Key
                      - s3Bucket
                      - createdAt
                      - updatedAt
                  sosFacilityCampus:
                    x-nullable: true
                    type: object
                    properties:
                      siteId:
                        type: number
                      sosFacilityCampusIdExt:
                        type: string
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                    required:
                    - siteId
                    - sosFacilityCampusIdExt
                    - createdAt
                    - updatedAt
                  realUserGroups:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                      required:
                      - id
                required:
                - id
              meta:
                type: object
                properties:
                  accessToken:
                    x-nullable: true
                    type: object
                    properties:
                      scopeUpdatedAt:
                        type: string
                        format: date
                  siteSpecificAccess:
                    x-nullable: true
                    type: object
                    properties:
                      isSiteSpecific:
                        type: boolean
                      siteIds:
                        x-nullable: true
                        type: array
                        items:
                          type: integer
                      siteIdsByScope:
                        type: object
                        properties:
                          string:
                            x-nullable: true
                            type: array
                            items:
                              type: integer
                        x-nullable: true
          description: Created
      x-op-scopes:
      - o{params.orgId}-user:w
      - o{params.orgId}-site:w
      - o{params.orgId}-siteGeneral:w
      - o{params.orgId}-admin:w
      - o{params.orgId}-quickStart:w
      - o{params.orgId}-sos:w
      - o:w
      - s-o:w
  /orgs/{orgId}/sites/{siteId}:
    get:
      summary: Describe a site
      operationId: describeSite
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-user:w,o{params.orgId}-user:r,o{params.orgId}-site:w,o{params.orgId}-site:r,o{params.orgId}-siteGeneral:w,o{params.orgId}-siteGeneral:r,o{params.orgId}-parcelMgmtParcels:r,o{params.orgId}-parcelMgmtParcels:w,o{params.orgId}-sos:w,o:w,o:r,s-o:w,s-o:r<br/><br/>__Endpoint name__: describeSite'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: siteId
        in: path
        required: true
      - type: string
        default: ''
        name: options
        in: query
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '200':
          schema:
            type: object
            properties:
              data:
                type: object
                properties:
                  id:
                    type: number
                  opal:
                    type: string
                  name:
                    type: string
                  address:
                    type: string
                    x-nullable: true
                  address2:
                    type: string
                    x-nullable: true
                  city:
                    type: string
                    x-nullable: true
                  state:
                    type: string
                    x-nullable: true
                  zip:
                    type: string
                    x-nullable: true
                  country:
                    type: string
                    x-nullable: true
                  phone:
                    type: string
                    x-nullable: true
                  createdAt:
                    type: string
                    format: date
                  updatedAt:
                    type: string
                    format: date
                  zoneCount:
                    type: integer
                  language:
                    type: string
                    x-nullable: true
                  userCount:
                    type: integer
                  contactName:
                    type: string
                    x-nullable: true
                  contactPhone:
                    type: string
                    x-nullable: true
                  boundary:
                    type: string
                    x-nullable: true
                  resources:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                        contentType:
                          type: string
                        fileName:
                          type: string
                        s3Data:
                          type: string
                        s3Key:
                          type: string
                        s3Bucket:
                          type: string
                        url:
                          type: string
                          x-nullable: true
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                      required:
                      - id
                      - name
                      - contentType
                      - fileName
                      - s3Data
                      - s3Key
                      - s3Bucket
                      - createdAt
                      - updatedAt
                  sosFacilityCampus:
                    x-nullable: true
                    type: object
                    properties:
                      siteId:
                        type: number
                      sosFacilityCampusIdExt:
                        type: string
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                    required:
                    - siteId
                    - sosFacilityCampusIdExt
                    - createdAt
                    - updatedAt
                  realUserGroups:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                      required:
                      - id
                required:
                - id
              meta:
                type: object
                properties:
                  accessToken:
                    x-nullable: true
                    type: object
                    properties:
                      scopeUpdatedAt:
                        type: string
                        format: date
                  siteSpecificAccess:
                    x-nullable: true
                    type: object
                    properties:
                      isSiteSpecific:
                        type: boolean
                      siteIds:
                        x-nullable: true
                        type: array
                        items:
                          type: integer
                      siteIdsByScope:
                        type: object
                        properties:
                          string:
                            x-nullable: true
                            type: array
                            items:
                              type: integer
                        x-nullable: true
          description: Successful
      x-op-scopes:
      - o{params.orgId}-user:w
      - o{params.orgId}-user:r
      - o{params.orgId}-site:w
      - o{params.orgId}-site:r
      - o{params.orgId}-siteGeneral:w
      - o{params.orgId}-siteGeneral:r
      - o{params.orgId}-parcelMgmtParcels:r
      - o{params.orgId}-parcelMgmtParcels:w
      - o{params.orgId}-sos:w
      - o:w
      - o:r
      - s-o:w
      - s-o:r
    delete:
      summary: Delete a site
      operationId: deleteSite
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-user:w,o{params.orgId}-site:w,o{params.orgId}-admin:w,o{params.orgId}-quickStart:w,o{params.orgId}-siteGeneral:w,o:w,s-o:w,o{params.orgId}-sos:w<br/><br/>__Endpoint name__: deleteSite'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: siteId
        in: path
        required: true
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '204':
          description: No Content
      x-op-scopes:
      - o{params.orgId}-user:w
      - o{params.orgId}-site:w
      - o{params.orgId}-admin:w
      - o{params.orgId}-quickStart:w
      - o{params.orgId}-siteGeneral:w
      - o:w
      - s-o:w
      - o{params.orgId}-sos:w
    patch:
      summary: Update a site
      operationId: updateSite
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-user:w,o{params.orgId}-site:w,o{params.orgId}-siteGeneral:w,o{params.orgId}-sos:w,o:w,s-o:w<br/><br/>__Endpoint name__: updateSite'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: siteId
        in: path
        required: true
      - in: body
        name: body
        schema:
          type: object
          properties:
            name:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
            address:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            address2:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            city:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            zip:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            phone:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
              x-nullable: true
            language:
              x-nullable: true
              type: string
              enum:
              - en
              - fr
              - es
              - it
              - de
            country:
              type: string
              x-convert:
                trim: true
              x-nullable: true
            state:
              type: string
              x-convert:
                trim: true
              x-nullable: true
            contactName:
              type: string
              x-nullable: true
            contactPhone:
              type: string
              x-nullable: true
            boundary:
              type: string
              x-nullable: true
            resources:
              type: array
              items:
                type: object
                properties:
                  fileName:
                    type: string
                  fileBase64:
                    type: string
                required:
                - fileName
                - fileBase64
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '204':
          description: No Content
      x-op-scopes:
      - o{params.orgId}-user:w
      - o{params.orgId}-site:w
      - o{params.orgId}-siteGeneral:w
      - o{params.orgId}-sos:w
      - o:w
      - s-o:w
  /orgs/{orgId}/sites/{siteId}/locationRestriction:
    get:
      summary: Get location restriction for a site
      operationId: getSiteLocationRestriction
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-site:w,o{params.orgId}-site:r,o:w,o:r,s-o:w,s-o:r<br/><br/>__Endpoint name__: getSiteLocationRestriction'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: siteId
        in: path
        required: true
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '200':
          schema:
            type: object
            properties:
              data:
                x-nullable: true
                type: object
                properties:
                  id:
                    type: number
                  allowedDistanceMeters:
                    type: number
                  scaleFactor:
                    type: number
                  locationMeasurement:
                    type: object
                    properties:
                      id:
                        type: number
                      longitude:
                        type: number
                      latitude:
                        type: number
                      accuracyMeters:
                        type: number
                        x-nullable: true
                      timeZoneId:
                        type: string
                        x-nullable: true
                      locationMeasurementSourceType:
                        type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                          code:
                            type: string
                        required:
                        - id
                      rawData:
                        type: object
                    required:
                    - id
              meta:
                type: object
                properties:
                  accessToken:
                    x-nullable: true
                    type: object
                    properties:
                      scopeUpdatedAt:
                        type: string
                        format: date
                  siteSpecificAccess:
                    x-nullable: true
                    type: object
                    properties:
                      isSiteSpecific:
                        type: boolean
                      siteIds:
                        x-nullable: true
                        type: array
                        items:
                          type: integer
                      siteIdsByScope:
                        type: object
                        properties:
                          string:
                            x-nullable: true
                            type: array
                            items:
                              type: integer
                        x-nullable: true
          description: Successful
      x-op-scopes:
      - o{params.orgId}-site:w
      - o{params.orgId}-site:r
      - o:w
      - o:r
      - s-o:w
      - s-o:r
    delete:
      summary: Delete location restriction for a site
      operationId: deleteSiteLocationRestriction
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-site:w,o:w,s-o:w<br/><br/>__Endpoint name__: deleteSiteLocationRestriction'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: siteId
        in: path
        required: true
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/sites
      security:
      - jwt: []
      responses:
        '204':
          description: No Content
      x-op-scopes:
      - o{params.orgId}-site:w
      - o:w
      - s-o:w
    put:
      summary: Set location restriction for a site
      operationId: setSiteLocationRestriction
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-site:w,o:w,s-o:w<br/><br/>__Endpoint name__: setSiteLocationRestriction'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: siteId
        in: path
        required: true
      - in: body
        name: body
        schema:
          type: object
          properties:
           

# --- truncated at 32 KB (96 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openpath/refs/heads/main/openapi/openpath-orgs-sites-api-openapi.yml