Scraper sensor

any updates from Arctic Spas? I just got one and started looking into connecting to HA.

Iā€™ve look at recently how these Arctic Spas supposed to work, and they should have local control as well, if you donā€™t have internet at your place.

Might worth to try to capture the communication between the app and the spa to see how it happens.

For iOS they have a local control app, for Android as I understand there is a button for local control.

Unfortunately I do not own an Arctic Spa to investigate it myself, but happy to provide more ideas and ways how to tinker with it.

Iā€™ve gotten access to their API since I asked about it 6 months ago. I think itā€™s still under development, so it might not be open for everyone.

Arctic Spas Public API (myarcticspa.com)

https://myarcticspa.com/spa/SpaAPIManagement.aspx

My experience with custom HA sensors and switches and APIs are limited, but I managed to create sensors from the status API.

sensor:
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Temperature"
  value_template: '{{ value_json.temperatureF }}'
  scan_interval: 900
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Temperature Setpoint"
  value_template: '{{ value_json.setpointF }}'
  scan_interval: 900
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Lights"
  value_template: '{{ value_json.lights }}'
  scan_interval: 900
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Pump 1"
  value_template: '{{ value_json.pump1 }}'
  scan_interval: 900
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Pump 2"
  value_template: '{{ value_json.pump2 }}'
  scan_interval: 900
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Pump 3"
  value_template: '{{ value_json.pump3 }}'
  scan_interval: 900
- platform: rest
  resource: https://api.myarcticspa.com/v2/spa/status
  headers: 
    X-API-KEY: !secret arctic_spa_apikey
    Content-Type: application/json
  method: GET
  name: "Arctic Spa Pump 4"
  value_template: '{{ value_json.pump4 }}'
  scan_interval: 900

Is there anyone that can help me figure out how to make a switch? I guess I need to specify payload in some kind of format, and do I also have to get the current status of the light?
The curl command to turn on the light:
image

1 Like

Does all the status comes from that single endpoint?

You could create a RESTFul sensor and add all the details into separate ā€œtemplateā€ sensors from that. They are actually part of the same rest call. So you would not call 7 times the same endpoint every 900 seconds (15 minutes). But you could call it every 120 seconds and get all 7 at once.

For creating a switch you will need the RESTful Switch:

The integration has the option to verify the value of the switch as well. The example at the bottom of the page will have mostly everything what you need!

Hi, yes they come from the same endpoint. I created a seperate topic for the API. Itā€™s now pulling the data into binary sensors with a single call.

1 Like

Hi Iā€™m Paul, and recently Iā€™ve been trying to experiment with my spa but I need access to my API key. By any chance did you ever find out how to get it?

@dagm - how did you get early access to the API? Did you email someone? Your API Management link doesnā€™t work for me. I suspect that is where you would create an X-API-KEY for authentication to your account. Otherwise, Iā€™ll also need help getting the X-API-KEY.

I asked them a year ago if they had an API. He contacted me later and asked if I wanted early access to the API. Iā€™ll send you his email by PM.