Another option: Use HomeAssistant for the user friendly interface (fancy buttons, value display, you-name-it), and use NodeRED for the logic. The HomeAssistant nodes are quite decent, it‘s how I‘ve set things up at home.
That said I only use smart devices I control over my LAN and none that require I interact with a companies provided API.