GitHub Enterprise Server

Integrating Percy with GitHub Enterprise Server enables you to perform visual and code reviews together. It also facilitates visual reviews by allowing you to access the status of Percy builds on your pull requests, making it easy for your team to review visual differences. Learn more about how our source code integrations work.


GitHub Enterprise Cloud

If your GitHub Enterprise account is hosted on, you can use our regular GitHub integration.

Integrate Percy with self-hosted GitHub Enterprise Server

Percy Enterprise customers who self-host their GitHub Enterprise installation can take advantage of our GitHub Enterprise Server integration.

To integrate Percy with GitHub Enterprise Server, follow these steps:

  1. Go to the Integrations page, and click Install for GitHub Enterprise Server.
  1. Click Add App.
  1. In the Host field, enter your GitHub Enterprise domain name and click Validate.
  1. Upon successful validation, click Create App. You're directed to the GitHub Enterprise Server login page.
  1. Log in with your GitHub Enterprise Server account credentials.
  1. Enter a GitHub App name and click Create GitHub App for . You're directed to the Percy dashboard.
  1. Click Install App.
  1. Select an account/organization to install the app that you created. It is recommended to choose an organization.
  1. Select the repositories that you want to access from Percy and click Install.
    • If you want to access all the repositories, select All repositories.
  • If you want to access specific repositories, select Only select repositories.
  1. Go to the Integrations page. Under the Linked Projects section, link your Percy projects with the relevant repositories.
  • When you select All repositories, all repositories are available. Search the required repositories and link your Percy projects with the same.
  • When you select Only select repositories, specific repositories are available. Search the required repositories and link your Percy projects with the same.

Note:If you want to install the same app for another organization, or add more repositories from your current organization, click Install App on the Integrations page again, select the organization, and then repeat the steps 8 through 10.


  • If your GitHub Enterprise Server instance is accessible to everyone over the internet, then you do not need any specific network configurations.

  • If your GitHub instance does not allow public IPs to access it, then you have to allowlist the Percy's IPs in your firewall.

  • If you specifically restrict Percy to only use certain endpoints on your GitHub Enterprise Server, then you have to allowlist a few endpoints in your firewall or on your GitHub Enterprise Server. The following table lists the endpoints, their usage, and the required permissions:

Commit statusesPercy sets commit statuses.Read and write access to commit statuses.
1. Retrieve a commit
2. Retrieve a pull request
3. Compare two commits
4. GitHub Meta information
1. If you don't define the optional environment variables, Percy can call these 4 endpoints.
2. Percy receives a webhook when an app is uninstalled from a user account.
Read access to code and metadata.

Related Documentation: Permissions required for GitHub Apps - GitHub Docs, Webhook events and payloads - GitHub Docs.

Note: If the user account of an app owner is deactivated or deleted, the app becomes inaccessible or is uninstalled. To prevent this, transfer the app before deactivating or deleting the account.