Account

This partial class contains routes for the subscriptions

APIDescription
POST accounts/subscription/Android?hub={hub}

registers a new modification on a subscribtion (create, cancel...) from the google store

POST accounts/subscription/iTunes?hub={hub}

registers a new modification on a subscribtion (create, cancel...) from the apple store

GET accounts/subscription/TypeName

Check the Name of subsciption you have

POST accounts

Register a new user on the store. the user email and passwords are mandatory.

POST accounts/new?email={email}&lang={lang}

Register a new user on the store. the user email and passwords are mandatory.

POST accounts/login

this route is for the OAuth2 authorization flow without the form login form

GET accounts/form?redirect_uri={redirect_uri}&client_id={client_id}&response_type={response_type}&scope={scope}&state={state}

This route provides the authentication form for the OAuth2 authorization flow

GET accounts

Returns the current authenticated user information. Don't forget the 'authorization' header with value 'bearer %token%', where the token is retrieved via the ~/oauth/token jwt login route.

GET accounts/check?token={token}&l={l}

Activates a new user on the store.

PUT accounts

Update the current user account informations. Requires to be authenticated.

PUT accounts/All?newPass={newPass}

Update the current user account informations. Requires to be authenticated.

PUT accounts/Notifications

Updates the value indicating whether or not the user should get notifications on his app

GET accounts/Notifications

Gets the value indicating whether or not the user should get notifications on his app

PUT accounts/{serial}/ReactivationNotification?notification={notification}

Updates if the user have notifications or not on the user account

Place

This is the pool's management route

APIDescription
PUT place/{id}

Updates a pool's information. (requires to be authenticated). FREE

GET place/{id}?l={l}

Returns a specific pool information. (requires to be authenticated). FREE

DELETE place/{id}

Deletes the given pool. (requires to be authenticated). FREE

DELETE place/{poolId}/stock/{stockId}

Removes the given chemical product from the given pool's stock. Requires Authentication. FREE

POST place/{poolId}/waterLevel

Adds a new water level modification. FREE

GET place/{poolId}/waterLevel

Gets the water level change's history. FREE

DELETE place/{poolId}/waterLevel/{wid}

Deletes a water level change. FREE

POST place/{poolId}/log?wid={wid}

Deletes a water level change. FREE

GET place/{placeId}/shares

Gets the shares done on the current pool

POST place/{placeId}/shares

Add the shares on the current place

PUT place/{placeId}/shares

Modifiy the permission in the place right of the share

POST place/{placeId}/shares/accept

Accepts the share

DELETE place/{placeId}/shares?email={email}

Deletes a share

GET place/coatings?l={l}

Gets the known list of coatings. Allows anonymous connection.

GET place/spaTypes?l={l}

Gets the known list of coatings. Allows anonymous connection.

GET place/filtrations?poolType={poolType}&l={l}

Gets the known list of Filtration. Allows anonymous connection.

GET place/integration?poolType={poolType}&l={l}

Gets the known list of integration. Allows anonymous connection.

GET place/shapes?l={l}

Gets the known list of shapes. Allows anonymous connection.

GET place/treatment?l={l}

Gets the known list of Treatment. Allows anonymous connection.

GET place/types?l={l}

Gets the known list of pool types. Allows anonymous connection.

GET place/locations?l={l}

Gets the known list of locations. Allows anonymous connection.

GET place/modes?l={l}

Gets the known list of modes.

GET place/enums?l={l}

Gets the different pool characteristics enumerations. requires to be authenticated.

GET place/equipments?poolType={poolType}&l={l}

Gets the known list of equipments. Allows anonymous connection. FREE

GET place/{poolId}/equipments?l={l}

Return all stocks from a specific pool. (requires to be authenticated). FREE

PUT place/{poolId}/equipments?l={l}

Updates the list of owned equipments. FREE

GET place/{poolId}/Log?nbItems={nbItems}&page={page}&l={l}

Gets the pool's logs. FREE

POST place/{poolId}/Log

creates a log entry. FREE

GET place/Log/Types?l={l}

Gets the pool log's types

PUT place/{poolId}/Log/{logId}

updates a log entry. FREE

DELETE place/{poolId}/Log/{logId}

deletes a log entry. FREE

GET place/{poolId}/stock?l={l}

Returns the stock of the given pool (requires authentication). FREE

POST place/{poolId}/stock

Adds an item to the pool's stock. (requires authentication). FREE

PUT place/{poolId}/stock/{stockId}

Updates the available quatity of product. FREE

GET place/{poolId}/strip

Gets the last strip for the given pool. FREE

POST place/{poolId}/ExternalMeasures

Insert a new health measure for a pool. FREE

GET place/{poolId}/ExternalMeasures?includeStrips={includeStrips}

Gets the health measures for the given pool. FREE

GET Place?l={l}

Return all places of the current user.

POST Place

Add a place to the user account storage. (requires authentication).

Callback

this route is dedicated to the callbacks

APIDescription
POST callback/bluetooth

Callback for bluetooth metrics and/or calibration messages.

POST Callback

checks the calibration, and fixes it if needed

IotHubService

this route is used to interact with the HubDevice

APIDescription
POST hub/{serial}/Manual/{state}

Set state of the hub manually

PUT hub/{serial}/mode/{behavior}

Activate mode auto / planning / manual

GET hub/{serial}/state

get state of the hub

POST hub/{serial}/AddPlannings

Add a or multiples plannings to a hub. Subscription Required.

GET hub/{serial}/GetPlannings

Return all planning of a Hub. Free.

DELETE hub/{serial}/DeleteSinglePlanning?idPlanning={idPlanning}

Delete a planning of a hub. Free with limitation

POST hub/{serial}/Equipment/Add/{CodeEquipmentpool}

Add equipment to device. Require subsciption

PUT hub/{serial}/Equipment/Name

Change Name Equipement

GET hub/Equipments/Listing?l={l}

List of equipment which can be attach to the Hub

GET hub/Equipments/{iDWorkflow}/WFInstallation?l={l}

Get Installation Worfklow for an Equipment on a hub. FREE WITH LIMITATION.

GET hub/Equipments/{iDWorkflow}/Ending

Get url Ending Workflow Installation .SUBSCRIPTION REQUIRED.

GET hub/{serial}/AwsConnection

Get if a Hub is connected to aws or not.SUBSCRIPTION REQURED.

GET hub/{serial}/SmartControlSentence

Get if the sentence for the hub smart control. Subcription Required + Smart control on this Hub.

GET hub/Pool/{IdPool}/AllHubs

List of Hubs attached to the account

Maintenance

This is the chemical products' management controller

APIDescription
GET maintenance/chemical?ean={ean}&brandId={brandId}&name={name}&typeId={typeId}&conditionningId={conditionningId}&l={l}

Return all known chemical products. Allows Anonymous connection.

POST maintenance/Chemical

Adds a new chemical product. requires to be authenticated.

PUT maintenance/Chemical/{id}

Adds a new chemical product. requires to be authenticated.

GET maintenance/conditioning?l={l}

Gets the list of the different known conditioning. Allows anonymous connection.

GET maintenance/brand

Gets the different known brands. Allow Anonymous

GET maintenance/applicationmethod?l={l}

Gets all the different known application methods. Allows anonymous connection

GET maintenance/type?l={l}

Retrieves the different known product types. Allows anonymous connection

GET maintenance/Conditioning/{conditioningId}/Units?l={l}

Retrieves the different known conditioning units

GET maintenance/Conditioning/{conditioningId}/DosageUnits?l={l}

Retrieves the different known product types. Allows anonymous connection

Password

the route for the passwords management

APIDescription
POST pwd

This POST method should be called when the user has lost his pwd

PUT pwd

This PUT method should be called when the user wants to change is pwd

PUT pwd/Recovery

This method has to be called to regenerate a password

Pool

This class provides routes for the pools

APIDescription
GET pools?l={l}&serial={serial}

Return all pools stored in the user account (requires authentication).

GET pools/allarea?l={l}&treatmentId={treatmentId}

Return all pools for a society (requires authentication).

GET pools/{poolId}/Log?nbItems={nbItems}&page={page}&l={l}

Gets the pool's logs. FREE

POST pools/{poolId}/Log

creates a log entry. FREE

GET pools/Log/Types?l={l}

Gets the pool log's types

PUT pools/{poolId}/Log/{logId}

updates a log entry. FREE

DELETE pools/{poolId}/Log/{logId}

deletes a log entry. FREE

GET pools/{poolId}/strip

Gets the last strip for the given pool. FREE

POST pools/{poolId}/ExternalMeasures

Insert a new health measure for a pool. FREE

GET pools/{poolId}/ExternalMeasures?includeStrips={includeStrips}

Gets the health measures for the given pool. FREE

GET pools/equipments?poolType={poolType}&l={l}

Gets the known list of equipments. Allows anonymous connection. FREE

GET pools/{poolId}/equipments?l={l}

Return all stocks from a specific pool. (requires to be authenticated). FREE

PUT pools/{poolId}/equipments?l={l}

Updates the list of owned equipments. FREE

GET pools/{poolId}/stock?l={l}

Returns the stock of the given pool (requires authentication). FREE

POST pools/{poolId}/stock

Adds an item to the pool's stock. (requires authentication). FREE

PUT pools/{poolId}/stock/{stockId}

Updates the available quatity of product. FREE

DELETE pools/{poolId}/stock/{stockId}

Removes the given chemical product from the given pool's stock. Requires Authentication. FREE

DELETE pools/{poolId}

Deletes the given pool. (requires to be authenticated). FREE

POST pools

Add a pool to the user account storage. (requires authentication).

POST pools/{serial}

Add a pool to the user account storage. (requires authentication).

PUT pools/{poolId}

Updates a pool's information. (requires to be authenticated). FREE

GET pools/{poolId}?l={l}

Returns a specific pool information. (requires to be authenticated). FREE

POST pools/{poolId}/waterLevel

Adds a new water level modification. FREE

GET pools/{poolId}/waterLevel

Gets the water level change's history. FREE

DELETE pools/{poolId}/waterLevel/{wid}

Deletes a water level change. FREE

POST pools/{poolId}/log?wid={wid}

Deletes a water level change. FREE

GET pools/coatings?l={l}

Gets the known list of coatings. Allows anonymous connection.

GET pools/spaTypes?l={l}

Gets the known list of coatings. Allows anonymous connection.

GET pools/filtrations?poolType={poolType}&l={l}

Gets the known list of Filtration. Allows anonymous connection.

GET pools/integration?poolType={poolType}&l={l}

Gets the known list of integration. Allows anonymous connection.

GET pools/shapes?l={l}

Gets the known list of shapes. Allows anonymous connection.

GET pools/treatment?l={l}

Gets the known list of Treatment. Allows anonymous connection.

GET pools/types?l={l}

Gets the known list of pool types. Allows anonymous connection.

GET pools/locations?l={l}

Gets the known list of locations. Allows anonymous connection.

GET pools/modes?l={l}

Gets the known list of modes.

GET pools/enums?l={l}

Gets the different pool characteristics enumerations. requires to be authenticated.

Module

this class provides apis

APIDescription
GET modules/{serial}/pool?l={l}

Returns module's monitored pool

PUT modules/{serial}/Status

Sets a status to a module

POST modules/{serial}/credit

Credits a few months of subscription to the given module

GET modules/CommercialTypes

Gets the commercial types

PUT modules/{serial}/settings

Updates the module's settings

POST modules/{serial}/alerts/postpone

Updates the given alert to the 'TreatmentInProgress' state. FREE

PUT modules/{serial}/alerts/{alertId}/close

Updates the given alert to the 'TreatmentInProgress' state. FREE

PUT modules/{serial}/Comments?comment={comment}

Change the comment of a Flipr

POST modules/{serial}/alerts/postponeMillis

Updates the given alert to the 'TreatmentInProgress' state. FREE

GET modules/{serial}/alerts?l={l}

Return all of user's active alerts. SUBSCRIBTION REQUIRED

GET modules/{serial}/survey/last?l={l}

Return the module's last data, with adjusted values. (intermediate values, before applying the calibration correction). FREE.

GET modules/{serial}/FiltrationTime/last?l={l}

Return the module's last data, with adjusted values. (intermediate values, before applying the calibration correction). FREE.

GET modules/{serial}/survey/LastHours/{hours}?l={l}

Return the module's last data, with adjusted values. (intermediate values, before applying the calibration correction). Limited to the 1000 last hours. SUBSCRIBTION REQUIRED

POST modules/create

registers the new device

GET modules/{serial}/resume?l={l}

Return the module's last data, with adjusted values. (intermediate values, before applying the calibration correction). SUBSCRIBTION REQUIRED

GET modules/{serial}/NewResume?l={l}

New Road Resume 16h30 07:07:2021 Return the module's last data, with adjusted values. (intermediate values, before applying the calibration correction). SUBSCRIBTION REQUIRED

GET modules/{serial}/survey/statsPerDays/{days}?l={l}

Return the module's stats over the given X days, limited to the last 365 days. SUBSCRIBTION REQUIRED

POST modules/AddDataManualy

Add Data Manualy

GET modules

Return all registered Flipr modules for the current authenticated user. FREE

GET modules/Ids?userIdentifiant={userIdentifiant}

Return Ids to the authenticated user.FREE

POST modules/{serial}/DesAssociateFlipr

Des Associate Flipr Flipr to the account. Free

PUT modules/{serial}/ECO?OnOff={OnOff}

Activate the mode ECO on the specific device.

DELETE modules/{serial}

Removes a Flipr module from the current authenticated user's account. FREE

POST modules/activate

Add a Flipr module to the current authenticated user. FREE WITH LIMITATIONS

GET modules/{serial}/Thresholds

Gets the custom thresholds. SUBSCRIBTION REQUIRED

GET modules/E_flipr

Gets a new Eflipr

PUT modules/{serial}/Thresholds

Updates the custom thresholds. FREE

POST Module

checks the calibration, and fixes it if needed

Test

This route concerns the accounts management (creation, activation, update, get)

APIDescription
GET xtestx/isActivated?email={email}

Gets a bool stating wether or not the required account has been activated

GET xtestx/check?token={token}&l={l}

Activates a new user on the store.

PUT xtestx

Update the current user account informations. Requires to be authenticated.

GET xtestx/{serial}/DateAlerteReport

Route that indicate if the alert have been reported or not and the date of report