> For the complete documentation index, see [llms.txt](https://docs.bindplane.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bindplane.com/configuration/bindplane/backup-and-disaster-recovery/resources.md).

# Resources

How to backup and recover Bindplane resources using Bindplane command line

Bindplane resources can be backed up using the CLI. This method should be used in addition to backing up Bolt Store or PostgreSQL.

### Prerequisites

* Bindplane **v1.25.0** or newer. If on an older version, upgrade before attempting a migration.

### Profile

The backup and restore process will require that you have configured your Bindplane CLI profile. The profile allows you to connect to the Bindplane server.

In this example, the Bindplane server has a remote URL of `http://192.168.1.10:3001` and the profile name is "example".

Configure Profile with username and password:

```bash
bindplane profile set "example" \
 --remote-url "http://192.168.1.10:3001" \
 --username "user" \
 --password "pass"

bindplane profile use "example"
```

If using Bindplane Enterprise with multi-project, you can use an API key instead of username and password:

```bash
bindplane profile set "example" \
 --remote-url "http://192.168.1.10:3001" \
 --api-key "xxx-xxx-xxx-xxx"

bindplane profile use "example"
```

### Backup

```bash
backup_file="migration-resources-$(date '+%Y-%m-%d_%H:%M:%S').yaml"

touch "$backup_file"

bindplane get destination -o yaml --export > "$backup_file"
bindplane get source -o yaml --export >> "$backup_file"
bindplane get processor -o yaml --export >> "$backup_file"
bindplane get configuration -o yaml --export >> "$backup_file"
```

After running the CLI commands, a file with the name `migration-resources-<date suffix>.yaml` will exist in your working directory.

It is recommended that the resource yaml file be moved to a remote system, such as a backup server or a secure object storage service like Google Cloud Storage or Amazon S3.

### Restore

Bindplane resources can be restored by using the `apply` command. After configuring your CLI profile, run the following command:

```bash
bindplane apply -f <path to resource yaml file>
```

Bindplane will create new resources, or update existing resources if they already exist.

{% hint style="info" %}
**NOTE**

If applying resources to an in-use system, configurations that are updated will have pending rollouts that must be triggered by the user.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.bindplane.com/configuration/bindplane/backup-and-disaster-recovery/resources.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
