Voice Monkey
Alexa Echo Device + IFTTT

Connect IFTTT to Alexa

Trigger Alexa Routines, make Echo announcements, and show images or videos on Echo Shows — all from any IFTTT applet.

A bit of history: Amazon retired the native Alexa ↔ IFTTT integration on 31 October 2023, so you can no longer say "Alexa, trigger applet" or pick IFTTT as an Alexa Routine action. Voice Monkey replaces both directions — either through the Voice Monkey IFTTT service or plain HTTP calls to the V3 API.

IFTTT (If This Then That) connects 100s of apps and services. Pair it with Voice Monkey and you can move events in either direction between IFTTT and Alexa:

  • IFTTT → Alexa: any IFTTT trigger can fire an Alexa Routine, make an Echo speak, or display an image / video on a screen-enabled Echo.
  • Alexa → IFTTT: an Alexa Routine (or Voice Monkey Flow) can call an IFTTT Webhook URL to start any applet.

There are two ways to plumb IFTTT into Voice Monkey:

  1. The native Voice Monkey IFTTT service — ready-made actions you can drop straight into an applet. Easiest for non-technical setups.
  2. Plain HTTP via the Webhooks service — call the Trigger API or Announcement API directly. More flexible and uses the full V3 feature set (voices, chimes, media, variables, Flows).

Option 1 — the Voice Monkey IFTTT service

Voice Monkey publishes a first-party IFTTT service, so you can build applets without touching Webhooks. The service still uses the original "Monkey" terminology — a Monkey in IFTTT maps to a Routine Trigger device (or Speaker device) in the V3 console.

Triggers, queries and actions

Name Type What it does
Trigger Monkey (Routine) Action Fires a Voice Monkey Routine Trigger device (a "Monkey") so the Alexa Routine wired to it runs. Pass any variables you need as IFTTT ingredients.
Make announcement Action Speaks the text you supply on an Echo. Text can be dynamic (pull in an IFTTT ingredient like weather, SMS body or calendar title). Requires the Voice Monkey skill to be opened as the final action of the target Alexa Routine — see the note below.
Display image Action Shows an image on a screen-enabled Echo (Show / Spot / Hub). Image must be hosted on a publicly reachable HTTPS URL. Requires the skill to be opened at the end of the Routine.
Display video Action Plays a video on a screen-enabled Echo. MP4 only, hosted on a publicly reachable HTTPS URL. Requires the skill to be opened at the end of the Routine.
My monkeys Query (Pro+) Returns the list of Voice Monkey devices on your account so an IFTTT applet can iterate over them. Pro+ only.

There are currently no IFTTT triggers in the service — Alexa → IFTTT flows use the Webhooks approach covered further down.

Step 1 — connect the service

  1. Sign up for a free Voice Monkey account (or sign in).
  2. On IFTTT, search for Voice Monkey and connect the service. You'll be redirected to Voice Monkey to authorise IFTTT against your account.

Step 2 — trigger an Alexa Routine

  1. In the Voice Monkey console, create a Routine Trigger device (your "Monkey"). Follow Add a device to link it in the Alexa app.
  2. Build an Alexa Routine whose "When this happens" is your new device and whose action is whatever you want (lights, scenes, media, another Routine…).
  3. On IFTTT, create an applet. Choose any service as the "If This", then pick Voice Monkey → Trigger Monkey (Routine) as the "Then That" and select your device from the dropdown.

Step 3 — make Alexa speak, show an image, or play a video

Heads up — legacy flow. The Make announcement, Display image and Display video actions are wrappers around the original V1 delivery method, which requires the Voice Monkey skill to be opened as the final action of an Alexa Routine on the target Echo. You'll need to:
  1. Build an Alexa Routine on the target Echo whose last action is "Skills → Voice Monkey → Launch".
  2. Have IFTTT call Trigger Monkey first (to fire that Routine) and call the announcement / image / video action so Voice Monkey has content queued for when the skill opens.

If that sounds fiddly, skip to Option 2 — Webhooks. The V3 /announce endpoint speaks directly on a Speaker device without the skill-opening dance and supports voices, chimes, language overrides, audio tracks, on-screen text and media — none of which the IFTTT service exposes today.

Option 2 — Webhooks to the Voice Monkey V3 API

This is the modern path. Instead of the branded IFTTT service you use the generic Webhooks service and call api-v3.voicemonkey.io directly. It's a single HTTP request, no skill-opening required, and it unlocks the full V3 feature set (voices, chimes, media, variables, Flows).

The easy way: generate the URL in the Playground

The API Playground builds the exact URL to paste into IFTTT. Choose Trigger or Announce, pick your device, fill in the speech, switch to the URL snippet and copy. You can skip the rest of this section if you're in a hurry.

Trigger an Alexa Routine via Webhooks

  1. Create a Routine Trigger device and wire it into an Alexa Routine (same as Option 1).
  2. Copy the trigger URL for the device:
    https://api-v3.voicemonkey.io/trigger?token=YOUR_TOKEN&device=YOUR_TRIGGER_DEVICE_ID
  3. On IFTTT, add a Webhooks → Make a web request action. Paste the URL, set Method to GET, leave headers / body blank, save.

Make Alexa speak via Webhooks

  1. Create a Speaker device in Voice Monkey and link it to the target Echo — see Add a device.
  2. In IFTTT, add a Webhooks → Make a web request action configured like this:
    • URL: https://api-v3.voicemonkey.io/announce
    • Method: POST
    • Content Type: application/json
    • Body:
      {
        "token": "YOUR_TOKEN",
        "device": "YOUR_SPEAKER_DEVICE_ID",
        "speech": "{{Value1}}"
      }
  3. Replace {{Value1}} with any IFTTT ingredient you want Alexa to read out — SMS body, weather condition, calendar title, etc. IFTTT interpolates ingredients into the JSON body before sending.

If an ingredient doesn't interpolate cleanly into JSON, fall back to a one-line GET:

https://api-v3.voicemonkey.io/announce?token=YOUR_TOKEN&device=YOUR_SPEAKER_DEVICE_ID&speech=Motion%20at%20the%20front%20door

/announce also supports media (audio, video, images), voice and language overrides, chimes, and on-screen text — see the full Announcement API reference.

Alexa → IFTTT: start any applet from a Routine

Going the other way, an Alexa Routine can start an IFTTT applet by calling the applet's Webhook URL.

  1. Open ifttt.com/maker_webhooks → Settings to copy your unique key. Your webhook URL is then https://maker.ifttt.com/trigger/{event}/with/key/YOUR_KEY.
  2. Create an IFTTT applet whose trigger is Webhooks → Receive a web request with an event name of your choice (e.g. goodnight).
  3. In Voice Monkey, build a Flow whose first step is an HTTP request to that webhook URL.
  4. In the Alexa app, create a Routine that runs your Flow — either via a Voice Monkey Routine Trigger device or by picking the Flow directly as an action. See the HTTP requests from an Alexa Routine guide for the full walk-through.

Worked example: announce camera motion on the kitchen Echo

Wire a third-party camera that isn't natively supported by Alexa Routines into an Echo announcement using Webhooks (Option 2):

  1. IFTTT trigger: "Motion detected in zone" on your camera service.
  2. IFTTT action: Webhooks → POST https://api-v3.voicemonkey.io/announce with the JSON body shown above, setting speech to "Motion detected by the {{CameraName}} at {{OccurredAt}}".
  3. Voice Monkey speaks on the Speaker device you chose — no Alexa Routine required.

Which option should I pick?

  • Native IFTTT service — easiest if you only need to fire an Alexa Routine, or you're fine with the skill-opening flow for announcements. Zero config beyond authorising the service.
  • Webhooks → V3 API — pick this for announcements (no skill-opening), dynamic voices, chimes, media, on-screen text, or any time you want to pass data into a Voice Monkey Flow via var- parameters.

Tips

  • Treat your API token like a password — create a scoped one at app.voicemonkey.io/tokens and rotate it if it leaks. The native IFTTT service uses OAuth, so you can revoke its access separately from ifttt.com/my_services.
  • Need conditional logic, multiple announcements, or waits between steps? Have IFTTT hit POST /flow and build the logic as a Flow instead of chaining applets.
  • Any parameter prefixed with var- on a /trigger, /announce or /flow call upserts a variable in the same request — useful for passing IFTTT ingredients (camera name, weather condition) into downstream Flows or Routines.
  • IFTTT Pro applets can call multiple actions, so you can fire /trigger and /announce from a single trigger if you want both a Routine and a spoken notification.

Ideas for IFTTT recipes

  • Turn on lights when a non-Alexa camera detects motion. Great for older cameras that aren't first-class Alexa Routine triggers.
  • Announce severe weather alerts. Use Weather Underground as the trigger and /announce to read the warning aloud.
  • Arrival announcements. A phone's Location entering a geofence → announce "Sam's home" on the kitchen Echo.
  • Calendar reminders with context. Google Calendar event starts → announce the title and location on all downstairs Echoes.
  • Email-to-Echo. Gmail "new labelled email" → speak the subject line on the office Echo Show.

Sound good?

Get started on our generous free plan — no credit card required.