Local HTTP API

The clock exposes a REST API over WiFi on the local network. This lets you read and write all clock settings without going through the cloud.

The local API uses the same parameter names, value ranges, and conventions as the Cloud API — this document covers only what is different or specific to the local interface. For the full parameter reference (names, allowed values, descriptions), refer to the Cloud API documentation.

—-

Connection

The clock starts an HTTP server on port 88 as soon as it has a WiFi connection. No authentication is required.

http://CLOCK_IP:88/

To find the clock’s IP address, check your router’s DHCP client list, or look it up in mobile app.

—-

REST Endpoints

All settings are accessible via a single URL pattern:

http://CLOCK_IP:88/v1/parameter
Method Action
GET Read current value
POST Write new value

Read a setting

GET http://CLOCK_IP:88/v1/parameter

Example:

curl http://192.168.1.100:88/v1/transition

Response:

{"ok": true, "status": 200, "value": 2}

Write a setting

Send the new value as the request body. Both plain integers and JSON are accepted.

Plain value:

curl -X POST http://192.168.1.100:88/v1/transition -d '3'

JSON:

curl -X POST http://192.168.1.100:88/v1/transition \
  -H "Content-Type: application/json" \
  -d '{"value": 3}'

Response:

{"ok": true, "status": 200, "value": 3}

—-

Response Format

All responses are JSON.

Field Type Description
ok boolean true on success, false on error
status integer HTTP status code
value integer or string Current value (on success)
message string Error description (on failure)

Error responses

Status Meaning
404 Parameter not found
405 Wrong method (reading write-only or writing read-only parameter)
400 Failed to set value

—-

Parameters

The full parameter list is documented in the Cloud API reference. The local API supports the same parameters with the same access levels (read-only, write-only, read-write).

—-

Brightness Values

The brightness parameters use a non-linear scale. The API accepts and returns the following discrete values:

API value Label
1 Off
6 Very Low
71 Low
126 Medium
201 High
256 Full

This applies to both brightnessday and brightnessnight.