Thinking Cleaner API

Home Automation

Interfacing to the Thinking Cleaner

Currently available plugins/drivers for home automation systems (Domotica):
- IFTTT (using Maker channel)
- Homey
- Thermosmart (in development)
- HomeWizard
- Gira Homeserver (KNX)
- Fibaro
- SmartThings
- Pebble
- Vera Mios
- HomeSeer
- Indigo domotics (in development)
- Hubware SARAH
- Homekit
- Universal API. There is an API available for all other systems. If you make a plugin/driver then please let us know!
- Public server API

Scroll down for more information on the available plugins...

IFTTTIFTTT (using Maker channel)
You can use IFTTT to start Cleaning or Dock your Thinking Cleaner. To do this you can use the Maker channel. For more information please visit the IFTTT setup page.

We still need your help for our own channel!
Unfortunately we still do not have an IFTTT channel. We have applied for one several times but still no channel. So if you would like to see a dedicated IFTTT Thinking Cleaner channel then please send a message to @IFTTT on twitter or IFTTT on facebook and ask for Thinking Cleaner support. Maybe this will help to get our own IFTTT channel soon!

Homey compatible:Homey
For Homey a Thinking Cleaner app is available in the Homey app-store.


Thermosmart ( will also have Thinking Cleaner support soon.

HomeWizard compatible:HomeWizard
Thinking Cleaner is integrated in HomeWizard. You can add a Thinking Cleaner in the Add Sensor menu of the HomeWizard app. The Thinking Cleaner is added as a switch and can be used in Scenes to start the Thinking cleaner on conditions you select.


Gira Homeserver (KNX):
Gira Homeserver has an easy interface to add HTTP commands to the system. Example of a HTTP command to start Roomba: http://IP_ROOMBA/command.json?command=clean
For reading back data from the Thinking Cleaner we have a Gira Homeserver compatible XML file. More info on this XML file and the commands that can be sent to the Thinking Cleaner can be found in our Thinking Cleaner API document.


For Fibaro there is a nice plugin available. Please go to the Fibatro forum site to get the files. Fibaro forum link.

Fibaro plugin on Android

SmartThings plugin (pmjoen):SmartThings
If you have a Roomba and want it to clean your home with the magic and control of Smartthings, this is for you! Using this device type and smart app you can integrate your Roomba with the Thinking Cleaner wifi module and control when and how it cleans your house.
This is the link to the SmartThings community.

Pebble app (crafted by Tim):Pebble
If you have a Pebble then go to the Pebble app store and download the app: Pebble app store.

Pebble app screenshot 0   Pebble app screenshot 1   Pebble app screenshot 2

Vera Mios plugin (made by OtelConsulting):Vera

The Vera Mios plugin is available for download here:

Vera Mios app store.

Vera screenshot 0   Vera screenshot 1

HomeSeer plugin (made by Rien):Homeseer

The HomeSeer plugin is now available in the Homeseer app store. ••• It is a free pluging thanks to Rien du Pre. Here is a link to pdf documentation.

Homeseer screenshot 1

Indigo Domotics:Indigo domotics
Click here for the indigo plugin voor Thinking Cleaner.


Thinking Cleaner is pre installed on every SARAH Version (SARAH basic, standard and pro). The user just has to activate the gateway and SARAH starts to look for Thinking Cleaner Devices within their WLAN.
SARAH allows to place and steer Roomba on visual floorplans. Roomba can also be integrated into Scenes (e.g. ‘Cleaning Scene’) and also combined with triggers within ITTT automations.

FHEM Home automation:FHEM logo
Thanks to Julian the OpenSource home automation platform FHEM now supports the Thinking Cleaner. FHEM also supports Homekit integration (using it's own homebridge-fhem implementatipon) so THINKINGCLEANER indirectly also offers an alternative option for Homekit connectivity. Click here for more information.

The current version of Thinking Cleaner does not support Homekit out-of-the-box because of the extra hardware that is needed for encryption. But you can run a Homekit server app ( ) on a local computer (or a minicomputer like the Raspberry Pi, with NodeJS) and a Homekit app on your phone (like MyTouchHome, Insteon+ or other apps) and then it is possible to use Siri to start your Roomba. For example you can use the Thinking Cleaner plugin for Homebridge: Thinking Cleaner plugin for Homebridge.


For all other home automation systems there is an API available:Thinking Cleaner API

A json API is available for direct communication with the Thinking Cleaner module. Everyone can build their own app or home automation plugin to control the Thinking Cleaner module. This way we are platform independent.
Most API communication is with json commands but to be able to support as many home automation systems as possible we also added XML files with status information.

WEBHOOK (web callback or HTTP push API, available in firmware 1.0.80 and newer)
The latest API doc also describes the use of Webhooks for your own server use.
The documentation of the API is available for download here. Please note that this API is still under development and can be changed without notice.
Current document version is V1.8.

Public server API
The Thinking Cleaner server has a public API. The Thinking Cleaner Server uses OAuth2 for authorization ( If you are a developer and want to use this API, please send a request to and we will send you an application key and secret.

At the moment, the following queries are available:

get '/oapi/v1/devices'

This request returns all devices the user has registered. Also devices that are currently offline. If you want to see all available devices in the local network, use '/api/v1/discover/devices'.

get '/devices/'

This request will return the status of the device.

get '/devices//pending_commands'

Returns all pending commands for a device. Once a command has been send to the server, it can take up to 1 minute before a device picks up the command. Once the device has picked up the command, it’s popped off the queue. If a device is offline, the commands will stay in the queue.

post '/devices/:uuid/add_command'

This request requires the parameter 'command' in the post body. The following commands are valid: clean, dock, find_me, max and stop.

clean: start cleaning
dock: start docking
find_me: will play the 'find me' sound on the Roomba
max: will start a max cleaning (clean until battery is almost empty and then dock)
stop: force stop the Roomba