---
layout: api
page_title: /sys/remount - HTTP API
description: >-
  The '/sys/remount' endpoint is used remount a mounted backend to a new
  endpoint.
---

# Remount ( API )

The Remount documentation details the endpoints required to trigger and monitor the status of a remount operation.

## Move Backend

The `/sys/remount` endpoint moves an already-mounted backend to a new mount point. This process works for both secret 
engines and auth methods.

The remount operation returns a migration ID to the user. The user may utlizie the migration ID to look up 
the status of the mount migration. More details about the remount operation are described in 
[Mount Migration](/docs/concepts/mount-migration).

~> Note: This endpoint requires a policy with both `sudo` and `update` capabilities to `sys/remount`

~> Note: A mount migration will revoke all leases for the secrets of a secrets backend or tokens of an auth backend,
depending on which type of backend is being moved.


| Method | Path           |
| :----- | :------------- |
| `POST` | `/sys/remount` |

### Parameters

- `from` `(string: <required>)` – Specifies the previous mount point.

- `to` `(string: <required>)` – Specifies the new destination mount point.

### Sample Payload ( Cross Namespace )

```json
{
  "from": "ns1/ns2/secret",
  "to": "ns1/ns3/new-secret"
}
```

### Sample Payload ( Cross Namespace, Auth Mount )

```json
{
  "from": "ns1/ns2/auth/approle",
  "to": "ns1/ns3/auth/new-approle"
}
```

### Sample Payload ( Within Namespace )

```json
{
  "from": "secret",
  "to": "new-secret"
}
```

### Sample Request

```shell-session
$ curl \
    --header "X-Vault-Token: ..." \
    --request POST \
    --data @payload.json \
    http://127.0.0.1:8200/v1/sys/remount
```

### Sample Response

```json
{
  "migration_id": "ef3ba21c-8be8-4e5f-8d00-cb46a532c665"
}
```

## Monitor Migration Status

This endpoint is used to monitor the status of a mount migration operation, using the ID returned in the response
of the `sys/remount` call. The response contains the passed-in ID, the source and target mounts, and a status field
that displays `in-progress`, `success` or `failure`.

| Method | Path           |
| :----- | :------------- |
| `GET` | `/sys/remount/status/:migration_id` |

### Parameters

- `migration_id` `(string: <required>)` – Specifies the id of the mount migration

### Sample Request

```shell-session
$ curl \
    --header "X-Vault-Token: ..." \
    http://127.0.0.1:8200/v1/sys/remount/status/ef3ba21c-8be8-4e5f-8d00-cb46a532c665
```

### Sample Response

```json
{
  "migration_id": "ef3ba21c-8be8-4e5f-8d00-cb46a532c665",
  "migration_info": {
    "source_mount": "ns1/ns2/secret",
    "target_mount": "ns1/ns3/new-secret",
    "status": "in-progress",
  }
}
```