Documentation regarding the API endpoints

I can’t seem to find any documentation regarding the payload for API access to the PioReactor.

I have been looking at the requests sent by the UI so far but recently updated the PioReactor and realized that payloads have changed.

Any help would be greatly appreciated.

Any idea how to get the type of automation currently running? I am able to see if a temp automation is running or not, but can’t seem to find the actual running one (only_record_temp or thermostat). Same for the stirring etc.

1 Like

This might provide some additional context to @linx5o’s question:

Hi @linx5o,

So our web API is pretty unstable as you’ve seen, with big changes most recently occurring in the 24.9.17 release.

The endpoints are available here: API | Pioreactor Docs

and the payloads aren’t documented (yet), but can be reverse engineered from our Flask code: pioreactorui/pioreactorui/api.py at master · Pioreactor/pioreactorui · GitHub

(Note that the pioreactorui repository contains the history of our API in git, so if you’re not on the most recent-ish release, you’ll have to use the github UI to find the correct endpoint code)

Any idea how to get the type of automation currently running? I am able to see if a temp automation is running or not, but can’t seem to find the actual running one (only_record_temp or thermostat). Same for the stirring etc.

Hm, that’s not exposed via the API, but it should be! For data like that (and some realtime data that populates part of the UI), you’ll have to use MQTT to fetch it.

2 Likes

Any idea how to get the type of automation currently running? I am able to see if a temp automation is running or not, but can’t seem to find the actual running one (only_record_temp or thermostat). Same for the stirring etc.

Lots of new APIs in New Pioreactor release: 24.10.29 that should solve this. Example:

curl http://pio01.local/unit_api/jobs/settings/job_name/temperature_automation/setting/automation_name

should return, for example, data with thermostat

2 Likes