Openpath orgs/readers API

Readers

OpenAPI Specification

openpath-orgs-readers-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: Openpath API Documentation auth orgs/readers API
  version: 1.0.0
  description: Authentication and Login
host: api.openpath.com
schemes:
- https
consumes:
- application/json
produces:
- application/json
tags:
- name: orgs/readers
  description: Readers
paths:
  /orgs/{orgId}/readers:
    get:
      summary: List all owned or assigned readers
      operationId: listReaders
      description: 'Possible comma separated values for the options parameter include: withEffectiveLocationRestriction. The withEffectiveLocationRestriction option causes current effective location restriction to be included in the response. Only readers with an effective location restriction include this object.<br/><br/>__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-dash:w,o{params.orgId}-dash:r,o{params.orgId}-hw:w,o{params.orgId}-hw:r,o{params.orgId}-site:w,o{params.orgId}-site:r,o{params.orgId}-siteGeneral:w,o{params.orgId}-siteGeneral:r,o{params.orgId}-admin:w,o{params.orgId}-admin:r,o{params.orgId}-quickStart:w,o{params.orgId}-quickStart:r,o{params.orgId}-rpt:r,o{params.orgId}-rpt:w,o:w,o:r,s-o:w,s-o:r<br/><br/>__Endpoint name__: listReaders'
      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
        pattern: ^((withEffectiveLocationRestriction|excludeVideoReaders|onlyVideoReaders)(,|$))*$
        name: options
        in: query
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/readers
      security:
      - jwt: []
      responses:
        '200':
          schema:
            type: object
            properties:
              totalCount:
                type: integer
              filteredCount:
                type: integer
              data:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: number
                    name:
                      type: string
                    serialNumber:
                      type: string
                      x-nullable: true
                    serialNumberBrief:
                      type: string
                      x-nullable: true
                    firmwareVersion:
                      type: string
                      x-nullable: true
                    softwareVersionNumber:
                      type: string
                      x-nullable: true
                    isExit:
                      type: boolean
                    advTxPower:
                      type: number
                      enum:
                      - 4
                      - 3
                      - 0
                      - -4
                      - -8
                      - -12
                      - -16
                      - -20
                      - -40
                    beaconTxPower:
                      type: number
                      enum:
                      - 4
                      - 3
                      - 0
                      - -4
                      - -8
                      - -12
                      - -16
                      - -20
                      - -40
                    capTouchEnabled:
                      type: boolean
                    capTouchRssi:
                      type: integer
                      minimum: -95
                      maximum: -20
                    capTouchThreshold:
                      type: integer
                      x-nullable: true
                    nfcEnabled:
                      type: boolean
                    autoUnlockEnabled:
                      type: boolean
                    autoUnlockRssi:
                      type: integer
                      minimum: -95
                      maximum: -30
                    acuPort:
                      x-nullable: true
                      type: object
                      properties:
                        id:
                          type: number
                        acuPortTypePortNumber:
                          type: number
                        virtualPortNumber:
                          type: number
                          x-nullable: true
                        portNumber:
                          type: number
                          x-nullable: true
                        label:
                          type: string
                        acu:
                          type: object
                          properties:
                            id:
                              type: number
                            name:
                              type: string
                          required:
                          - id
                        expansionBoard:
                          type: object
                          properties:
                            id:
                              type: number
                            number:
                              type: integer
                            acuModelId:
                              type: integer
                          required:
                          - id
                        eol:
                          x-nullable: true
                          type: object
                          properties:
                            eolSupervision:
                              type: object
                              properties:
                                id:
                                  type: number
                                name:
                                  type: string
                              required:
                              - id
                      required:
                      - id
                    entries:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                        required:
                        - id
                    org:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                      required:
                      - id
                    ownedByOrg:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                      required:
                      - id
                    effectiveLocationRestriction:
                      type: object
                      properties:
                        id:
                          type: integer
                        locationMeasurement:
                          type: object
                          properties:
                            longitude:
                              type: number
                            latitude:
                              type: number
                            timeZoneId:
                              type: string
                              x-nullable: true
                        allowedDistanceMeters:
                          type: number
                        scaleFactor:
                          type: number
                      required:
                      - id
                    createdAt:
                      type: string
                      format: date
                    updatedAt:
                      type: string
                      format: date
                    notes:
                      type: string
                      x-nullable: true
                    isAudibleFeedbackEnabled:
                      type: boolean
                    isLedFeedbackEnabled:
                      type: boolean
                    pinTimeoutSeconds:
                      type: integer
                    isAppleWalletTraEnabled:
                      type: boolean
                  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}-dash:w
      - o{params.orgId}-dash:r
      - o{params.orgId}-hw:w
      - o{params.orgId}-hw:r
      - o{params.orgId}-site:w
      - o{params.orgId}-site:r
      - o{params.orgId}-siteGeneral:w
      - o{params.orgId}-siteGeneral:r
      - o{params.orgId}-admin:w
      - o{params.orgId}-admin:r
      - o{params.orgId}-quickStart:w
      - o{params.orgId}-quickStart:r
      - o{params.orgId}-rpt:r
      - o{params.orgId}-rpt:w
      - o:w
      - o:r
      - s-o:w
      - s-o:r
    post:
      summary: Create a reader
      operationId: createReader
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-hw:w,o{params.orgId}-admin:w,o{params.orgId}-quickStart:w,o:w,s-o:w<br/><br/>__Endpoint name__: createReader'
      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
            notes:
              type: string
              x-nullable: true
            serialNumber:
              type: string
              x-nullable: true
            softwareVersionNumber:
              type: string
              x-nullable: true
            acuPortId:
              type: integer
              x-nullable: true
            isExit:
              type: boolean
            advTxPower:
              type: integer
              enum:
              - 4
              - 3
              - 0
              - -4
              - -8
              - -12
              - -16
              - -20
              - -40
            beaconTxPower:
              type: integer
              enum:
              - 4
              - 3
              - 0
              - -4
              - -8
              - -12
              - -16
              - -20
              - -40
            capTouchEnabled:
              type: boolean
            capTouchRssi:
              type: integer
              minimum: -95
              maximum: -20
            capTouchThreshold:
              type: integer
              minimum: 100
              maximum: 15000
              x-nullable: true
            nfcEnabled:
              type: boolean
            autoUnlockEnabled:
              type: boolean
            autoUnlockRssi:
              type: integer
              minimum: -95
              maximum: -30
            isAudibleFeedbackEnabled:
              type: boolean
            isLedFeedbackEnabled:
              type: boolean
            pinTimeoutSeconds:
              type: integer
            isAppleWalletTraEnabled:
              type: boolean
          required:
          - name
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/readers
      security:
      - jwt: []
      responses:
        '201':
          schema:
            type: object
            properties:
              data:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  serialNumber:
                    type: string
                    x-nullable: true
                  serialNumberBrief:
                    type: string
                    x-nullable: true
                  firmwareVersion:
                    type: string
                    x-nullable: true
                  softwareVersionNumber:
                    type: string
                    x-nullable: true
                  isExit:
                    type: boolean
                  advTxPower:
                    type: number
                    enum:
                    - 4
                    - 3
                    - 0
                    - -4
                    - -8
                    - -12
                    - -16
                    - -20
                    - -40
                  beaconTxPower:
                    type: number
                    enum:
                    - 4
                    - 3
                    - 0
                    - -4
                    - -8
                    - -12
                    - -16
                    - -20
                    - -40
                  capTouchEnabled:
                    type: boolean
                  capTouchRssi:
                    type: integer
                    minimum: -95
                    maximum: -20
                  capTouchThreshold:
                    type: integer
                    x-nullable: true
                  nfcEnabled:
                    type: boolean
                  autoUnlockEnabled:
                    type: boolean
                  autoUnlockRssi:
                    type: integer
                    minimum: -95
                    maximum: -30
                  acuPort:
                    x-nullable: true
                    type: object
                    properties:
                      id:
                        type: number
                      acuPortTypePortNumber:
                        type: number
                      virtualPortNumber:
                        type: number
                        x-nullable: true
                      portNumber:
                        type: number
                        x-nullable: true
                      label:
                        type: string
                      acu:
                        type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                        required:
                        - id
                      expansionBoard:
                        type: object
                        properties:
                          id:
                            type: number
                          number:
                            type: integer
                          acuModelId:
                            type: integer
                        required:
                        - id
                      eol:
                        x-nullable: true
                        type: object
                        properties:
                          eolSupervision:
                            type: object
                            properties:
                              id:
                                type: number
                              name:
                                type: string
                            required:
                            - id
                    required:
                    - id
                  entries:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                      required:
                      - id
                  org:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        type: string
                    required:
                    - id
                  ownedByOrg:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        type: string
                    required:
                    - id
                  effectiveLocationRestriction:
                    type: object
                    properties:
                      id:
                        type: integer
                      locationMeasurement:
                        type: object
                        properties:
                          longitude:
                            type: number
                          latitude:
                            type: number
                          timeZoneId:
                            type: string
                            x-nullable: true
                      allowedDistanceMeters:
                        type: number
                      scaleFactor:
                        type: number
                    required:
                    - id
                  createdAt:
                    type: string
                    format: date
                  updatedAt:
                    type: string
                    format: date
                  notes:
                    type: string
                    x-nullable: true
                  isAudibleFeedbackEnabled:
                    type: boolean
                  isLedFeedbackEnabled:
                    type: boolean
                  pinTimeoutSeconds:
                    type: integer
                  isAppleWalletTraEnabled:
                    type: boolean
                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}-hw:w
      - o{params.orgId}-admin:w
      - o{params.orgId}-quickStart:w
      - o:w
      - s-o:w
  /orgs/{orgId}/readers/{readerId}:
    get:
      summary: Describe an owned or assigned reader
      operationId: describeReader
      description: 'Possible comma separated values for the options parameter include: withEffectiveLocationRestriction. The withEffectiveLocationRestriction option causes current effective location restriction to be included in the response. Only readers with an effective location restriction include this object.<br/><br/>__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-dashActivity:w,o{params.orgId}-dashActivity:r,o{params.orgId}-dashCust:w,o{params.orgId}-dashCust:r,o{params.orgId}-hw:w,o{params.orgId}-hw:r,o{params.orgId}-dash:w,o{params.orgId}-dash:r,o{params.orgId}-site:w,o{params.orgId}-site:r,o{params.orgId}-siteGeneral:w,o{params.orgId}-siteGeneral:r,o:w,o:r,s-o:w,s-o:r<br/><br/>__Endpoint name__: describeReader'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: readerId
        in: path
        required: true
      - type: string
        pattern: ^((withEffectiveLocationRestriction)(,|$))*$
        name: options
        in: query
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/readers
      security:
      - jwt: []
      responses:
        '200':
          schema:
            type: object
            properties:
              data:
                type: object
                properties:
                  id:
                    type: number
                  name:
                    type: string
                  serialNumber:
                    type: string
                    x-nullable: true
                  serialNumberBrief:
                    type: string
                    x-nullable: true
                  firmwareVersion:
                    type: string
                    x-nullable: true
                  softwareVersionNumber:
                    type: string
                    x-nullable: true
                  isExit:
                    type: boolean
                  advTxPower:
                    type: number
                    enum:
                    - 4
                    - 3
                    - 0
                    - -4
                    - -8
                    - -12
                    - -16
                    - -20
                    - -40
                  beaconTxPower:
                    type: number
                    enum:
                    - 4
                    - 3
                    - 0
                    - -4
                    - -8
                    - -12
                    - -16
                    - -20
                    - -40
                  capTouchEnabled:
                    type: boolean
                  capTouchRssi:
                    type: integer
                    minimum: -95
                    maximum: -20
                  capTouchThreshold:
                    type: integer
                    x-nullable: true
                  nfcEnabled:
                    type: boolean
                  autoUnlockEnabled:
                    type: boolean
                  autoUnlockRssi:
                    type: integer
                    minimum: -95
                    maximum: -30
                  acuPort:
                    x-nullable: true
                    type: object
                    properties:
                      id:
                        type: number
                      acuPortTypePortNumber:
                        type: number
                      virtualPortNumber:
                        type: number
                        x-nullable: true
                      portNumber:
                        type: number
                        x-nullable: true
                      label:
                        type: string
                      acu:
                        type: object
                        properties:
                          id:
                            type: number
                          name:
                            type: string
                        required:
                        - id
                      expansionBoard:
                        type: object
                        properties:
                          id:
                            type: number
                          number:
                            type: integer
                          acuModelId:
                            type: integer
                        required:
                        - id
                      eol:
                        x-nullable: true
                        type: object
                        properties:
                          eolSupervision:
                            type: object
                            properties:
                              id:
                                type: number
                              name:
                                type: string
                            required:
                            - id
                    required:
                    - id
                  entries:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        name:
                          type: string
                      required:
                      - id
                  org:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        type: string
                    required:
                    - id
                  ownedByOrg:
                    type: object
                    properties:
                      id:
                        type: number
                      name:
                        type: string
                    required:
                    - id
                  effectiveLocationRestriction:
                    type: object
                    properties:
                      id:
                        type: integer
                      locationMeasurement:
                        type: object
                        properties:
                          longitude:
                            type: number
                          latitude:
                            type: number
                          timeZoneId:
                            type: string
                            x-nullable: true
                      allowedDistanceMeters:
                        type: number
                      scaleFactor:
                        type: number
                    required:
                    - id
                  createdAt:
                    type: string
                    format: date
                  updatedAt:
                    type: string
                    format: date
                  notes:
                    type: string
                    x-nullable: true
                  isAudibleFeedbackEnabled:
                    type: boolean
                  isLedFeedbackEnabled:
                    type: boolean
                  pinTimeoutSeconds:
                    type: integer
                  isAppleWalletTraEnabled:
                    type: boolean
                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}-dashActivity:w
      - o{params.orgId}-dashActivity:r
      - o{params.orgId}-dashCust:w
      - o{params.orgId}-dashCust:r
      - o{params.orgId}-hw:w
      - o{params.orgId}-hw:r
      - o{params.orgId}-dash:w
      - o{params.orgId}-dash:r
      - o{params.orgId}-site:w
      - o{params.orgId}-site:r
      - o{params.orgId}-siteGeneral:w
      - o{params.orgId}-siteGeneral:r
      - o:w
      - o:r
      - s-o:w
      - s-o:r
    delete:
      summary: Delete a reader
      operationId: deleteReader
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-hw:w,o:w,s-o:w<br/><br/>__Endpoint name__: deleteReader'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: readerId
        in: path
        required: true
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/readers
      security:
      - jwt: []
      responses:
        '204':
          description: No Content
      x-op-scopes:
      - o{params.orgId}-hw:w
      - o:w
      - s-o:w
    patch:
      summary: Update a reader
      operationId: updateReader
      description: '__JWT is required for this endpoint with at least one of the following scopes__: o{params.orgId}-hw:w,o{params.orgId}-site:w,o{params.orgId}-siteGeneral:w,o{params.orgId}-admin:w,o{params.orgId}-quickStart:w,o:w,o-support:w,s-o:w<br/><br/>__Endpoint name__: updateReader'
      parameters:
      - type: integer
        name: orgId
        in: path
        required: true
      - type: integer
        name: readerId
        in: path
        required: true
      - in: body
        name: body
        schema:
          type: object
          properties:
            name:
              type: string
              minLength: 1
              maxLength: 100
              x-convert:
                trim: true
            notes:
              type: string
              x-nullable: true
            serialNumber:
              type: string
              x-nullable: true
            softwareVersionNumber:
              type: string
              x-nullable: true
            acuPortId:
              type: integer
              x-nullable: true
            isExit:
              type: boolean
            advTxPower:
              type: integer
              enum:
              - 4
              - 3
              - 0
              - -4
              - -8
              - -12
              - -16
              - -20
              - -40
            beaconTxPower:
              type: integer
              enum:
              - 4
              - 3
              - 0
              - -4
              - -8
              - -12
              - -16
              - -20
              - -40
            capTouchEnabled:
              type: boolean
            capTouchRssi:
              type: integer
              minimum: -95
              maximum: -20
            capTouchThreshold:
              type: integer
              minimum: 100
              maximum: 15000
              x-nullable: true
            nfcEnabled:
              type: boolean
            autoUnlockEnabled:
              type: boolean
            autoUnlockRssi:
              type: integer
              minimum: -95
              maximum: -30
            isAudibleFeedbackEnabled:
              type: boolean
            isLedFeedbackEnabled:
              type: boolean
            pinTimeoutSeconds:
              type: integer
            isAppleWalletTraEnabled:
              type: boolean
      consumes:
      - application/json
      produces:
      - application/json
      tags:
      - orgs/readers

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