> ## Documentation Index
> Fetch the complete documentation index at: https://checkly-422f444a-auto-update-api-spec.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# checkly import

> Import existing resources into your CLI-managed project.

<Note>Available since CLI v5.4.0.</Note>

<Tip>Learn more about importing existing Checkly resources in [the "Importing Existing Resources" guide](/cli/importing).</Tip>

The `checkly import plan` command imports existing resources from your Checkly account into your CLI-managed project. This allows you to bring existing checks, alert channels, and other resources under code management using a structured three-phase workflow.

<Note>You can use `npx checkly import` as a shorthand for `npx checkly import plan`.</Note>

<Accordion title="Prerequisites">
  Before using `checkly import`, ensure you have:

  * An initialized Checkly CLI project
  * A Checkly account with existing resources to import
  * Valid Checkly account authentication (run `npx checkly login` if needed)
</Accordion>

## Usage

Import all resources from your account into the current project.

```bash Terminal theme={null}
npx checkly import plan [resources] [options]
```

**Examples:**

```bash Terminal theme={null}
# Import a specific resource by its ID
npx checkly import plan check:2ce8...
```

**Available resource types to import**:

* `check` - Individual monitoring checks
* `check-group` - Collections of related checks
* `alert-channel` - Notification channels
* `maintenance-window` - Scheduled maintenance periods
* `private-location` - Custom monitoring locations
* `dashboard` - Public status dashboards
* `snippet` - Reusable code snippets
* `status-page` - Status page configurations
* `status-page-service` - Status page service definitions

`npx checkly import plan` starts an interactive process that generates an import plan, applies it to create Check files, and commits the changes to mark resources as managed by your CLI project.

| Option         | Required | Description                                                                     |                                     |
| -------------- | -------- | ------------------------------------------------------------------------------- | ----------------------------------- |
| `--config, -c` | -        | The Checkly CLI configuration file. If not passed, uses the \`checkly.config.ts | js\` file in the current directory. |
| `--root`       | -        | Root folder in which to write generated code files. Default: `__checks__`.      |                                     |
| `--preview`    | -        | Preview generated code without creating an import plan.                         |                                     |

## Command Options

<ResponseField name="--config, -c" type="string">
  Specify a particular configuration file to use instead of the default `checkly.config.ts` or `checkly.config.js`.

  **Usage:**

  ```bash Terminal theme={null}
  npx checkly import plan --config=<file-path>
  npx checkly import plan -c=<file-path>
  ```

  **Examples:**

  ```bash Terminal theme={null}
  $ npx checkly import plan --config="./checkly.staging.config.ts"
  ```
</ResponseField>

<ResponseField name="--root" type="string">
  Set the root folder in which to write generated code files. The default is `__checks__`.

  **Usage:**

  ```bash Terminal theme={null}
  npx checkly import plan --root=<root-folder>
  ```

  **Examples:**

  ```bash Terminal theme={null}
  $ npx checkly import plan --root="./src/checks"
  ```
</ResponseField>

<ResponseField name="--preview" type="boolean" default="false">
  Generate a code preview without creating an import plan or linking resources to your project.

  **Usage:**

  ```bash Terminal theme={null}
  npx checkly import plan --preview
  ```
</ResponseField>

## Import Workflow

The import process follows a three-phase workflow for safe resource migration:

### 1. Plan Generation

Analyze your account, generate an import plan and create code files for your resources.

```bash Terminal theme={null}
npx checkly import plan
```

### 2. Plan Application

Apply the generated plan and link the imported resources to your CLI project, but keeps the mapping in a pending state.

```bash Terminal theme={null}
npx checkly import apply
```

### 3. Plan Commitment

Commit the applied changes and mark resources as CLI-managed.

```bash Terminal theme={null}
npx checkly import commit
```

## Subcommands

### `checkly import plan`

Generate code and create an import plan for resources in your account. Use `--preview` to inspect generated code without creating a plan.

```bash Terminal theme={null}
npx checkly import plan [resources] [options]
```

### `checkly import apply`

Apply a previously generated import plan to create the actual code files in your project structure.

```bash Terminal theme={null}
npx checkly import apply
```

### `checkly import commit`

Commit an applied import plan to finalize the import and mark resources as managed by your CLI project.

```bash Terminal theme={null}
npx checkly import commit
```

### `checkly import cancel`

Cancel a generated plan that hasn't been committed to discard any pending import operations.

```bash Terminal theme={null}
npx checkly import cancel
```

## Best Practices

### Before Importing

1. **Rely on version control and git** to track changes
2. **Review your account** resources to understand what will be imported
3. **Plan directory structure** using `--root` if needed
4. **Import specific resources** using `resource-type:id` syntax

### After Importing

1. **Review generated code** for accuracy and style consistency
2. **Test imported checks** using `checkly test`
3. **Commit to version control** to track changes
4. **Deploy to verify** everything works as expected

## Related Commands

* [`checkly deploy`](/cli/checkly-deploy) - Deploy imported resources
* [`checkly test`](/cli/checkly-test) - Test imported checks locally
