Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Simple Github -> Discord webhook

Step 1 - Make a Discord Webhook

  1. Find the Discord channel in which you would like to send commits and other updates

  2. In the settings for that channel, find the Webhooks option and create a new webhook. Note: Do NOT give this URL out to the public. Anyone or service can post messages to this channel, without even needing to be in the server. Keep it safe! WebhookDiscord

Step 2 - Set up the webhook on Github

  1. Navigate to your repository on Github, and open the Settings Settings

  2. Select Add Webhook Add

  3. Paste in the webhook url and append /github to the end. Select "Send me everything", set the type to application/json, and then Add Webhook WebhookSettings

  4. Test it by updating something or starring the repository! If it works, you're all set! Star

@ishini-peiris
Copy link

Can we duplicate the same webhook on different repositories?

@ABUCKY0
Copy link

ABUCKY0 commented Aug 6, 2022

Probabaly

Can we duplicate the same webhook on different repositories?

@TerrrorByte
Copy link

Can we duplicate the same webhook on different repositories?

Webhooks are just a way to deliver messages. You can use the same webhook on multiple different repos, but they will all deliver to the same Discord channel since Webhooks are channel specific afaik.

@Dyplay
Copy link

Dyplay commented Aug 25, 2022

thanks it worked!

@Dyplay
Copy link

Dyplay commented Aug 25, 2022

thanks it worked!

@SciTechEnthusiast
Copy link

SciTechEnthusiast commented Aug 29, 2022

same worked for me after redeliver till then it was showing error.

In the webhook url add /github suffix

select application/json

Also you can choose what updates you want.

image

if you are also getting 400 just go to recent deliveries and rerun
image

and here it is working

image

@TerrrorByte
Copy link

same worked for me after redeliver till then it was showing error.

In the webhook url add /github suffix

select application/json

Also you can choose what updates you want.

image

if you are also getting 400 just go to recent deliveries and rerun image

and here it is working

image

That was step 3 of the original gist, complete with screenshots…

@danieluac
Copy link

Thanks it worked for me too 🎉

@Brian-Pob
Copy link

Worked for me with no modifications. Thanks for the guide.

@Ahmed3457
Copy link

Works fine thank you so much

@zocker-160
Copy link

thank you, worked perfectly

@r-coh
Copy link

r-coh commented Oct 13, 2022

Gracias.

@Kipjr
Copy link

Kipjr commented Oct 15, 2022

image
I only received this after configuring the webhook. Any idea how to fix it?

@Kipjr
Copy link

Kipjr commented Oct 15, 2022

image
Fixed using Discord settings

@StephenHodgson
Copy link

Anyone know how to setup for private channel?

@foxt
Copy link

foxt commented Nov 15, 2022

@StephenHodgson setting up a webhook for a private channel is the same as setting up for a public 😋

@StephenHodgson
Copy link

I figured out what I did wrong. Needed to add /github to the end of my webhook url

@Zement
Copy link

Zement commented Nov 19, 2022

It's been working great for a long time! 🙂
Question: Does it also work for an entire organization and all repos from that org, or would I have to do it separately?

@TheJeterLP
Copy link

It's been working great for a long time! 🙂 Question: Does it also work for an entire organization and all repos from that org, or would I have to do it separately?

I tried to do it for the entire organization, github sends the post events out, but nothing happens in the desired channel.

@brndto
Copy link

brndto commented Dec 22, 2022

It's been working great for a long time! 🙂 Question: Does it also work for an entire organization and all repos from that org, or would I have to do it separately?

I tried to do it for the entire organization, github sends the post events out, but nothing happens in the desired channel.

Did you check the errors in the Github webhook's recent deliveries area? I accidentally forgot to change it to the content type application/json when I set mine up but it seems to work fine now.

@TheJeterLP
Copy link

Did you check the errors in the Github webhook's recent deliveries area? I accidentally forgot to change it to the content type application/json when I set mine up but it seems to work fine now.

Yes I did, they all get delivered. It did work, but only new commits got displayed in discord. Nothing else, altho I choose to deliver everything.

@TheJeterLP
Copy link

Must be an issue on discords side...

@RealDogDad
Copy link

Preesh, this is clutch

@husamhabib
Copy link

I was able to successfully add these webhooks using the Github CLI. Here is a slimmed down version of code. Hope some find this helpful. Cheers!

# raw copy of discord channel webhook URL
discord_webhook=""
url="${discord_webhook}/github"
# your target github org
org=""
# your target github org repo
repo=""

gh api /repos/"${org}"/"${repo}"/hooks \
  --input - <<< "{
  \"name\": \"web\",
  \"active\": true,
  \"events\": [
    \"*\"
  ],
  \"config\": {
    \"url\": \"${url}\",
    \"content_type\": \"json\"
  }
}"

where to write this ?

@aallbrig
Copy link

@husamhabib Into a terminal of some kind. You have to have the GitHub CLI installed. If you're on windows you may want to use git bash?

Props to seeing my comment. I've been seeing the chatter but you're the first person to see the CLI stuff..!

@tungdt-90
Copy link

It works for a single repo, but when I add it to the organization's webhook, Discord will not post any message.

@Vedsaga
Copy link

Vedsaga commented Feb 9, 2023

It works for a single repo, but when I add it to the organization's webhook, Discord will not post any message.

exactly, didn't working for me also... just seeing what is going wrong...

@tungdt-90
Copy link

@Vedsaga Actually, after a while, it kind of works for me. My discord server got updates from some repos, but some other repos simply stay silent. I'm not sure what the cause was, but in the meantime, I created several webhooks for different repos.

@Benjamin1021523
Copy link

image
It works! thx

@Vedsaga
Copy link

Vedsaga commented Mar 25, 2023

Yes it dose work after like some time...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment