Equipment

Acquiring documents of resource 'equipment'

Document

Property

Type

Contract

Description

_meta

object

required

app

string

required

Equipment's app

serial

string

required

Serial number of equipment

alias

string

optional

Alias (nickname) of equipment

device.guid

string

optional

Guid of linked device

device.serial

string

optional

Serial of linked device

device.last_ping

integer

optional

Timestamp in milliseconds of last ping of device

company_guids

Array<string>

optional

Array of company guids that equipment is linked to

model

string

required

Model of equipment

type

string

required

Type of equipment

state

string

required

State of equipment (more details)

specifications.colors

Array<object>

optional

Colors of equipment

specifications.options

Array<string>

optional

Options of equipment

location.place_id

string

optional

Google Maps API Place ID of equipment

location.description

string

optional

Description of equipment's location

location.country

string

optional

Country of equipment's location

location.city

string

optional

City of equipment's location

location.geometry

object

optional

Geometry lat / lon of equipment's location

location.timezone

string

optional

Timezone of equipment's location

location.timezone_offset

integer

optional

Offset between equipment's location and UTC in seconds

controller.state

integer

optional

State of equipment's controller

controller.active_errors

integer

optional

Active errors of equipment's controller in an unsigned 64-bit integer format (more details)

controller.timestamp

integer

optional

Current timestamp in seconds of equipment's controller

controller.logs.parameter

integer

optional

Number of parameter logs in equipment's controller

controller.logs.boot

integer

optional

Number of boot logs in equipment's controller

controller.logs.session

integer

optional

Number of session logs in equipment's controller

controller.logs.error

integer

optional

Number of error logs in equipment's controller

controller.logs.event

integer

optional

Number of event logs in equipment's controller

controller.communication.timeout

boolean

optional

Communication status between device and equipment's controller

controller.hours

Array<object>

optional

Equipment's controller hour counters containing the type and value in minutes

controller.release.type

string

optional

Release type

controller.release.version

string|null

optional

Version of release currently installed

controller.release.hash

string|null

optional

Hash of release currently installed

settings

Array<object>

optional

Equipment's settings

Equipment states

State

Description

offline

Device linked to equipment is offline

no-device

No device linked to equipment

controller-timeout

No communication with equipment's controller

controller-powerup

Equipment's controller is powering up

controller-pincode

Equipment's controller in PIN view

controller-config-view

Equipment's controller in config view

controller-quickstatus-view

Equipment's controller in quickstatus view

controller-setting-time

Equipment's controller is (re)setting it's time

controller-warning

Equipment's controller is showing a warning

controller-error

Equipment's controller is showing an error

controller-confirm

Equipment's controller requests confirmation

controller-copy-files

Equipment's controller is copying update files

controller-online-update

Equipment's controller is currently updating

stand-by

Equipment is in stand-by

in-session

Equipment is currently in session

cooldown

Equipment is currently in cooldown

session-paused

Equipment's session is paused

cleaning

Equipment requires cleaning

Controller - Active errors

The active errors of the equipment's controller are shown as a 64-bit unsigned integer format. However, the active errors are represented by bits. Because of this, the 64-bit unsigned integer should be converted to a binary array.

An example in JavaScript

// 'controller.active_errors' field of Equipment
const activeErrors = 68719476737;

// Convert 64-bit unsigned integer to binary string
const binaryString = (activeErrors).toString(2); // Result: '1000000000000000000000000000000000001'

// The result of the binary string in this example shows that bit 0 and bit 36 are active
binaryString.substr(0, 1); // Result: '1', which means E0 is active
binaryString.substr(36, 1); // Result: '1', which means E36 is active
binaryString.substr(2, 1); // Result: '0', which means E2 is NOT active

The error corresponding of the active bits can be found using the global error log information endpoint. The activeErrorBit will contain the bit which will be active when the error is active on equipment's controller. Below a list of the error bits with their corresponding errors.

Error bit

Error

Critical

0

E0 - Software error

Yes

1

E1 - Internal timer has a defect

Yes

2

E2 - Wind switch lower compartment fault

Yes

3

E3 - Communication error between relay and switch part

Yes

4

E4 - Communication error switch section

Yes

5

E5 - Maximum temperature Welltherm

Yes

6

E6 - Unknown phase

Yes

7

E7 - Overrule switch section defective

Yes

8

E9 - Maximum temperature bench

Yes

9

E10 - Maximum temperature canopy

Yes

10

E11 - Communication fault controller board ID11

Yes

11

E12 - Communication fault controller board ID12

Yes

12

E17 - Microprocessor I/O section fault

Yes

13

E18 - Communication error with temperature sensor bench

No

14

E19 - Communication error with temperature sensor canopy

Yes

15

E20 - Climate control reservoir full

No

16

E21 - Climate control needs cleaning

No

17

E22 - Change lamps

No

18

E22_2 - Change lampset (1)

No

19

E22_3 - Change lampset (2)

No

20

E22_4 - Change facial tanner lamps

No

21

E22_5 - Change shoulder tanner lamps

No

22

E22_6 - Change LED's UV/Red

No

23

E22_7 - Change acrylic bench

No

24

E22_8 - Change acrylic bench Climate control

No

25

E22_9 - Change acrylic back side

No

26

E22_10 - Change acrylic canopy

No

27

E24 - Qsens jerrycan level too low

No

28

E26 - Clixon climate control fault

Yes

29

E29 - Maximum temperature shoulder tanner

Yes

30

E30 - Filter shoulder tanner defective

Yes

31

E31 - Facial filter defective

Yes

32

E32 - Climate control no longer cooling

No

33

E34 - Maximum temperature climate control

Yes

34

E33 - SD card I/O section is full

No

35

E35 - Maximum temperature LED's UV/Red

No

36

E36 - Reset received

Yes

40

E37 - Lease time expired

No

41

E41 - Sens controller error

Yes

Get equipment

GET https://api.v2.myluxura.com/v2/equipment

This endpoint will return the equipment's documents.

Path Parameters

Name
Type
Description

guid

string

Guid of the company document

Query Parameters

Name
Type
Description

company

string

Guid of the company you're acting on behalf of

Headers

Name
Type
Description

Authorization

string

Authentication token (type 'Bearer')

[
  {
    "_meta": {
      "index": "equipment",
      "guid": "097050c64c33cbc4df40a7073204c00472b5a55a704422e942a16a7679e2e0ef",
      "created": 1600097687901,
      "updated": 1622562386276,
      "removed": 0,
      "expiry": 0,
      "created_by": {
        "resource": {
          "name": "<name>",
          "guid": "<guid>",
          "index": "<index>"
        },
        "host": "myluxura-api"
      }
    },
    "app": "myluxura",
    "serial": "00AA00000000000",
    "alias": "Equipment example",
    "device": {
      "guid": "<guid>",
      "serial": "<serial>",
      "last_ping": 1622562386205
    },
    "company_guids": [
      "<guid>"
    ],
    "model": "luxura_vegaz_9200",
    "type": "9200_highbrid",
    "state": "stand-by",
    "specifications": {
      "colors": [
        {
          "location": "sunbed",
          "color": "Elite Gold"
        }
      ],
      "options": [
        "UV-LED tanning booster",
        "Shoulder tanner + SoundAround Plus"
      ]
    },
    "location": {
      "place_id": "ChIJVXealLU_xkcRja_At0z9AGY",
      "description": "Amsterdam, Netherlands",
      "country": "Netherlands",
      "city": "Amsterdam",
      "geometry": {
        "lat": 52.3675734,
        "lon": 4.9041389
      },
      "timezone": "Europe/Amsterdam",
      "timezone_offset": 3600
    },
    "controller": {
      "state": 4,
      "active_errors": 0,
      "serial": 1543228106,
      "timestamp": 1622569689,
      "logs": {
        "parameter": 131,
        "boot": 764,
        "session": 1565,
        "error": 2952,
        "event": 32941
      },
      "communication": {
        "timeout": false
      },
      "hours": [
        {
          "type": "unit",
          "value": 4566
        },
        {
          "type": "lamps",
          "value": 1128
        },
        {
          "type": "ft",
          "value": 612
        },
        {
          "type": "st",
          "value": 532
        },
        {
          "type": "ledUva",
          "value": 4471
        },
        {
          "type": "ledRed",
          "value": 4403
        },
        {
          "type": "ftFilter",
          "value": 4542
        },
        {
          "type": "stFilter",
          "value": 4525
        },
        {
          "type": "acrylicBench",
          "value": 4539
        },
        {
          "type": "acrylicAirco",
          "value": 4539
        },
        {
          "type": "rearCasing",
          "value": 4539
        },
        {
          "type": "acrylicCanopy",
          "value": 4539
        },
        {
          "type": "xsens1",
          "value": 1464
        },
        {
          "type": "xsens2",
          "value": 0
        },
        {
          "type": "xsens3",
          "value": 0
        },
        {
          "type": "airco",
          "value": 4554
        },
        {
          "type": "ccHeater",
          "value": 0
        }
      ],
      "release": {
        "type": "P10241",
        "version": "0.1.0",
        "hash": "e67f5416dd875843976f09f84335c44d4613301a15fc8b4e5f8d8733f0258ea1"
      }
    },
    "settings": []
  }
]

Get equipment by guid

GET https://api.v2.myluxura.com/v2/equipment/:guid

This endpoint will return the equipment's documents by guid.

Path Parameters

Name
Type
Description

guid

string

Guid of the document

Query Parameters

Name
Type
Description

company

string

Guid of the company you're acting on behalf of

Headers

Name
Type
Description

Authorization

string

Authentication token (type 'Bearer')

{
  "_meta": {
    "index": "equipment",
    "guid": "097050c64c33cbc4df40a7073204c00472b5a55a704422e942a16a7679e2e0ef",
    "created": 1600097687901,
    "updated": 1622562386276,
    "removed": 0,
    "expiry": 0,
    "created_by": {
      "resource": {
        "name": "<name>",
        "guid": "<guid>",
        "index": "<index>"
      },
      "host": "myluxura-api"
    }
  },
  "app": "myluxura",
  "serial": "00AA00000000000",
  "alias": "Equipment example",
  "device": {
    "guid": "<guid>",
    "serial": "<serial>",
    "last_ping": 1622562386205
  },
  "company_guids": [
    "<guid>"
  ],
  "model": "luxura_vegaz_9200",
  "type": "9200_highbrid",
  "state": "stand-by",
  "specifications": {
    "colors": [
      {
        "location": "sunbed",
        "color": "Elite Gold"
      }
    ],
    "options": [
      "UV-LED tanning booster",
      "Shoulder tanner + SoundAround Plus"
    ]
  },
  "location": {
    "place_id": "ChIJVXealLU_xkcRja_At0z9AGY",
    "description": "Amsterdam, Netherlands",
    "country": "Netherlands",
    "city": "Amsterdam",
    "geometry": {
      "lat": 52.3675734,
      "lon": 4.9041389
    },
    "timezone": "Europe/Amsterdam",
    "timezone_offset": 3600
  },
  "controller": {
    "state": 4,
    "active_errors": 0,
    "serial": 1543228106,
    "timestamp": 1622569689,
    "logs": {
      "parameter": 131,
      "boot": 764,
      "session": 1565,
      "error": 2952,
      "event": 32941
    },
    "communication": {
      "timeout": false
    },
    "hours": [
      {
        "type": "unit",
        "value": 4566
      },
      {
        "type": "lamps",
        "value": 1128
      },
      {
        "type": "ft",
        "value": 612
      },
      {
        "type": "st",
        "value": 532
      },
      {
        "type": "ledUva",
        "value": 4471
      },
      {
        "type": "ledRed",
        "value": 4403
      },
      {
        "type": "ftFilter",
        "value": 4542
      },
      {
        "type": "stFilter",
        "value": 4525
      },
      {
        "type": "acrylicBench",
        "value": 4539
      },
      {
        "type": "acrylicAirco",
        "value": 4539
      },
      {
        "type": "rearCasing",
        "value": 4539
      },
      {
        "type": "acrylicCanopy",
        "value": 4539
      },
      {
        "type": "xsens1",
        "value": 1464
      },
      {
        "type": "xsens2",
        "value": 0
      },
      {
        "type": "xsens3",
        "value": 0
      },
      {
        "type": "airco",
        "value": 4554
      },
      {
        "type": "ccHeater",
        "value": 0
      }
    ],
    "release": {
      "type": "P10241",
      "version": "0.1.0",
      "hash": "e67f5416dd875843976f09f84335c44d4613301a15fc8b4e5f8d8733f0258ea1"
    }
  },
  "settings": []
}

Get maintenance counters of equipment

GET https://api.v2.myluxura.com/v2/equipment/:guid/maintenance/counters

This endpoint will return the equipments maintenance counters by guid.

Path Parameters

Name
Type
Description

guid

string

Guid of the document

Query Parameters

Name
Type
Description

company

string

Guid of the company you're acting on behalf of

Headers

Name
Type
Description

Authorization

string

Authentication token (type 'Bearer')

[
  {
    "counter": "lamps",
    "value": 805,
    "max_value": 72000,
    "maintenance": {
      "average_per_day": 38.666666666666664,
      "due_date": 1776902400000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "lamps",
      "maintenance_due": {
        "enabled": true
      }
    }
  },
  {
    "counter": "st",
    "value": 209,
    "max_value": 48000,
    "maintenance": {
      "average_per_day": 151.86666666666667,
      "due_date": 1644969600000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "st",
      "maintenance_due": {
        "enabled": true
      }
    }
  },
  {
    "counter": "acrylicBench",
    "value": 4216,
    "max_value": 72000,
    "maintenance": {
      "average_per_day": 152.36666666666667,
      "due_date": 1656201600000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "acrylicBench",
      "maintenance_due": {
        "enabled": true
      }
    }
  },
  {
    "counter": "acrylicAirco",
    "value": 4216,
    "max_value": 72000,
    "maintenance": {
      "average_per_day": 152.36666666666667,
      "due_date": 1656201600000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "acrylicAirco",
      "maintenance_due": {
        "enabled": true
      }
    }
  },
  {
    "counter": "rearCasing",
    "value": 4216,
    "max_value": 72000,
    "maintenance": {
      "average_per_day": 152.36666666666667,
      "due_date": 1656201600000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "rearCasing",
      "maintenance_due": {
        "enabled": true
      }
    }
  },
  {
    "counter": "acrylicCanopy",
    "value": 4216,
    "max_value": 72000,
    "maintenance": {
      "average_per_day": 152.36666666666667,
      "due_date": 1656201600000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "acrylicCanopy",
      "maintenance_due": {
        "enabled": true
      }
    }
  },
  {
    "counter": "airco",
    "value": 4231,
    "max_value": 150000,
    "maintenance": {
      "average_per_day": 152.83333333333334,
      "due_date": 1700179200000,
      "last_calculation": 1617886395025
    },
    "notification_settings": {
      "maintenance_preventative": {
        "days_before_due": 7,
        "enabled": true
      },
      "counter": "airco",
      "maintenance_due": {
        "enabled": true
      }
    }
  }
]

Update equipment's information by guid

PATCH https://api.v2.myluxura.com/v2/equipment/:guid/information

This endpoint will update the equipment's information by guid.

Path Parameters

Name
Type
Description

guid

string

Guid of the document

Query Parameters

Name
Type
Description

company

string

Guid of the company you're acting on behalf of

Headers

Name
Type
Description

Authorization

string

Authentication token (type 'Bearer')

Request Body

Name
Type
Description

array

Array of Mutations

{
  "_meta": {
    "index": "equipment",
    "guid": "097050c64c33cbc4df40a7073204c00472b5a55a704422e942a16a7679e2e0ef",
    "created": 1600097687901,
    "updated": 1622562386276,
    "removed": 0,
    "expiry": 0,
    "created_by": {
      "resource": {
        "name": "<name>",
        "guid": "<guid>",
        "index": "<index>"
      },
      "host": "myluxura-api"
    }
  },
  "app": "myluxura",
  "serial": "00AA00000000000",
  "alias": "Equipment example",
  "device": {
    "guid": "<guid>",
    "serial": "<serial>",
    "last_ping": 1622562386205
  },
  "company_guids": [
    "<guid>"
  ],
  "model": "luxura_vegaz_9200",
  "type": "9200_highbrid",
  "state": "stand-by",
  "specifications": {
    "colors": [
      {
        "location": "sunbed",
        "color": "Elite Gold"
      }
    ],
    "options": [
      "UV-LED tanning booster",
      "Shoulder tanner + SoundAround Plus"
    ]
  },
  "location": {
    "place_id": "ChIJVXealLU_xkcRja_At0z9AGY",
    "description": "Amsterdam, Netherlands",
    "country": "Netherlands",
    "city": "Amsterdam",
    "geometry": {
      "lat": 52.3675734,
      "lon": 4.9041389
    },
    "timezone": "Europe/Amsterdam",
    "timezone_offset": 3600
  },
  "controller": {
    "state": 4,
    "active_errors": 0,
    "serial": 1543228106,
    "timestamp": 1622569689,
    "logs": {
      "parameter": 131,
      "boot": 764,
      "session": 1565,
      "error": 2952,
      "event": 32941
    },
    "communication": {
      "timeout": false
    },
    "hours": [
      {
        "type": "unit",
        "value": 4566
      },
      {
        "type": "lamps",
        "value": 1128
      },
      {
        "type": "ft",
        "value": 612
      },
      {
        "type": "st",
        "value": 532
      },
      {
        "type": "ledUva",
        "value": 4471
      },
      {
        "type": "ledRed",
        "value": 4403
      },
      {
        "type": "ftFilter",
        "value": 4542
      },
      {
        "type": "stFilter",
        "value": 4525
      },
      {
        "type": "acrylicBench",
        "value": 4539
      },
      {
        "type": "acrylicAirco",
        "value": 4539
      },
      {
        "type": "rearCasing",
        "value": 4539
      },
      {
        "type": "acrylicCanopy",
        "value": 4539
      },
      {
        "type": "xsens1",
        "value": 1464
      },
      {
        "type": "xsens2",
        "value": 0
      },
      {
        "type": "xsens3",
        "value": 0
      },
      {
        "type": "airco",
        "value": 4554
      },
      {
        "type": "ccHeater",
        "value": 0
      }
    ],
    "release": {
      "type": "P10241",
      "version": "0.1.0",
      "hash": "e67f5416dd875843976f09f84335c44d4613301a15fc8b4e5f8d8733f0258ea1"
    }
  },
  "settings": []
}

Reset controller of equipment

PUT https://api.v2.myluxura.com/v2/equipment/:guid/controller/reset

This endpoint will the reset the equipment's controlle by guid.

Path Parameters

Name
Type
Description

guid

string

Guid of the document

Query Parameters

Name
Type
Description

company

string

Guid of the company you're acting on behalf of

Headers

Name
Type
Description

Authorization

string

Authentication token (type 'Bearer')

{
  "success": true
}

Request controller update of equipment

PUT https://api.v2.myluxura.com/v2/equipment/:guid/controller/update

This endpoint will request the equipment's controller to start updating by guid.

Path Parameters

Name
Type
Description

guid

string

Guid of the document

Query Parameters

Name
Type
Description

company

string

Guid of the company you're acting on behalf of

Headers

Name
Type
Description

Authorization

string

Authentication token (type 'Bearer')

{
  "success": true
}

Last updated

Was this helpful?