Skip to main content
GET
/
account
/
migration
Get migration status
curl --request GET \
  --url https://api.context.markets/v2/account/migration \
  --header 'Authorization: Bearer <token>'
{
  "migrationActive": true,
  "walletAddress": "0x1111111111111111111111111111111111111111",
  "holdings": {
    "legacy": "0x1111111111111111111111111111111111111111",
    "new": "0x1111111111111111111111111111111111111111"
  },
  "settlementV2Address": "0x1111111111111111111111111111111111111111",
  "legacyBalances": [
    {
      "token": "0x1111111111111111111111111111111111111111",
      "balance": "1000000"
    }
  ],
  "newBalances": [
    {
      "token": "0x1111111111111111111111111111111111111111",
      "balance": "1000000"
    }
  ],
  "v2OperatorApproved": true,
  "newHoldingsOperatorNonce": "1000000",
  "fundsMigrationPlan": {
    "phase": "<string>",
    "callCount": 123,
    "chunkCount": 123,
    "calls": [
      null
    ],
    "tokens": [
      {
        "token": "0x1111111111111111111111111111111111111111",
        "amount": "1000000"
      }
    ],
    "chunks": [
      {
        "callCount": 123,
        "calls": [
          null
        ],
        "tokens": [
          {
            "token": "0x1111111111111111111111111111111111111111",
            "amount": "1000000"
          }
        ]
      }
    ]
  },
  "pendingRestorations": [
    {
      "id": 123,
      "legacyOrderId": 123,
      "legacyOrderHash": "0x1111111111111111111111111111111111111111111111111111111111111111",
      "legacyMarketId": "0x1111111111111111111111111111111111111111111111111111111111111111",
      "status": "<string>",
      "draft": {
        "type": "limit",
        "marketId": "0x1111111111111111111111111111111111111111111111111111111111111111",
        "side": 0,
        "price": "1000000",
        "remainingSize": "1000000",
        "outcomeIndex": 123,
        "expiry": "1000000",
        "maxFee": "1000000",
        "makerRoleConstraint": 0,
        "inventoryModeConstraint": 0,
        "reason": "<string>",
        "trader": "0x1111111111111111111111111111111111111111",
        "size": "1000000",
        "nonce": "0xabc123",
        "timeInForce": 0,
        "clientOrderType": "limit"
      },
      "error": "<string>",
      "market": {
        "shortQuestion": "<string>",
        "outcomeNames": [
          "<string>"
        ]
      }
    }
  ],
  "voidedLegacyOrderCount": 123,
  "legacyOpenOrderCount": 123,
  "sponsoredFundsMigrationAvailable": true,
  "sponsoredRelayerAddress": "0x1111111111111111111111111111111111111111",
  "sponsoredFundsMigrationStatus": {
    "status": "<string>",
    "userOperationHash": "0x1111111111111111111111111111111111111111111111111111111111111111",
    "txHash": "0x1111111111111111111111111111111111111111111111111111111111111111",
    "error": "<string>"
  },
  "canStart": true,
  "canMigrateFunds": true,
  "canRestoreOrders": true,
  "canDismissOrders": true,
  "migrationComplete": true
}

Authorizations

Authorization
string
header
required

API key passed as Bearer token

Query Parameters

address
string

Optional wallet address override for SDK/API flows. When omitted, the server uses the authenticated API account wallet.

Pattern: ^0x[a-fA-F0-9]{40}$
Example:

"0x1111111111111111111111111111111111111111"

Response

Migration status

migrationActive
boolean
required
walletAddress
string
required

EVM address

Pattern: ^0x[a-fA-F0-9]{40}$
Example:

"0x1111111111111111111111111111111111111111"

holdings
object
required
settlementV2Address
string
required

EVM address

Pattern: ^0x[a-fA-F0-9]{40}$
Example:

"0x1111111111111111111111111111111111111111"

legacyBalances
object[]
required
newBalances
object[]
required
v2OperatorApproved
boolean
required
newHoldingsOperatorNonce
string | null
required

Integer encoded as decimal string

Pattern: ^\d+$
Example:

"1000000"

fundsMigrationPlan
object
required
pendingRestorations
object[]
required
voidedLegacyOrderCount
integer
required
legacyOpenOrderCount
integer
required
sponsoredFundsMigrationAvailable
boolean
required
sponsoredRelayerAddress
string
required

EVM address

Pattern: ^0x[a-fA-F0-9]{40}$
Example:

"0x1111111111111111111111111111111111111111"

sponsoredFundsMigrationStatus
object
required
canStart
boolean
required
canMigrateFunds
boolean
required
canRestoreOrders
boolean
required
canDismissOrders
boolean
required
migrationComplete
boolean
required