143 docs
Self-hosting

GitHub App setup

Create and configure the GitHub App required for a self-hosted 143 deployment.

In a self-hosted deployment, the GitHub App is both the repository access mechanism and the webhook source. Configure it before importing repositories or routing issue, PR, and review events into 143.

Create the app

Create a new GitHub App under the GitHub organization or account that will own the integration.
Set the homepage URL to your 143 deployment URL.
Set callback URLs to the OAuth callback route exposed by your deployment.
Generate a private key and store it in your encrypted deployment secrets.
Install the app on the repositories 143 should access.

Required values

You will need:

  • App ID.
  • Client ID.
  • Client secret.
  • Webhook secret.
  • Private key.
  • Installation ID after install.

Webhooks

Webhook delivery must reach your public API origin. Use a stable HTTPS URL and verify that the webhook secret in GitHub matches the deployment secret.

Permissions and events

Configure these GitHub App permissions:

  • Repository Contents: Read & Write.
  • Repository Pull requests: Read & Write.
  • Repository Workflows: Read & Write.
  • Repository Issues: Read.
  • Repository Checks: Read.
  • Repository Deployments: Read.
  • Repository Metadata: Read.
  • Organization Members: Read.

Subscribe the app to these webhook events:

  • Installation.
  • Installation repositories.
  • Pull request.
  • Pull request review.
  • Pull request review comment.
  • Deployment status.
  • Organization.

The Organization Members permission and Organization webhook event power GitHub organization auto-join by allowing 143 to sync org member rosters and react when members are added, removed, or the GitHub organization is renamed.

Secrets

Do not commit the GitHub App private key, client secret, or webhook secret. Store them through the deployment's encrypted secret flow.

On this page