---
title: "Retrieve Safe migration status"
method: GET
path: "/api/v1/safe/migration"
tags: ["Safe Management"]
---

# Retrieve Safe migration status

`GET /api/v1/safe/migration`

Returns the current safe, previous safe (if migrated), and migration status for the authenticated user.

## Query parameters

- `migrationId` string

## Response `200`

Successfully retrieved safe migration info.

- SafeMigrationInfo
  - `migrationId` string, required
  - `status` 'PENDING' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED', nullable — Migration status, or null if the user has not started this migration.
  - `hasOldSafe` boolean, required — Whether a previous safe was recorded for this migration.
  - `newSafe` SafeMigrationSafeInfo
    - `address` string, required
    - `chainId` string, nullable
    - `tokenSymbol` string, nullable
  - `oldSafe` SafeMigrationOldSafeInfo
    - `address` string, required
    - `chainId` string, required
    - `recordedAt` string, date-time, required

## Other responses

- `400` — Invalid query parameters.
- `401` — Unauthorized Error
- `500` — Internal server error.

---

[API](https://skmtc.net/gnosispay/apis/gnosispay-api.md) · [All operations](https://skmtc.net/gnosispay/apis/gnosispay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gnosispay/gnosispay-api/versions/e0a09962c187/schema)
