Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.

Acerca de las apps

Puedes crear integraciones con las API de GitHub para agregar flexibilidad y reducir la fricción en tu propio flujo de trabajo. También puedes compartir las integraciones con otros en Mercado GitHub.

En este artículo

Las apps en GitHub te permiten automatizar y mejorar tu flujo de trabajo. Puedes crear apps para mejorar tu flujo de trabajo. También puedes compartir o vender apps en Mercado GitHub. Para aprender sobre cómo listar una app en Mercado GitHub, consulta la sección "Comenzar con GitHub Marketplace".

Las GitHub Apps son la forma oficial y recomendada de integrarse con GitHub, ya que ofrecen permisos mucho más granulares para acceder a los datos, Pero GitHub es compatible tanto con las App OAuth y con GitHub Apps. Para obtener más información sobre cómo escoger un tipo de app, consulta las secciónes "Acerca de las apps" y "Diferencias entre apps".

Si estás utilizando tu app con GitHub Actions y quieres modificar los archivos de flujo de trabajo, debes autenticarte por parte del usuario con un token de OAuth que incluya el alcance workflow. El usuario debe tener permisos de administrador o de escritura en el repositorio que contiene el archivo de flujo de trabajo. Para obtener más información, consulta la sección "Entender los alcances para las apps de OAuth".

Para obtener una guía detallada del proceso de creación de una App GitHub, consulta la sección "Crea tu primer App GitHub".

Acerca de GitHub Apps

Las GitHub Apps son actores de primera clase dentro de GitHub. Una App GitHub actúa por si misma, tomando las acciones a través de la API y utilizando directamente su propia identidad, lo que significa que no necesitas mantener un bot o cuenta de servicio como un usuario separado.

Las GitHub Apps se pueden instalar directamente en las cuentas de organización y de usuario, y se les puede dar acceso a repositorios diferentes. Vienen con webhooks integrados y con permisos específicos y delimitados. Cuando configuras tu App GitHub, puedes seleccionar los repositorios a los cuales quieres acceder. Por ejemplo, puedes configurar una app llamada MyGitHub que escribe informes de problemas en el repositorio octocat y únicamente en dicho repositorio. Para instalar una App GitHub, necesitas ser propietario de la organización o tener permisos administrativos en el repositorio.

Predeterminadamente, solo los propietarios de la organización pueden administrar los ajustes de las GitHub Apps en una organización. Para agregar usuarios adicionales para que administren las GitHub Apps en una organización, un propietario puede otorgarles permisos de administrador sobe ellas. Consula la sección "Administradores de GitHub Apps" para aprender cómo agregar y eliminar administradores de GitHub Apps en tu organización.

Las GitHub Apps son aplicaciones que necesitan hospedarse en algún lugar. Para obtener instruciones paso a paso que cubran los temas de servidores y hospedaje, consulta la sección "Crear tu primer App GitHub".

Para mejorar tu flujo de trabajo, puedes crear una App GitHub que contenga varios scripts, o bien, una aplicación completa, y después conectarla a muchas otras herramientas. Por ejemplo, puedes conectar las GitHub Apps a GitHub, Slack, a otras apps locales que tuvieras, programas de correo electrónico, o incluso a otras API.

Toma estas ideas en consideración cuando crees GitHub Apps:

  • Un usuario u organización puede ser propietario de hasta 100 GitHub Apps.

  • Una App GitHub debe tomar acciones independientemente del usuario (a menos de que dicha app utilice un token de usuario a servidor). Para mantener más seguros los tokens de acceso de usuario a servidor, puedes utilizar tokens de acceso que caducarán después de 8 horas, y un token de actualización que se puede intercambiar por un token de acceso nuevo. Para obtener más información, consulta la sección "Actualizar los tokens de acceso de usuario a servidor".

  • Asegúrate de que la App GitHub se integre con repositorios específicos.

  • La App GitHub deberá conectarse a una cuenta personal o a una organización.

  • No esperes que la App GitHub sepa y haga todo lo que puede hacer un usuario.

  • No utilices a la App GitHub si solo necesitas el servicio de "Iniciar sesión en GitHub". Sin embargo, una App GitHub puede utilizar un flujo de identificación de usuario para registrar a los usuarios y para hacer otras cosas.

  • No crees una App GitHub si únicamente quieres fungir como un usuario de GitHub y hacer todo lo que puede hacer un usuario.

  • Si estás utilizando tu app con GitHub Actions y quieres modificar los archivos de flujo de trabajo, debes autenticarte por parte del usuario con un token de OAuth que incluya el alcance workflow. El usuario debe tener permisos de administrador o de escritura en el repositorio que contiene el archivo de flujo de trabajo. Para obtener más información, consulta la sección "Entender los alcances para las apps de OAuth".

Para comenzar a desarrollar GitHub Apps, comienza revisando la sección "Crear una App GitHub". Para aprender a utilizar los manifiestos de las App GitHub, los cuales le permiten a las personas crear GitHub Apps preconfiguradas, consulta la sección "Crear GitHub Apps a partir de un manifiesto".

Acerca de las App OAuth

OAuth2 es un protocolo que permite a las aplicaciones externas el solicitar autorización para usar detalles privados en una cuenta de GitHub del usuario sin acceder a su contraseña. Estas son preferentes sobre la Autenticación Básica, ya que los tokens pueden limitarse a ciertos tipos de datos y los usuarios pueden revocarlos en cualquier momento.

Advertencia: Si revocas todos los permisos de una App OAuth borrarás cualquier llave SSH que haya generado la aplicación en nombre del usuario, , incluyendo las llaves de despliegue.

Una App OAuth utiliza a GitHub como proveedor de identidad para autenticarse como el usuario que otorga el acceso a la app. Esto significa que, cuando un usuario otorga acceso a una App OAuth, también otorga permisos a todos los repositorios a los cuales tienen acceso en su cuenta, y también a cualquier organización a la que pertenezcan que no haya bloqueado el acceso de terceros.

Crear una App OAuth es una buena opción si estás creando procesos más complejos de lo que puede manejar un script sencillo. Nota que las App OAuth son aplicaciones que necesitan hospedarse en algún lugar.

Considera estas ideas cuando crees App OAuth:

  • Un usuario u organización puede ser propietario de hasta 100 Apps de OAuth.
  • Una App OAuth siempre debe actuar como el usuario autenticado de GitHub a través de todo GitHub (por ejemplo, cuando proporciona notificaciones de usuario).
  • Una App OAuth puede utilizarse como un proveedor de identidad si el usuario autenticado habilita la opción de "Ingresar con GitHub".
  • No crees una App OAuth si quieres que tu aplicación actúe en un solo repositorio. Con el alcance de repo de OAuth, Las App OAuth podrán actuar en todos los repositorios del usuario autenticado.
  • No crees una App OAuth para que actúe como una aplicación para tu equipo o compañía. Las App OAuth se autentican como un solo usuario, así que, si una persona crea una App OAuth para el uso de una compañía, y luego salen de dicha compañía, nadie más tendrá acceso a ella.
  • Si estás utilizando tu App de OAuth con GitHub Actions y quieres modificar tus archivos de flujo de trabajo, tu token de OAuth debe tener el alcance workflow y el usuario debe tener permisos de escritura o de lectura para el repositorio que contiene dichos archivos de flujo de trabajo. Para obtener más información, consulta la sección "Entender los alcances para las apps de OAuth".

Para obtener más información sobre las App OAuth, consulta las secciones "Crear una App OAuth" y "Registrar tu app".

Tokens de acceso personal

Un token de acceso personal es una secuencia de caracteres que funciona de forma similar a un Token de OAuth en el aspecto de que puedes especificar sus permisos a través de alcances. Un token de acceso personal también es similar a una contraseña, pero puedes tener varios de ellos y puedes revocar el acceso de cada uno en cualquier momento.

Com ejemplo, puedes habilitar un token de acceso personal para tener acceso de escritura en tus repositorios. Si después ejecutas un comando cURL o escribes un script que genera un informe de problemas en tu repositorio, pasarías el token de acceso personal para autenticarte. Puedes almacenar el token de acceso personal como una variable de ambiente para evitar el tener que teclearlo cada vez que lo utilices.

Considera estas ideas cuando utilices tokens de acceso personal:

  • Recuerda utilizar este token para que te represente únicamente a ti.
  • Puedes realizar solicitudes cURL de una sola ocasión.
  • Puedes ejecutar scripts personales.
  • No configures un script para que lo utilice todo tu equipo o compañía.
  • No configures una cuenta de usuario compartida para que actúe como un usuario bot.

Determinar qué integración debes crear

Antes de que comiences a crear integraciones, necesitas determinar la mejor forma de acceder, autenticar, e interactuar con las API de GitHub. La siguiente imagen te da algunas pregutnas para hacerte a ti mismo cuando decidas si vas a utilizar tokens de acceso personal, GitHub Apps, o App OAuth para tu integración.

Introducción al flujo de preguntas de apps

Considera estas preguntas acerca de cómo necesita comportarse tu integración y a qué necesita acceder:

  • ¿Mi integración actuará únicamente como yo, o actuará más como una aplicación?
  • ¿Quiero que actúe independientemente de mí como su propia entidad?
  • ¿Accederá a todo lo que yo puedo acceder, o quiero limitar su acceso?
  • ¿Es simple o compleja? Por ejemplo, los tokens de acceso personal sirven bien para scripts simples y cURLs, mientras que una App OAuth puede manejar scripts más complejos.

Solicitar soporte

Para preguntas, reportes de errores y debates sobre las App GitHub, App OAuth, y el desarrollo de API, explora el Foro de desarrollo y soporte de la API de GitHub. El foro se modera y mantiene con el personal de GitHub, pero no se garantiza que el personal de GitHub responda las preguntas que se publiquen en el mismo.

Considera contactar al Soporte de GitHub directamente utilizando el formato de contacto para:

  • respuestas garantizadas del personal de GitHub
  • solicitudes de soporte que involucren preocupaciones sobre datos sensibles o privados
  • solicitudes de características
  • retroalimentación sobre los productos de GitHub

¿Te ayudó este documento?

Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

O, learn how to contribute.