Pulse Grow ProLightReading API
A collection of API operations related to light readings.
A collection of API operations related to light readings.
openapi: 3.0.4
info:
title: Pulse Api AllDevices ProLightReading API
description: "# Introduction\n\nThe Pulse API is an HTTP API that is designed to interact with your pulse account and devices. \n\nNote that not all app functionality has yet been exposed through this api, so if you need additional functionality, contact our support team at support@pulsegrow.com and we will add it for you. \n\nThis API reference includes all technical documentation developers need to integrate third-party applications and platforms. If you have any additional questions send an email to our support team at support@pulsegrow.com\n\n# Authentication\n\nAll HTTP requests made against the Pulse API must be validated with an API Key.\n\n### Acquiring an API Key\n\nTo generate a new api key go to https://app.pulsegrow.com/account, scroll down to the api key section, and press the \"Add Api Key\" button.\n\n### Using Your API Key \n\nNote: API keys are generated per grow and only have access to that grow's resources (users, devices, etc). \n\nAll requests should target domain `https://api.pulsegrow.com`.\n\nYou need to provide the API key via the `x-api-key` header.\n\nSecurity Warning: It's important to secure your API Key against public access. Guard and secure it like a password. If you suspect that your API key has been compromised, revoke it via the web application at https://app.pulsegrow.com/account. \n\nSample request:\n\n```\n\ncurl --request GET \"https://api.pulsegrow.com/devices/{deviceId}/recent-data\" --header \"x-api-key: {apiKey}\"\n\n``` \n\n### Api consumption\n\n Api consumption is measured by number of datapoints retrieved.\n\n An api call that does not retrieve datapoints counts as one datapoint.\n\n Hobbyist users can use up to 4800 datapoints daily, Enthusiasts and Professionals 24000 and 120000, respectively \n\n"
termsOfService: https://pulsegrow.com/terms
contact:
name: Need help? Contact support
email: support@pulsegrow.com
version: v1
x-logo:
url: https://cdn.shopify.com/s/files/1/2451/2393/files/logo_1_400x.png
altText: The Logo
tags:
- name: ProLightReading
description: A collection of API operations related to light readings.
paths:
/api/light-readings/{deviceId}:
get:
tags:
- ProLightReading
summary: Retrieves (one page worth of) light readings(including spectrum) for a given device, supports pagination.
parameters:
- name: deviceId
in: path
description: Id of the device
required: true
schema:
type: integer
format: int32
- name: page
in: query
description: Object containing requested page position. Note that page numeration starts from zero
schema:
type: integer
format: int32
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/LightReadingsResponseDto'
'400':
description: Bad Request
content:
application/json:
schema:
type: string
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
/api/devices/{deviceId}/trigger-light-reading:
get:
tags:
- ProLightReading
summary: 'Remotely triggers a light reading off of a Pulse Pro.
The Result needs to be fetched separately in 5-10 seconds
There is a small chance of the Pro failing to trigger a light reading remotely
If no new data is found - retrigger in 1 minute'
parameters:
- name: deviceId
in: path
description: Id of the device
required: true
schema:
type: integer
format: int32
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/IActionResult'
'400':
description: Bad Request
content:
application/json:
schema:
type: string
'401':
description: Unauthorized
content:
application/json:
schema:
type: string
components:
schemas:
LightReadingsResponseDto:
type: object
properties:
currentPage:
type: integer
format: int32
numPages:
type: integer
format: int32
numReadings:
type: integer
format: int32
lightReadings:
type: array
items:
$ref: '#/components/schemas/ProLightReadingDto'
nullable: true
additionalProperties: false
IActionResult:
type: object
additionalProperties: false
ProLightReadingDto:
type: object
properties:
deviceId:
type: integer
format: int32
id:
type: integer
format: int32
createdAt:
type: string
format: date-time
note:
type: string
nullable: true
channel1:
type: number
format: double
channel2:
type: number
format: double
channel3:
type: number
format: double
channel4:
type: number
format: double
channel5:
type: number
format: double
channel6:
type: number
format: double
channel7:
type: number
format: double
channel8:
type: number
format: double
ir:
type: number
format: double
clear:
type: number
format: double
flicker:
type: number
format: double
gain:
type: integer
format: int32
tint:
type: number
format: double
ppfd:
type: number
format: double
dli:
type: number
format: double
nullable: true
pfdRed:
type: number
format: double
nullable: true
pfdGreen:
type: number
format: double
nullable: true
pfdBlue:
type: number
format: double
nullable: true
pfdIr:
type: number
format: double
nullable: true
spectrum:
type: array
items:
type: number
format: double
nullable: true
additionalProperties: false