Alexa Home Assistant Gateway Configuration

First, you need to make your home assistant server accessible from the internet. There is hass.io plugin available called “NGINX Home Assistant SSL proxy” that can help you with that. It works quite well together with DuckDNS addon that will get your SSL certificates and DNS set up. Alternatively, you can use “Nginx Proxy Manager” – a community plug in that is very straight forward to configure and your own DNS provider of choice.

Once your home Assistant Server is available over https, you need to generate an API token. To do so, go to your profile page at https://whatever-is-the.address-of-your-ha-server/profile or click on the bottom left round icon with your initials in the Home Assistant main menu. Scroll all the way down to the “Long-Lived Access Tokens” section, and click on Create Token. Give your token a name and click OK. make sure that you will copy the access token displayed as it will not be shown again. The token can be revoked at any time whenever you decide to stop using this skill.

Next we need to set up the Alexa integration. First, you will need to enable the alexa API and expose a few entities per this guide: https://www.home-assistant.io/components/alexa/#smart-home

A working example configuration that exports all lights, switches, thermostats and sensors via Alexa API:

alexa:
  smart_home:
    filter:
      include_domains:
        - light
        - switch
        - climate
        - sensor

Once you’re done with the above, go to https://haapi.easeit.cz self-service portal and link your amazon account with the home assistant API by providing the API URL and the API Password obtained in previous steps.

Finally, enable the Alexa skill linking it with your amazon account. Your devices should be discovered if everything was correctly set up.