app.deploys expone el DeploysModule, que abarca tanto la línea de tiempo de deploys como las dos vías de integración con GitHub.
Listado del historial de deploys
app.deploys.list() devuelve Deployment[][]: un array interno por cada deploy, cada uno recorriendo los estados del ciclo de vida: pending → clone → commit → restarting → success | error.
Aplana el resultado si quieres una única lista cronológica:
En la v3 este método devolvía un Deployment[] plano. La v4 devuelve Deployment[][] para que puedas agrupar los eventos por deploy. Usa .flat() para conservar la forma anterior.
Deployment.id ahora es un SHA-1 de commit plano (40 caracteres hexadecimales). En la v3 estaba formateado como `git-${string}`.
app.deploys.linkGithubApp({ repositoryName, repositoryBranch }) vincula un repositorio de GitHub a la aplicación a través de la GitHub App oficial.
Para eliminar la vinculación:
linkGithubApp y unlinkGithubApp requieren un token de sesión (JWT) como clave de API: estos endpoints no aceptan claves de API normales.
app.deploys.integrateGithubWebhook(accessToken) configura la integración heredada basada en webhook usando un Personal Access Token de GitHub.
Pasa "@" para eliminar el webhook:
Inspección de la configuración actual
app.deploys.current() devuelve la vinculación de la GitHub App y la URL del webhook configuradas actualmente, si las hay.
También existe un atajo app.deploys.webhookURL() que devuelve solo la URL del webhook (o undefined).