Environments and versions
Base URL
Section titled “Base URL”All examples in this documentation use the production API base URL:
https://api.splashmepool.com.auPaths in this documentation are appended to it, for example https://api.splashmepool.com.au/api-gateway/v1/oauth/token.
API surfaces
Section titled “API surfaces”| Prefix | Purpose | Authentication |
|---|---|---|
/api-gateway/v1/auth |
Direct email and password sign-in for first-party style clients | None |
/api-gateway/v1/oauth |
OAuth2 authorize and token endpoints, user info, client management | None for authorize/token; bearer token otherwise |
/api-gateway/v1/user |
The signed-in user’s profile, role, sites and controller online status | Bearer token |
/api-gateway/v1/iot-shadow |
Device API v1 | Bearer token + device ownership |
/api-gateway/v2/iot-shadow |
Device API v2 | Bearer token + device ownership |
Firmware requirements
Section titled “Firmware requirements”| Feature | Minimum controller firmware |
|---|---|
| Device API v1 | Any |
| Device API v2, cloud | 2.5.46 |
| Command Protocol v2 over the LAN | 2.5.46 |
The site listing does not include the firmware version. To find out whether a controller supports v2, call GET /api-gateway/v2/iot-shadow/device/{deviceId}/state: a controller on older firmware, or one that has not been heard from recently, answers 404 or v2_capable: false, and the v2 refresh, query and action endpoints answer 409 Conflict. Fall back to v1 in that case.
Versioning policy
Section titled “Versioning policy”- Existing fields and endpoints are not removed or renamed within a version prefix. New fields may be added to responses at any time, so parse leniently.
- Breaking changes ship under a new prefix, as v2 did.
- The changelog records every change that affects integrators.

