Home

Alexa Shopping Lists to Anywhere

A problem I've been trying to solve for longer than I'm proud of is escaping Amazon's silo with my data, specifically my family's "Alexa Lists". We use these lists mainly for shopping, but separate lists for different stores so we don't have to think about that later.

Several solutions exist for getting the items out of the default lists -- Todoist does this really well for the "Shopping List" and the "To-do List", but doesn't handle custom lists. If I had to guess, this is because their free tier only supports 5 projects, but that's just speculation. AnyList is another option that looks like it works, although I don't have any experience with it.

But I wanted more control. I've tried several times to build an Alexa skill from scratch that handles this and I've always had trouble with getting individual item events to send to the skill. Despite following the documentation slowly and carefully.

But that's okay! @jsetton made a Skill that synced to OurGroceries (props Jeremy!) and the code was adaptable to my mission: full custom list syncing.

Introducing alexa-lists-event-forwarder. Run a few commands locally, replace some values, do some clicking on Amazon's side, run a couple more commands, and you have a personalized dev-mode Skill that you can enable in the Alexa app that will send all events from your lists to wherever you like.

If you're using N8N, you can make a webhook receiver and send your data there. Same with Windmill.

In my case, I have a custom Express app running that receives all of these events, does some text modification, and creates items on my Home Assistant shopping list. In any case, this is very flexible if a bit more complicated than other setups.

Hopefully this works for others!