# Connecting to GitLab

Connecting the Seal platform to a GitLab repository enables it to automatically sync with your projects, detect vulnerable packages, and possibly open pull requests to replace vulnerable packages with fully-compatible sealed versions.

After you click **Import from GitLab** on the onboarding, you will need to put a URL to your organization on GitLab, and a personal access token with the requisite permissions.

<figure><img src="https://2109738374-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytkIsVkwVdKiLQ2CT6Sw%2Fuploads%2FzcYoxw23kF86IIRczzDr%2Fimage.png?alt=media&#x26;token=da28d25d-e812-4c86-bb20-7bcc14274f78" alt="" width="563"><figcaption></figcaption></figure>

#### Generating the personal access token on GitLab

1. In the **Project Access Tokens** screen give your token a name and a distant expiration date (we recommend at least one year in the future).
2. The role must be **Developer**, **Maintainer** or **Owner**.
3. Give the token **api** access.
4. Create the token, and copy it to the relevant field in the **Link to GitLab** window shown above.

<figure><img src="https://2109738374-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FytkIsVkwVdKiLQ2CT6Sw%2Fuploads%2FtmocASZIs6VDPAZviWWn%2Fimage.png?alt=media&#x26;token=566756d8-e589-4c6b-86c4-1862923cdc18" alt=""><figcaption></figcaption></figure>

#### Adding projects

After you've configured the connection to GitLab, you'll need to connect to the relevant code projects. Each project maps to an individual dependency file, for example `package-lock.json`. You can choose which dependency files you want Seal to scan. Each dependency file will map to a separate project on the platform.

You can either choose from a list of automatically detected projects, or add your projects later manually by clicking on the **New project** button in the **Projects** tab.

{% hint style="info" %}
The **Project ID** field is used to identify the project when communicating with the artifact server. It is meant to be used by machines, and it won't be editable later.
{% endhint %}
