Skip to main content

POST /api/tally/coins/migrate-out

MethodPOST
Path/api/tally/coins/migrate-out
GroupTally Protocol
Authno session — authorized by the coin's single-use bearer ticket (called domain-to-domain)
Sourceshared/api-core/src/routes/tallyProtocol.ts

What it does

The issuing domain side of a cross-domain redeem. Called by the destination domain (not the user). Verifies the coin's single-use bearer_ticket, then atomically burns the coin (status='migrated', spend_seq++) and returns an Ed25519-signed migration authorization the destination uses to mint. Trust is the domain's published node key (/api/node/status) — no shared secret. Idempotent: a repeat call re-returns the same authorization.

Returns

{ "ok": true, "migration": {
"token_id": "ZT-…", "to_zid": "ZEQ…", "to_origin": "https://zeqond.com",
"value": 6, "origin_spend_seq": 1, "home_origin": "https://zeqapi.com",
"migration_sig": "…", "node_pubkey": "…" } }

You do not normally call this directly; it is invoked by POST /api/tally/coins/redeem.