Skip to content

Instantly share code, notes, and snippets.

@dasgoll
Forked from devStepsize/slack_webhook_post.py
Last active February 3, 2017 17:20
Show Gist options
  • Save dasgoll/41b678401d02258c8a555a8190325d97 to your computer and use it in GitHub Desktop.
Save dasgoll/41b678401d02258c8a555a8190325d97 to your computer and use it in GitHub Desktop.
POST a JSON payload to a Slack Incoming Webhook using Python requests
'''
This is an example of how to send data to Slack webhooks in Python with the
requests module.
Detailed documentation of Slack Incoming Webhooks:
https://api.slack.com/incoming-webhooks
'''
import json
import requests
# Set the webhook_url to the one provided by Slack when you create the webhook at https://my.slack.com/services/new/incoming-webhook/
webhook_url = 'https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX'
slack_data = {'text': "Sup! We're hacking shit together :spaghetti:", 'channel':'#goll', 'username':'elScript'}
response = requests.post(
webhook_url, data=json.dumps(slack_data),
headers={'Content-Type': 'application/json'}
)
if response.status_code != 200:
raise ValueError(
'Request to slack returned an error %s, the response is:\n%s'
% (response.status_code, response.text)
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment