{"registry_version":"2026.1025.387","generated_at":"2026-10-25T06:27:00Z","content_sha256":"089d16f627d9365e3d0663cc8069203706d7cb23a76c332226e29686968811a5","signed":true,"signature":{"key_id":"ed25519:74ca19268e364242","algorithm":"ed25519","expires_at":"2026-11-24T06:27:09Z","expired":false,"manifest":"/registry/manifest.json"},"id":"github/github-app","name":"GitHub App","vendor":"GitHub","status":"researched","last_verified":null,"last_researched":"2026-10-25","summary":"Register a GitHub App with fine-grained permissions and webhooks, generate a private key, and install it on accounts or repositories; paid Marketplace listings need a verified-publisher organisation.","account_model":{"summary":"A GitHub App is owned by a personal account or an organisation and is installed on accounts/repositories.","accounts":[{"name":"GitHub account or organisation (owner)","kind":"developer","required":true,"note":"Paid Marketplace listings require an organisation that is a verified publisher."}]},"prerequisites":[],"identity_requires":[],"have_ready":[{"kind":"other","description":"A public HTTPS webhook URL (if the app receives events)","why":null,"needed_for":["register"],"auto_check":"none","source_url":"https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/registering-a-github-app"}],"steps":[{"id":"register","title":"Register the GitHub App","summary":"Developer settings > GitHub Apps > New GitHub App. Enter a unique name (34 chars max), homepage, callback URL, webhook URL and secret, minimum permissions, events, and where it can be installed.","route":"copilot","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":[],"optional":false,"url":"https://github.com/settings/apps/new","lead_time":null,"preflight":[],"captures":"GITHUB_APP_WEBHOOK_SECRET"},{"id":"private_key","title":"Generate a private key","summary":"Edit the app > Credentials > Key pairs > New key; a PEM file (PKCS#1 RSA) downloads. Store it safely; GitHub keeps only the public part.","route":"copilot","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":["register"],"optional":false,"url":"https://github.com/settings/apps","lead_time":null,"preflight":[],"captures":null},{"id":"install","title":"Install the app","summary":"From the app's public page choose Install and pick the account and repositories.","route":"copilot","gate":"human_submit","human_only":true,"gate_label":"You press submit","depends_on":["register"],"optional":false,"url":"https://github.com/settings/apps","lead_time":null,"preflight":[],"captures":null},{"id":"marketplace","title":"List on GitHub Marketplace (optional)","summary":"Meet listing requirements and accept the Marketplace Developer Agreement. Paid plans need a verified-publisher organisation (verified domain, support email, required 2FA) and at least 100 installations.","route":"guided","gate":"third_party_review","human_only":true,"gate_label":"The provider reviews it","depends_on":["install"],"optional":true,"url":"https://docs.github.com/en/apps/github-marketplace/creating-apps-for-github-marketplace/requirements-for-listing-an-app","lead_time":null,"preflight":[],"captures":null}],"gates":[{"step":"register","gate":"human_submit","label":"You press submit"},{"step":"private_key","gate":"human_submit","label":"You press submit"},{"step":"install","gate":"human_submit","label":"You press submit"},{"step":"marketplace","gate":"third_party_review","label":"The provider reviews it"}],"lead_times":[],"outputs":[{"name":"GITHUB_APP_ID","description":"Numeric App ID (shown on the app's General settings)","secret":false,"example_format":"123456","environments":null},{"name":"GITHUB_APP_CLIENT_ID","description":"App client ID (for user access tokens)","secret":false,"example_format":"opaque id string","environments":null},{"name":"GITHUB_APP_PRIVATE_KEY","description":"PEM private key file contents (PKCS#1 RSA) or path to it","secret":true,"example_format":"PEM text block, or ./github-app.pem","environments":null},{"name":"GITHUB_APP_WEBHOOK_SECRET","description":"Webhook secret you chose at registration","secret":true,"example_format":"random string you generate","environments":null}],"renewals":[],"estimated_minutes":null,"guide_url":"https://verapli.com/guides/github/github-app"}