All Collections
Advanced Setup
Setup GitHub Enterprise Self-hosted
Setup GitHub Enterprise Self-hosted

Setup Haystack for self-hosted Github Enterprise.

Julian Colina avatar
Written by Julian Colina
Updated over a week ago


For GitHub Enterprise (GHE) integrations, there are 4 high-level steps

  1. Open GHE firewall to Haystack IPs

  2. Create the Haystack Github App

  3. Generate App secrets

  4. Install organization to the newly created GitHub App

  5. Provide Haystack with the App secrets

Afterward, you’ll be able to see your organization's data on and get all updates at the same speed as Cloud users.

You can find detailed instructions on each step below.

1. Open GHE firewall to Haystack IPs

Haystack API uses the following IP addresses to connect to GHE.

For Haystack to access your servers, we'll need open firewall access to the given IPs.

2. Create the Haystack GitHub App

Open the organization you want Haystack to access, and go to the Settings page. Then, go to GitHub Apps in the Developer Settings.

Click New GitHub App.

Here, fill in the following fields according to the detail below:

Register new GitHub App



Haystack requires the following permissions to give you insights. These permissions are in read-only mode:

Repository permissions:

  • Actions

  • Administration

  • Checks

  • Contents

  • Deployments

  • Issues

  • Metadata

  • Pages

  • Pull requests

  • Webhooks

  • Projects

  • Commit statuses

  • Dependabot alerts

Organization permissions:

  • Members

  • Administration

  • Webhooks

  • Plan

  • Projects

  • Blocking users

  • Team discussions

User permissions:

  • No access to all

Subscribe to events

Check the following items

  • Meta

  • Check suite

  • Create

  • Deployment key

  • Fork

  • Issue comment

  • Label

  • Member

  • Page build

  • Project card

  • Public

  • Pull request review

  • Push

  • Repository

  • Status

  • Team add

  • Org block

  • Security advisory

  • Check run

  • Commit comment

  • Delete

  • Deployment

  • Deployment status

  • Gollum

  • Issues

  • Milestone

  • Membership

  • Organization

  • Project

  • Project column

  • Pull request

  • Pull request review comment

  • Release

  • Repository dispatch

  • Star

  • Team

  • Watch

In the final step, make sure to select Any account and click Create Github App:

3. Generate App secrets

Take notes on the following items in a secure place.

  • App ID

  • Client ID

  • Client secret

  • Public link

  • Webhook Secret (generated in the previous step)

  • Private Key

On the same page, go to the Private keys section and press Generate a private key.

4. Install organization to the newly created GitHub App

We have created a GitHub App. Now we should allow the app to have access to the organizations you'd like to get insights.

On the left bar, go to Install App and press the Install button for the organizations you want Haystack to have access to.

Note: You can install one or more organizations.

Afterward, select the repositories you'd like to get insights into and press Install.

5. Provide Haystack with the App secrets

Haystack needs the following information to complete the installation process. Send us the following information via a secure channel.

  • App ID

  • Client ID

  • Client secret

  • Public link

  • Webhook Secret

  • Private Key

You have installed Haystack on your GitHub Enterprise organization successfully! We will contact you once your data is fetched.

Did this answer your question?