Skip to main content

Start or stop dissolving

Intermediate
Tutorial

Overview

Since version1.1.0
Idempotent?yes
Minimal access levelcontroller

If you want to retrieve the ICP that was locked in the neuron, you will have to set the neuron to a dissolving state. You must wait at least 6 months between setting the neuron to DISSOLVING and receiving back your ICP. The waiting period increases if the set dissolve timestamp is further in the future than 6 months.

Start dissolving

To set a neuron to DISSOLVING you can build the following payloads request:

curl --location '0.0.0.0:8081/construction/payloads'  --header 'Content-Type: application/json' --data 
'{
"network_identifier": {
"blockchain": "Internet Computer",
"network": "00000000000000020101"
},
"public_keys": [
{
"hex_bytes": "047a83e378053f87b49aeae53b3ed274c8b2ffbe59d9a51e3c4d850ca8ac1684f7131b778317c0db04de661c7d08321d60c0507868af41fe3150d21b3c6c757367",
"curve_type": "secp256k1"
}
],
"operations": [
{
"operation_identifier": {
"index": 0
},
"type": "START_DISSOLVING",
"account": {
"address": "8b84c3a3529d02a9decb5b1a27e7c8d886e17e07ea0a538269697ef09c2a27b4"
},
"metadata": {
"neuron_index": 0
}
}
],
"metadata": null
}'

After that, you can fetch the neuron info and it should display that it is now in DISSOLVING state.

{
"transaction_identifier": {
"hash": "0000000000000000000000000000000000000000000000000000000000000000"
},
"metadata": {
"operations": [
{
"account": {
"address": "8b84c3a3529d02a9decb5b1a27e7c8d886e17e07ea0a538269697ef09c2a27b4"
},
"metadata": {
"controller": "iowfl-yzooa-br3dt-77erl-nlm7f-kplhq-php75-hw3an-aeqn2-swh4t-3qe",
"followees": {},
"hotkeys": [],
"kyc_verified": true,
"maturity_e8s_equivalent": 0,
"neuron_fees_e8s": 0,
"neuron_id": 3094748712371737240,
"neuron_index": 0,
"staked_maturity_e8s": null,
"state": "DISSOLVING"
},
"operation_identifier": {
"index": 0
},
"status": "COMPLETED",
"type": "NEURON_INFO"
}
]
}
}

Stop dissolving

To stop a neuron from dissolving, you can call Rosetta with the following parameters:

curl --location '0.0.0.0:8081/construction/payloads'  --header 'Content-Type: application/json' --data 
'{
"network_identifier": {
"blockchain": "Internet Computer",
"network": "00000000000000020101"
},
"public_keys": [
{
"hex_bytes": "047a83e378053f87b49aeae53b3ed274c8b2ffbe59d9a51e3c4d850ca8ac1684f7131b778317c0db04de661c7d08321d60c0507868af41fe3150d21b3c6c757367",
"curve_type": "secp256k1"
}
],
"operations": [
{
"operation_identifier": {
"index": 0
},
"type": "STOP_DISSOLVING",
"account": {
"address": "8b84c3a3529d02a9decb5b1a27e7c8d886e17e07ea0a538269697ef09c2a27b4"
},
"metadata": {
"neuron_index": 0
}
}
],
"metadata": null
}'

The corresponding state of the neuron will switch to `NOT_DISSOLVING`.
```json
{
"transaction_identifier": {
"hash": "0000000000000000000000000000000000000000000000000000000000000000"
},
"metadata": {
"operations": [
{
"account": {
"address": "8b84c3a3529d02a9decb5b1a27e7c8d886e17e07ea0a538269697ef09c2a27b4"
},
"metadata": {
"controller": "iowfl-yzooa-br3dt-77erl-nlm7f-kplhq-php75-hw3an-aeqn2-swh4t-3qe",
"followees": {},
"hotkeys": [],
"kyc_verified": true,
"maturity_e8s_equivalent": 0,
"neuron_fees_e8s": 0,
"neuron_id": 3094748712371737240,
"neuron_index": 0,
"staked_maturity_e8s": null,
"state": "NOT_DISSOLVING"
},
"operation_identifier": {
"index": 0
},
"status": "COMPLETED",
"type": "NEURON_INFO"
}
]
}
}