> ## Documentation Index
> Fetch the complete documentation index at: https://smartac-justin-client-exports.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GitLab

> Conecta tu repositorio de GitLab a Mintlify para despliegues automáticos, vistas previas de merge requests y sincronización continua.

Mintlify usa tokens de acceso y webhooks para autenticar y sincronizar cambios entre GitLab y Mintlify.

* Mintlify usa tokens de acceso para extraer información de GitLab.
* GitLab usa webhooks para notificar a Mintlify cuando realizas cambios, lo que habilita implementaciones de vista previa para las merge requests.

<div id="set-up-the-connection">
  ## Configura la conexión
</div>

Cuando abras [Git Settings](https://dashboard.mintlify.com/settings/deployment/git-settings) por primera vez, un asistente de configuración te guía a través de la conexión de tu repositorio de GitLab.

<Steps>
  <Step title="Select GitLab as your provider">
    En la página de [Git Settings](https://dashboard.mintlify.com/settings/deployment/git-settings), selecciona **Connect to GitLab** y haz clic en **Continue**.
  </Step>

  <Step title="Download your content">
    <Tip>
      Si ya tienes un repositorio de GitLab con tu documentación, puedes omitir la descarga y hacer clic en **Continue setup** directamente.
    </Tip>

    Si tu documentación está alojada en Mintlify, descárgala como un archivo zip.

    * Crea un nuevo repositorio en GitLab.
    * Extrae el contenido del zip.
    * Sube el contenido a tu repositorio.

    Haz clic en **Continue setup** para continuar.
  </Step>

  <Step title="Find your project ID">
    En tu proyecto de GitLab, ve a **Settings** > **General** y ubica tu **Project ID**.

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-project-id.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=aa5cc13ad9d315b0ebec3bd12540c280" alt="La página General Settings en el dashboard de GitLab. El Project ID está destacado." width="950" height="775" data-path="images/gitlab/gitlab-project-id.png" />
    </Frame>
  </Step>

  <Step title="Generate an access token">
    Ve a **Settings** > **Access Tokens** y selecciona **Add new token**.

    Configura el token con estos parámetros:

    * **Name**: Mintlify
    * **Role**: Maintainer (obligatorio para repos privados)
    * **Scopes**: `api` y `read_api`

    Haz clic en **Create project access token** y copia el token.

    <Note>
      Si los Project Access Tokens no están disponibles, puedes usar un Personal Access Token en su lugar. Ten en cuenta que los Personal Access Tokens caducan y deben actualizarse.
    </Note>

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-project-access-token.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=579c5a47f7e0f14402461cf67db94c72" alt="La página Access tokens en el dashboard de GitLab. Los parámetros a configurar para Mintlify están destacados." width="1166" height="904" data-path="images/gitlab/gitlab-project-access-token.png" />
    </Frame>
  </Step>

  <Step title="Connect your repository">
    De vuelta en el asistente de configuración, completa los siguientes campos:

    * **GitLab instance URL**: Déjalo en blanco para `gitlab.com`, o ingresa la URL de tu instancia autoalojada (por ejemplo, `https://gitlab.your-domain.com`). Tu instancia debe ser accesible públicamente para que Mintlify pueda conectarse.
    * **Project ID**: El ID del proyecto de la configuración de tu proyecto de GitLab.
    * **GitLab deployment token**: El token de acceso que generaste.
    * **Branch**: Selecciona la rama desde la cual desplegar tu documentación.

    Haz clic en **Connect**.

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-config-light.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=0a90adc996ac8d0bc2412b971d1971c4" alt="El panel de configuración de GitLab en la página Git Settings del Dashboard de Mintlify." className="block dark:hidden" width="1052" height="1136" data-path="images/gitlab/gitlab-config-light.png" />

      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-config-dark.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=5ae919caafadb5dbde9610fb3c06dc92" alt="El panel de configuración de GitLab en la página Git Settings del Dashboard de Mintlify." className="hidden dark:block" width="1052" height="1138" data-path="images/gitlab/gitlab-config-dark.png" />
    </Frame>
  </Step>
</Steps>

<div id="update-an-existing-connection">
  ## Actualizar una conexión existente
</div>

Para modificar la configuración de tu conexión con GitLab después de la configuración inicial, ve a [Git Settings](https://dashboard.mintlify.com/settings/deployment/git-settings) y actualiza tu ID de proyecto, token de acceso, rama o URL de instancia directamente.

<div id="create-the-webhook">
  ## Volver a validar la configuración de Git

  Si tu despliegue muestra un comportamiento inesperado, como opciones de rama faltantes o una configuración desactualizada, puedes forzar a Mintlify a actualizar tu origen de Git.

  <Steps>
    <Step title="Ir a Git Settings">
      Ve a [Git Settings](https://dashboard.mintlify.com/settings/deployment/git-settings) en tu Dashboard.
    </Step>

    <Step title="Volver a validar la configuración">
      Haz clic en la insignia verde **Active** en la esquina del recuadro de configuración de GitLab para volver a validar tu origen de Git. Un toast de éxito confirma cuando se completa la revalidación, y aparece un toast de error si tu configuración necesita revisión.
    </Step>
  </Steps>

  ## Crear el webhook
</div>

Los webhooks notifican a Mintlify cuando envías cambios, para que las implementaciones se activen automáticamente.

<Steps>
  <Step title="Agregar nuevo webhook">
    1. En GitLab, ve a **Settings** > **Webhooks**.
    2. Haz clic en **Add new webhook**.

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-webhook.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=f8ffd89c44f0f2ac1863148ec0508b71" alt="Captura de pantalla de la página de Webhooks en el dashboard de GitLab." width="3014" height="1704" data-path="images/gitlab/gitlab-webhook.png" />
    </Frame>
  </Step>

  <Step title="Configurar la URL y el webhook">
    Asigna al webhook el nombre **Mintlify**.

    En el campo **URL**, introduce el endpoint `https://leaves.mintlify.com/gitlab-webhook`.
  </Step>

  <Step title="Obtener el webtoken">
    En tu Dashboard de Mintlify, haz clic en **Show Webtoken**. Copia el webtoken.

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/show-webtoken-light.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=7b13d8a6ec2977502910c62511acb862" alt="Captura de pantalla de la conexión de GitLab en el Dashboard de Mintlify." className="block dark:hidden" width="1082" height="980" data-path="images/gitlab/show-webtoken-light.png" />

      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/show-webtoken-dark.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=4c647fd75689f529f32c6f41df724ae2" alt="Captura de pantalla de la conexión de GitLab en el Dashboard de Mintlify." className="hidden dark:block" width="1082" height="980" data-path="images/gitlab/show-webtoken-dark.png" />
    </Frame>
  </Step>

  <Step title="Pegar el webtoken">
    En GitLab, pega el webtoken desde tu Dashboard de Mintlify en el campo **Secret token**.
  </Step>

  <Step title="Seleccionar eventos">
    Selecciona los siguientes eventos para activar el webhook:

    * **Push events** (All branches)
    * **Merge requests events**
  </Step>

  <Step title="Verificar el webhook">
    Deberías ver la siguiente configuración después de configurar el webhook:

    * **Name**: Mintlify
    * **URL**: `https://leaves.mintlify.com/gitlab-webhook`
    * **Secret token**: el webtoken de tu Dashboard de Mintlify
    * **Events**: **Push events** (All branches) y **Merge requests events**

    Añade el webhook.

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-project-webtoken.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=bcc018bece8ed4ebbfb586ec5c8d93b2" alt="La página de Webhooks en el dashboard de GitLab. La configuración que se debe establecer para Mintlify está resaltada." width="1161" height="1740" data-path="images/gitlab/gitlab-project-webtoken.png" />
    </Frame>
  </Step>

  <Step title="Probar el webhook">
    Después de crear el webhook, haz clic en el menú desplegable **Test**. Haz clic en **Push events** para enviar un payload de prueba. Si la prueba devuelve `Hook executed successfully: HTTP 200`, configuraste el webhook correctamente.

    <Frame>
      <img src="https://mintcdn.com/smartac-justin-client-exports/QlrKc4ncwGdmwz1Z/images/gitlab/gitlab-project-webtoken-test.png?fit=max&auto=format&n=QlrKc4ncwGdmwz1Z&q=85&s=6cfb6af4a0f14ef5bc8b0379d2bec1f8" alt="Captura de pantalla de la página de Webhooks de GitLab. El elemento de menú 'Push events' está resaltado en el menú 'Test'." width="1161" height="724" data-path="images/gitlab/gitlab-project-webtoken-test.png" />
    </Frame>
  </Step>
</Steps>
