> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloud.cdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GitLab

export const title_1 = "GitLab";

export const title_0 = "GitLab";

## Setup Guide

Follow these steps to connect GitLab to your Connect AI account:

<Steps>
  <Step>
    Open the **Sources** page of the Connect AI navigation menu.
  </Step>

  <Step>
    Click **+ Add Connection** in the upper-right corner.
  </Step>

  <Step>
    Type *GitLab* into the search field, then click the data source name.
  </Step>

  <Step>
    On the **Basic Settings** tab of the new connection, enter a connection name or keep the default name.
  </Step>

  <Step>
    Select the Authentication method, then proceed to the relevant section and follow those instructions.
  </Step>
</Steps>

## Authentication Methods

<Tabs>
  <Tab title="OAuth">
    To use OAuth authentication, you need to register an OAuth application with GitLab. You can register either a user-owned application or a group-owned application:

    <Steps>
      <Step>
        Open the **Applications** page in GitLab:

        * **User-owned**–select your avatar in the upper-right corner, click **Edit profile**, then select **Applications** from the left sidebar.
        * **Group-owned**–open the group, then in the left sidebar select **Settings** > **Applications**.
      </Step>

      <Step>
        Click **Add new application**.
      </Step>

      <Step>
        Complete the required fields:

        * **Name**–the name of your application.
        * **Redirect URI**–set this to *[https://oauth.cdata.com/oauth/](https://oauth.cdata.com/oauth/)*.
        * **Confidential**–leave this checkbox selected.
        * **Scopes**–select the OAuth 2.0 scopes your integration needs (for example, `api`, `read_user`, `read_api`, `read_repository`).
      </Step>

      <Step>
        Click **Save application**.
      </Step>

      <Step>
        On the application page, make note of the **Application ID** and **Secret**. The Secret is only shown once, so copy it immediately. In Connect AI, the Application ID is entered as the **OAuth Client Id** and the Secret as the **OAuth Client Secret**.
      </Step>
    </Steps>

    In Connect AI:

    <Steps>
      <Step>
        Enter the **OAuth Client Id** and **OAuth Client Secret** obtained from GitLab.
      </Step>

      <Step>
        Click **Sign in** to connect securely through OAuth. This action opens the GitLab sign-in page in a new tab.
      </Step>

      <Step>
        Log in to your GitLab account and provide the requested permissions (if applicable).
      </Step>

      <Step>
        At the top of the Connect AI **Add {title_0} Connection** page, click **Save & Test**.

        * If the connection test succeeds, a **Connection successfully saved** message appears, indicating that your connection has been created. The **Status** on the **Edit Connection** page also changes to **Authenticated**. View the data model of your successful connection in the right pane of the **Edit Connection** page, in the **Data Model** tab.
        * If the connection test fails, ensure that you entered your login information correctly with no stray spaces or other characters. Connect AI displays error messages under the required fields with missing data. Some data sources require that you sign in directly to the source website. If you did not, an error message appears under the **Sign in** button. Correct the errors and try again.
        * Unsuccessful connections are saved as drafts and have a **Status** of **Not Authenticated**. You can return to the connection and authenticate it later.
      </Step>
    </Steps>
  </Tab>

  <Tab title="APIKey">
    To use API Key authentication, first create a personal access token in GitLab:

    <Steps>
      <Step>
        Select your avatar in the upper-right corner and click **Edit profile**.
      </Step>

      <Step>
        In the left sidebar, select **Access Tokens** (or **Access** > **Personal access tokens** on newer GitLab versions), then click **Add new token**.
      </Step>

      <Step>
        Complete the required fields:

        * **Token name**–a descriptive name for the token.
        * **Expiration date**–required by GitLab.
        * **Scopes**–select the scopes your integration needs. Use `api` for full read/write API access, or narrower read-only scopes such as `read_api`, `read_user`, and `read_repository`.
      </Step>

      <Step>
        Click **Create personal access token**.
      </Step>

      <Step>
        Copy the token immediately and store it securely. GitLab only displays the token once.
      </Step>
    </Steps>

    In Connect AI:

    <Steps>
      <Step>
        Enter the **API Key**.
      </Step>

      <Step>
        At the top of the Connect AI **Add {title_1} Connection** page, click **Save & Test**.

        * If the connection test succeeds, a **Connection successfully saved** message appears, indicating that your connection has been created. The **Status** on the **Edit Connection** page also changes to **Authenticated**. View the data model of your successful connection in the right pane of the **Edit Connection** page, in the **Data Model** tab.
        * If the connection test fails, ensure that you entered your login information correctly with no stray spaces or other characters. Connect AI displays error messages under the required fields with missing data. Some data sources require that you sign in directly to the source website. If you did not, an error message appears under the **Sign in** button. Correct the errors and try again.
        * Unsuccessful connections are saved as drafts and have a **Status** of **Not Authenticated**. You can return to the connection and authenticate it later.
      </Step>
    </Steps>
  </Tab>
</Tabs>

<Note>
  Ready to try this connector? [Create a free Connect AI account](https://cloud-login.cdata.com/u/signup) and set up your first connection in minutes.
</Note>
