Skip to content

Instantly share code, notes, and snippets.

@bertrandmartel
Last active October 31, 2018 18:02
Show Gist options
  • Save bertrandmartel/f28caa2a49c99ac4da07be502a62fd13 to your computer and use it in GitHub Desktop.
Save bertrandmartel/f28caa2a49c99ac4da07be502a62fd13 to your computer and use it in GitHub Desktop.
A bash script checking an IFTTT applet using curl and pup
#!/bin/bash
rm -f cookies.txt
username="YOUR_USERNAME"
password="YOUR_PASSWORD"
slug="some_service_staging"
applet_id="88014779d"
user_agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36"
login=$(curl -s 'https://ifttt.com/login?wp_=1' \
-H "user-agent: $user_agent" \
-c cookies.txt)
csrf_token=$(echo "$login" | pup 'meta[name="csrf-token"] attr{content}')
echo "csrf_token : $csrf_token"
curl -s 'https://ifttt.com/session' \
-X POST \
-H "user-agent: $user_agent" \
--data-urlencode "utf8=✓" \
--data-urlencode "authenticity_token=$csrf_token" \
--data-urlencode "return_to=" \
--data-urlencode "user%5Busername%5D=$username" \
--data-urlencode "user%5Bpassword%5D=$password" \
--data-urlencode "commit=Sign+in" \
-b cookies.txt -c cookies.txt -o /dev/null -w "session : %{http_code}\n"
curl -s "https://ifttt.com/services/$slug/applets/$applet_id/check" \
-H "user-agent: $user_agent" \
-H "X-CSRF-Token: $csrf_token" \
--data '' -b cookies.txt -c cookies.txt -o /dev/null -w "check applet : %{http_code}\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment