OpenAPI Specification
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