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

# Connecting a repository asynchronously

> Save a Git repository in Paradime before the deploy key is installed, leaving it pending, then verify the connection later once the key is added.

export const Arcade = ({src, title}) => <div style={{
  position: 'relative',
  paddingBottom: 'calc(56.2225% + 41px)',
  height: 0,
  width: '100%'
}}>
    <iframe src={src} title={title} frameBorder="0" loading="lazy" allow="clipboard-write" allowFullScreen style={{
  position: 'absolute',
  top: 0,
  left: 0,
  width: '100%',
  height: '100%',
  colorScheme: 'light'
}} />
  </div>;

Sometimes you can't finish connecting a repository in one sitting. Installing the Paradime Deploy Key on your Git provider often needs someone with admin access, and in some organizations that can take up to a day. Instead of blocking your setup until the key is in place, Paradime lets you **save the repository now and verify the connection later**.

This guide walks through the asynchronous (deferred) connection flow: the scenario it solves, how to save a pending connection, and how to validate it once the Deploy Key has been installed.

## When to use this

Use the asynchronous flow when:

* You don't have permission to add Deploy Keys to the repository and need to hand the key to a colleague or platform team.
* Your Git provider is managed by another team and key installation takes time.
* You want to record the repository connection now and complete verification during a maintenance window.

If you already have admin access and can install the Deploy Key immediately, use **Test & Save** instead and connect in a single step. See [Importing a repository](/products/settings/git-repositories/importing-a-repository/index).

## How it works

The connection moves through two states:

<Steps>
  <Step title="Pending verification">
    You save the repository SSH URL and copy the Deploy Key, but Paradime does not clone the repository yet. The connection is recorded as **Pending verification**.
  </Step>

  <Step title="Verified">
    After the Deploy Key is installed on your Git provider, you verify the connection. Paradime checks access, clones the repository, and promotes the connection to **Verified**.
  </Step>
</Steps>

<Warning>
  While a connection is pending, the [Code IDE](/products/code-ide/index), [Bolt](/products/bolt/index), and DinoAI stay inactive. They activate only once the connection is verified.
</Warning>

## Step 1: Save a pending connection

1. In Paradime, go to **Settings → Workspace**.

2. In the **Git Connections** section, click **Edit Repository**.

3. Paste your repository's SSH URL into the **Repository SSH URL** field.

   <Warning>
     You must use the `git@...` or `ssh:...` version of your Git URL, not the `https://...` version. Paradime clones over SSH and cannot use HTTP URLs.
   </Warning>

4. Copy the **Deploy Key** that Paradime generates.

   <Note>
     The Deploy Key is stable. It stays the same when you refresh or reopen the page, so you can save now and hand the key to your Git admin without it changing.
   </Note>

   Two controls sit next to the Deploy Key, which matter for the async flow because the key often changes hands before it's installed:

   * **Refetch** copies the same Deploy Key again without changing it. Use it to grab the key a second time, for example to re-send it to your Git admin. Anything already installed keeps working.
   * **Regenerate** creates a new Deploy Key and replaces the old one. Paradime asks you to confirm first.

   <Warning>
     **Regenerating invalidates the previously generated Deploy Key.** If you regenerate after sharing the key, any copy your Git admin already installed stops working, and you'll need to send and install the new key before verification can succeed.
   </Warning>

5. Click **Save without testing**.

Paradime saves the repository and shows a **Pending verification** state (an amber badge and banner) in the **Git Connections** section.

<Arcade src="https://demo.arcade.software/WMWcstGxnnb827aojpTY?embed&embed_mobile=tab&embed_desktop=inline&show_copy_link=true" title="Save a Pending Git Connection" />

## Step 2: Install the Deploy Key

Send the Deploy Key to whoever manages your Git provider and have them add it to the repository with **read and write** access. Each provider has its own steps:

<CardGroup cols={2}>
  <Card title="GitHub" icon="github" href="/integrations/github/connect-a-repository" horizontal>
    Add a deploy key to a GitHub repository.
  </Card>

  <Card title="GitLab" icon="gitlab" href="/integrations/gitlab" horizontal>
    Add a deploy key to a GitLab repository.
  </Card>

  <Card title="BitBucket" icon="bitbucket" href="/integrations/bitbucket" horizontal>
    Add a deploy key to a BitBucket Cloud or Server repository.
  </Card>

  <Card title="Azure DevOps" icon="microsoft" href="/integrations/azure-devops" horizontal>
    Add an SSH key to an Azure DevOps repository.
  </Card>
</CardGroup>

<Info>
  The Deploy Key must have write access. Paradime needs to push commits, create branches, and open pull requests on your behalf.
</Info>

## Step 3: Verify the connection

Once the Deploy Key is installed:

1. Go to **Settings → Workspace**.
2. In the **Git Connections** section, find the pending connection and click **Verify connection**.
3. Paradime checks access to the repository. On success, it clones the repository and promotes the connection to **Verified**. The Code IDE, Bolt, and DinoAI activate.

<Check>
  When verification succeeds, the amber **Pending verification** badge is replaced with a **Verified** (connected) state, and you can start developing in the Code IDE.
</Check>

<Arcade src="https://demo.arcade.software/v1JFPkXS2uI0XYnIDRpq?embed&embed_mobile=tab&embed_desktop=inline&show_copy_link=true" title="Verify and Activate Your Git Connection" />

## Troubleshooting

If **Verify connection** fails, the connection stays pending and Paradime shows an error. Common causes:

* **Deploy Key not installed yet.** Confirm your Git admin has added the current key to the correct repository. If the key was regenerated after you shared it, install the newest one.
* **Missing write access.** The Deploy Key must be granted read and write access, not read-only.
* **Wrong URL format.** Confirm the SSH URL starts with `git@...` or `ssh:...`, not `https://...`.

Fix the issue and click **Verify connection** again. For persistent errors, see [Git and repository errors](/get-help/error-list/git-and-repository-errors) or [contact support](/get-help/support).


## Related topics

- [Update connected git repository](/products/settings/git-repositories/update-connected-git-repository.md)
- [Working with Git](/guides/working-with-git/index.md)
- [Connecting integrations](/integrations/connecting-integrations.md)
- [Creating a Workspace](/guides/paradime-101/getting-started-with-your-paradime-workspace/creating-a-workspace.md)
- [Importing a repository](/products/settings/git-repositories/importing-a-repository/index.md)
