This webhook bases on deprecated concept that is GitHub Services
First, create the stream you'd like to use for GitHub notifications,
and subscribe all interested parties to this stream. The integration will
use the default stream commits
if no stream is supplied in
the hook; you still need to create the stream even if you are using this
default.
Next, go to your repository page and click "Settings":
From there, select "Webhooks & Services":
To find the Zulip hook, you have to click on Configure services.
Select "Zulip" from the list of service hooks. Fill in
the API key and email address for your bot and check
the "active" checkbox. Specify
{{ external_api_uri_subdomain }}/v1/external/github
as the "Alternative
endpoint". You can optionally supply the Zulip stream (the
default is commits
) and restrict Zulip
notifications to a specified set of branches.
Further configuration is possible. By default, commits traffic (pushes, commit comments), GitHub issues traffic, and pull requests are enabled. You can exclude certain types of traffic via the checkboxes. If you want commit traffic, issue traffic, and pull requests to go to different places, you can use the Commit Stream and Issue Stream overrides; otherwise, it is safe to leave these fields blank and just have it default to the Stream setting.
Click the "Update settings" button to complete the configuration:
Congratulations! You're done!
When team members push to
your repository, you'll get a Zulip notification that looks like this: