Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

Creating a GitHub App using URL parameters

You can preselect the settings of a new GitHub App using URL query parameters to quickly set up the new GitHub App's configuration.

About GitHub App URL parameters

You can add query parameters to these URLs to preselect the configuration of a GitHub App on a personal or organization account:

  • Personal account: http(s)://HOSTNAME/settings/apps/new
  • Organization account: http(s)://HOSTNAME/organizations/:org/settings/apps/new

The person creating the app can edit the preselected values from the GitHub App registration page, before submitting the app. If you do not include required parameters in the URL query string, like name, the person creating the app will need to input a value before submitting the app.

For apps that require a secret to secure their webhook, the secret's value must be set in the form by the person creating the app, not by using query parameters. For more information, see "Una vez que tu servidor se configure para recibir cargas útiles, éste escuchará a cualquiera de ellas que se envíe a la terminal que configuraste.."

The following URL creates a new public app called octocat-github-app with a preconfigured description and callback URL. This URL also selects read and write permissions for checks, subscribes to the check_run and check_suite webhook events, and selects the option to request user authorization (OAuth) during installation:

http(s)://HOSTNAME/settings/apps/new?name=octocat-github-app&description=An%20Octocat%20App&callback_urls[]=https://example.com&request_oauth_on_install=true&public=true&checks=write&events[]=check_run&events[]=check_suite

The complete list of available query parameters, permissions, and events is listed in the sections below.

GitHub App configuration parameters

NameTypeDescription
namestringThe name of the GitHub App. Give your app a clear and succinct name. Your app cannot have the same name as an existing GitHub user, unless it is your own user or organization name. A slugged version of your app's name will be shown in the user interface when your integration takes an action.
descriptionstringA description of the GitHub App.
urlstringThe full URL of your GitHub App's website homepage.
callback_urlsarray of stringsA full URL to redirect to after someone authorizes an installation. You can provide up to 10 callback URLs. These URLs are used if your app needs to generate a user access token. For example, callback_urls[]=https://example.com&callback_urls[]=https://example-2.com. For more information, see "Al crear un GitHub App, puede especificar una URL de devolución de llamada.."
request_oauth_on_installbooleanIf your app authorizes users using the OAuth flow, you can set this option to true to allow people to authorize the app when they install it, saving a step. If you select this option, the setup_url becomes unavailable and users will be redirected to your callback_url after installing the app.
setup_urlstringThe full URL to redirect to after someone installs the GitHub App if the app requires additional setup after installation.
setup_on_updatebooleanSet to true to redirect people to the setup URL when installations have been updated, for example, after repositories are added or removed.
publicbooleanSet to true when your GitHub App is available to the public or false when it is only accessible to the owner of the app.
webhook_activebooleanSet to false to disable webhook. Webhook is enabled by default.
webhook_urlstringThe full URL that you would like to send webhook event payloads to.
eventsarray of stringsWebhook events. Some webhook events require read or write permissions for a resource before you can select the event when registering a new GitHub App. See the "GitHub App webhook events" section for available events and their required permissions. You can select multiple events in a query string. For example, events[]=public&events[]=label.
single_file_namestringThis is a narrowly-scoped permission that allows the app to access a single file in any repository. When you set the single_file permission to read or write, this field provides the path to the single file your GitHub App will manage. If you need to manage multiple files, see single_file_paths below.
single_file_pathsarray of stringsThis allows the app to access up ten specified files in a repository. When you set the single_file permission to read or write, this array can store the paths for up to ten files that your GitHub App will manage. These files all receive the same permission set by single_file, and do not have separate individual permissions. When two or more files are configured, the API returns multiple_single_files=true, otherwise it returns multiple_single_files=false.

GitHub App permissions

You can select permissions in a query string using the permission name in the following table as the query parameter name and the permission type as the query value. For example, to select Read & write permissions in the user interface for contents, your query string would include &contents=write. To select Read-only permissions in the user interface for blocking, your query string would include &blocking=read. To select no-access in the user interface for checks, your query string would not include the checks permission.

PermissionDescription
administrationGrants access to various endpoints for organization and repository administration. Can be one of: none, read, or write.
checksGrants access to the Checks API. Can be one of: none, read, or write.
contentsGrants access to various endpoints that allow you to modify repository contents. Can be one of: none, read, or write.
deploymentsGrants access to the Deployments API. Can be one of: none, read, or write.
emailsGrants access to the Emails API. Can be one of: none, read, or write.
followersGrants access to the Followers API. Can be one of: none, read, or write.
gpg_keysGrants access to the GPG Keys API. Can be one of: none, read, or write.
issuesGrants access to the Issues API. Can be one of: none, read, or write.
keysGrants access to the Public Keys API. Can be one of: none, read, or write.
membersGrants access to manage an organization's members. Can be one of: none, read, or write.
organization_hooksGrants access to the Organization Webhooks API. Can be one of: none, read, or write.
organization_planGrants access to get information about an organization's plan using the "Las organizaciones" endpoint. Can be one of: none or read.
organization_projectsGrants access to the Projects API. Can be one of: none, read, write, or admin.
pagesGrants access to the Pages API. Can be one of: none, read, or write.
planGrants access to get information about a user's GitHub plan using the "Usuarios" endpoint. Can be one of: none or read.
pull_requestsGrants access to various pull request endpoints. Can be one of: none, read, or write.
repository_hooksGrants access to the Repository Webhooks API. Can be one of: none, read, or write.
repository_projectsGrants access to the Projects API. Can be one of: none, read, write, or admin.
secret_scanning_alertsGrants access to the Secret scanning API. Can be one of: none, read, or write.
security_eventsGrants access to the Code scanning API. Can be one of: none, read, or write.
single_fileGrants access to the Contents API. Can be one of: none, read, or write.
starringGrants access to the Starring API. Can be one of: none, read, or write.
statusesGrants access to the Statuses API. Can be one of: none, read, or write.
team_discussionsGrants access to the Team Discussions API and the Team Discussion Comments API. Can be one of: none, read, or write.
vulnerability_alertsGrants access to receive Dependabot alerts in a repository. See "Acerca de las alertas Dependabot" to learn more. Can be one of: none, read, or write.
watchingGrants access to list and change repositories a user is subscribed to. Can be one of: none, read, or write.

GitHub App webhook events

Webhook event nameRequired permissionDescription
check_runchecksHa ocurrido una actividad de ejecución de verificación. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "ejecuciones de comprobación".
check_suitechecksHa ocurrido una actividad de suite de verificaciones. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, consulta la API REST de "conjuntos de comprobación".
commit_commentcontentsSe creó un comentario de una confirmación. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "confirmación de comentarios".
createcontentsSe crea una rama o etiqueta de Git. Para obtener más información, consulta la API de REST de "Git database".
deletecontentsSe borra una rama o etiqueta de Git. Para obtener más información, consulta la API de REST de "Git database".
deploymentdeploymentsSe crea un despliegue. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, consulta la API REST de "Implementaciones".
deployment_statusdeploymentsSe crea un despliegue. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "implementaciones".
forkcontentsUn usuario bifurca un repositorio. Para obtener más información, consulta la API de REST de "Repositorios".
gollumcontentsSe crea o actualiza una página de wiki. Para obtener más información, vea «Acerca de las wikis».
issuesissuesLa actividar relacionada con un informe de problemas. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "incidencias".
issue_commentissuesActividad relacionada con un comentario a una propuesta o solicitud de cambios. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "comentarios de incidencias".
labelmetadataActividad relacionada con una etiqueta. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "etiquetas".
membermembersLa actividad relacionada con los colaboradores del repositorio. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, consulta la API REST de "colaboradores".
membershipmembersLa actividad relacionada con la membrecía del equipo. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, consulta la API REST de "Teams".
milestonepull_requestLa actividar relacionada con los hitos. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "hitos".
organizationmembersLa actividad relacionada con una organización y sus miembros. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "organizaciones".
page_buildpagesRepresenta un intento de compilación de un sitio de GitHub Pages, haya sido exitoso o no. Una subida a la rama habilitada de GitHub Pages (gh-pages para las páginas de proyecto, la rama predeterminada para las páginas de usuario y de organización) desencadena este evento.
projectrepository_projects or organization_projectsActividad relacionada con instancias de paneles de proyecto. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para obtener más información, vea la API REST de "proyectos".
project_cardrepository_projects or organization_projectsActividad relacionada con las tarjetas de una instancia de panel de proyecto. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para obtener más información, vea la API REST de "tarjetas de proyecto".
project_columnrepository_projects or organization_projectsActividad relacionada con las columnas de una instancia de panel de proyecto. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "columnas de proyecto".
publicmetadataCuando un repositorio privado se hace público. Sin duda alguna: el mejor evento de GitHub Enterprise Server.
pull_requestpull_requestsLa actividad relacionada con las solicitudes de extracción. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "solicitudes de incorporación de cambios".
pull_request_reviewpull_requestLa actividad relacionada con las revisiones de la solicitudes de extracción. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para obtener más información, vea la API REST de "revisiones de solicitudes de incorporación de cambios".
pull_request_review_commentpull_requestLa actividar relacionada con los comentarios de revisión de la solicitud de extracción en el diff unificado de la misma. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para obtener más información, consulte la API de REST de "comentarios de revisiones de solicitudes de incorporación de cambios".
pull_request_review_threadpull_requestActividad relacionada con un hilo de comentarios en una solicitud de incorporación de cambios que se marca como resuelto o sin resolver. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga.
pushcontentsSe cargó una o más confirmaciones a la rama o etiqueta de un repositorio.
releasecontentsLa actividad relacionada con un lanzamiento. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "versiones".
repositorymetadataLa actividad relacionada con un repositorio. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "repositorios".
statusstatusesCuando el estado de una confirmación de Git cambia. Para obtener más información, consulta la API de REST de "Confirmaciones".
teammembersLa actividad relacionada con el equipo de una organización. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "equipos".
team_addmembersCuando se agrega un repositorio a un equipo.
watchmetadataCuando alguien marca un repositorio con una estrella. El tipo de actividad se especifica en la propiedad action de la acción del objeto de carga. Para más información, vea la API REST de "marcar con estrellas".