API References v20
General
/validateCoinDeactivations
1 min
POST
/validateCoinDeactivations
Calling this request is used to check if we can deactivate one or more coins in the system. This endpoint applies to the uMPC only. The endpoint also checks for coins, policies and smart contracts associated with this coin, as well as the reason a coin cannot be deactivated and the ways to resolve this.
coin_symbols: the coin symbols of the coins that will be deactivated:return: coins that can be deactivated, along with data about objects that will be affected due to this action.
-------------------- Request --------------------
validateCoinDeactivations(
coin_symbols=[ "BCH", "BTC", "CELO", "SOL"]
)
-------------------- Response --------------------
{
"FunctionData": {
"DeactivationAllowed": {
"BCH": {
"AddressGroups": [
{
"Id": "1",
"Name": "All MPC contacts"
}
],
"Contacts": [
{
"Address": "bchtest:qzv2peakwej3nl37jvnl58pgz26zdk5nrcupq5ez0r",
"Symbol": "BCH",
"Id": "2:bchtest:qzv2peakwej3nl37jvnl58pgz26zdk5nrcupq5ez0r",
"Name": "Account Main Account: Hot Wallet",
"Type": "system"
}
],
"DependentCoins": [],
"Policies": [
{
"Id": "47faf4fa-ed88-47bc-b3ea-07ba6e9dd930",
"Name": "Policy 1",
"Type": "Transfer"
}
],
"SmartContracts": []
},
"BTC": {
"AddressGroups": [
{
"Id": "1",
"Name": "All MPC contacts"
}
],
"Contacts": [
{
"Address": "tb1qx85ttkfwvzqax4j4cmz0tdmzhx7rh9fn9skzyj",
"Symbol": "BTC",
"Id": "0:tb1qx85ttkfwvzqax4j4cmz0tdmzhx7rh9fn9skzyj",
"Name": "Account Main Account: Hot Wallet",
"Type": "system"
}
],
"DependentCoins": [],
"Policies": [
{
"Id": "47faf4fa-ed88-47bc-b3ea-07ba6e9dd930",
"Name": "Policy 1",
"Type": "Transfer"
}
],
"SmartContracts": []
},
"CELO": {
"AddressGroups": [
{
"Id": "1",
"Name": "All MPC contacts"
}
],
"Contacts": [
{
"Address": "0x777Aa1dc21031b37EffeF2C53A9a9ba488789991",
"Symbol": "CELO",
"Id": "10000:0x777Aa1dc21031b37EffeF2C53A9a9ba488789991",
"Name": "Account Main Account: Hot Wallet",
"Type": "system"
},
{
"Address": "0x874069Fa1Eb16D44d622F2e0Ca25eeA172369bC1",
"Symbol": "CELO",
"Id": "10000:0x874069Fa1Eb16D44d622F2e0Ca25eeA172369bC1",
"Name": "CUSD_CELO",
"Type": "authorized"
},
{
"Address": "0x777Aa1dc21031b37EffeF2C53A9a9ba488789991",
"Symbol": "CUSD_CELO",
"Id": "4:0x777Aa1dc21031b37EffeF2C53A9a9ba488789991",
"Name": "Account Main Account: Hot Wallet",
"Type": "system"
}
],
"DependentCoins": [
{
"Address": "0x874069Fa1Eb16D44d622F2e0Ca25eeA172369bC1",
"ChainId": null,
"Name": "CUSD_CELO",
"Symbol": "CUSD_CELO"
}
],
"Policies": [],
"SmartContracts": []
},
"SOL": {
"AddressGroups": [
{
"Id": "1",
"Name": "All MPC contacts"
}
],
"Contacts": [
{
"Address": "Gyr5wQ9ERJ38oSnZazNJUFoDchNjeJy99Ch6CJixQZJc",
"Symbol": "SOL",
"Id": "1010:Gyr5wQ9ERJ38oSnZazNJUFoDchNjeJy99Ch6CJixQZJc",
"Name": "Account Main Account: Hot Wallet",
"Type": "system"
}
],
"DependentCoins": [],
"Policies": [
{
"Id": "47faf4fa-ed88-47bc-b3ea-07ba6e9dd930",
"Name": "Policy 1",
"Type": "Transfer"
}
],
"SmartContracts": [
{
"CoinSymbol": "SOL",
"ContractAddress": "9RXKoQLhuFRK8ohwtyxAMGjFeG4n4Jhxw5Unxqqtc3Nj",
"Description": "Core Solana program for Money Market Fund (MMF) operations including token minting/burning, NAV management, user access control, transfer restrictions, and circuit breaker functionality",
"Name": "mmf_solana"
},
{
"CoinSymbol": "SOL",
"ContractAddress": "B1KrshWv6iq3srhThWDfuSwftnEd1PRbEygdLiEUeH8D",
"Description": "SPL Token 2022 transfer hook program implementing whitelisting, circuit breaker controls, and additional validation for MMF token transfers",
"Name": "transfer_hook"
}
]
}
},
"DeactivationNotAllowed": [
{
"Reason": "Currency cannot be removed from the system",
"Resolve": "-",
"Symbol": "ETH"
},
{
"Reason": "The coin does not exist in the system",
"Resolve": "Check that the coin symbol is written correctly",
"Symbol": "XXX"
},
{
"Reason": "The coin is not active in the system and may already have been removed",
"Resolve": "Check that the coin symbol is written correctly",
"Symbol": "ADA"
},
{
"Reason": "A transaction is pending approval and the coin cannot be removed until the process is completed",
"Resolve": "Wait for the approval process to be completed, or cancel the transaction",
"Symbol": "SOL"
},
{
"Reason": "A staking operation is active and the coin cannot be removed until the process is completed",
"Resolve": "Wait for the staking operation to be completed and then try again",
"Symbol": "SOL"
},
{
"Reason": "A transaction is pending approval and the coin cannot be removed until the process is completed",
"Resolve": "Wait for the approval process to be completed, or cancel the transaction",
"Symbol": "CELO"
},
{
"Reason": "A transaction is pending approval and the coin cannot be removed until the process is completed",
"Resolve": "Wait for the approval process to be completed, or cancel the transaction",
"Symbol": "CUSD_CELO"
}
]
},
"Meta": {
"AccessToken": "b14ceac65439aff1866ba58d81f040df96d2bbac26103ad86f0fe13a1928965c",
"Destination": "0478a0afcd7f99b611c0dc5191235ef32f7d67aa05ceb46a7b80c0a6245d7096198d7d76951acc2027c7a359879a71843595ed24012fe7f0fb6b30a0f801b89871",
"Source": "23ed3750051bc2efcca27f83402431ec0701cb6d559ada9c2008e87075b4f969297b9c6c497b8d74e918a9fc30be1f76138c857b937135bdb2362e1d75d8c682b8",
"Time": "2026-01-07 11:18:38.953"
}
}
---------
coin_symbolarrayThe coin symbols of the coins that will be deactivated.
acceptstringGenerated from available response content types
200success
curl --request POST \
--url '/validateCoinDeactivations?coin_symbol=None' \
--header 'accept: application/json'