openapi: 3.2.0 info: title: 7SIGNAL Clients API description: This is the 7SIGNAL public API for interacting with the 7SIGNAL Platform version: 2.21.1 contact: email: info@7signal.com license: name: All Rights Reserved url: https://www.7signal.com/contact servers: - url: https://api-v2.7signal.com description: 7SIGNAL API Gateway (production) tags: - name: Clients paths: /clients/sensors: get: summary: List the Sensor Clients operationId: sensor-clients description: Page through all of the Sensor Clients security: - oauth2: - read parameters: - $ref: '#/components/parameters/clients.ToRequestParam' - $ref: '#/components/parameters/clients.FromRequestParam' - $ref: '#/components/parameters/clients.MacRequestParam' - $ref: '#/components/parameters/clients.VendorRequestParam' responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/clients.GetSensorClientsResponse' '400': $ref: '#/components/responses/common.400BadRequestResponse' '404': $ref: '#/components/responses/common.404NotFoundResponse' tags: - Clients components: parameters: clients.ToRequestParam: name: to in: query description: The time in milliseconds from the epoch up to which sensor clients are fetched (the upper bound). Defaults to the present now. required: false schema: type: number format: datetime clients.VendorRequestParam: name: vendor in: query description: Filter clients by partial vendor/OUI name (case-insensitive). required: false schema: type: string clients.FromRequestParam: name: from in: query description: The time in milliseconds from the epoch after which sensor clients are fetched (the lower bound). Defaults to the previous 30 days. The difference between `from` and `to` is not allowed be greater than 90 days. required: false schema: type: number format: datetime clients.MacRequestParam: name: mac in: query description: Filter clients by partial MAC address (case-insensitive). required: false schema: type: string schemas: clients.SensorClient: type: object properties: id: type: integer name: type: string macAddress: type: string description: type: string user: type: string vendor: type: string common.Range: type: object required: - to - toAsDateString - from - fromAsDateString - total - duration - durationAsString properties: to: type: integer example: 1674055815825 toAsDateString: type: string format: date-time example: 2023-01-18T15:51:20.437Z[UTC] from: type: integer example: 1674055815825 fromAsDateString: type: string format: date-time example: 2023-01-17T15:51:20.438Z[UTC] total: type: integer example: 5 duration: type: integer example: 60000 durationAsString: type: string example: 60 seconds clients.GetSensorClientsResponse: type: object properties: results: type: array items: $ref: '#/components/schemas/clients.SensorClient' range: $ref: '#/components/schemas/common.Range' common.ResponseStatusException: type: object required: - timestamp - status - error - path - requestId properties: timestamp: type: string format: date-time status: type: integer error: type: string message: type: string path: type: string requestId: type: string responses: common.400BadRequestResponse: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/common.ResponseStatusException' common.404NotFoundResponse: description: Resource Not Found content: application/json: schema: $ref: '#/components/schemas/common.ResponseStatusException' securitySchemes: oauth2: type: oauth2 flows: clientCredentials: tokenUrl: /oauth2/token scopes: {}