import cobo_waas2
from cobo_waas2.models.create_stake_activity201_response import (
CreateStakeActivity201Response,
)
from cobo_waas2.models.create_unstake_activity_request import (
CreateUnstakeActivityRequest,
)
from cobo_waas2.rest import ApiException
from pprint import pprint
# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
# Replace `<YOUR_PRIVATE_KEY>` with your private key
api_private_key="<YOUR_PRIVATE_KEY>",
# Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = cobo_waas2.StakingsApi(api_client)
create_unstake_activity_request = cobo_waas2.CreateUnstakeActivityRequest(
staking_id="0011039d-27fb-49ba-b172-6e0aa80e37ec"
)
try:
# Create unstake activity
api_response = api_instance.create_unstake_activity(
create_unstake_activity_request=create_unstake_activity_request
)
print("The response of StakingsApi->create_unstake_activity:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling StakingsApi->create_unstake_activity: %s\n" % e)
// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.StakingsApi;
import com.cobo.waas2.model.*;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Select the development environment. To use the production environment, replace `Env.DEV` with
// `Env.PROD
defaultClient.setEnv(Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
StakingsApi apiInstance = new StakingsApi();
CreateUnstakeActivityRequest createUnstakeActivityRequest =
new CreateUnstakeActivityRequest().stakingId("0011039d-27fb-49ba-b172-6e0aa80e37ec");
try {
CreateStakeActivity201Response result =
apiInstance.createUnstakeActivity(createUnstakeActivityRequest);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling StakingsApi#createUnstakeActivity");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
package main
import (
"context"
"fmt"
coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
"os"
)
func main() {
createUnstakeActivityRequest := *coboWaas2.NewCreateUnstakeActivityRequest("0011039d-27fb-49ba-b172-6e0aa80e37ec")
configuration := coboWaas2.NewConfiguration()
// Initialize the API client
apiClient := coboWaas2.NewAPIClient(configuration)
ctx := context.Background()
// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
// Replace `<YOUR_PRIVATE_KEY>` with your private key
ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
Secret: "<YOUR_PRIVATE_KEY>",
})
resp, r, err := apiClient.StakingsAPI.CreateUnstakeActivity(ctx).
CreateUnstakeActivityRequest(createUnstakeActivityRequest).
Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `StakingsAPI.CreateUnstakeActivity``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `CreateUnstakeActivity`: CreateStakeActivity201Response
fmt.Fprintf(os.Stdout, "Response from `StakingsAPI.CreateUnstakeActivity`: %v\n", resp)
}
const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.StakingsApi();
const opts = {
CreateUnstakeActivityRequest:
CoboWaas2.CreateUnstakeActivityRequest.constructFromObject({
staking_id: "0011039d-27fb-49ba-b172-6e0aa80e37ec",
}),
};
apiInstance.createUnstakeActivity(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"activity_id": "0111039d-27fb-49ba-b172-6e0aa80e37ec",
"staking_id": "0111039d-27fb-49ba-b172-6e0aa80e37ec"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}Create unstake activity
This operation creates an unstaking request. Your staked tokens will be automatically unlocked once the specified locking period ends. If you want to withdraw your tokens beforehand, you can unstake them with this operation.
For some protocols, you can use the fee property in the request body to specify the maximum fee you are willing to pay. The transaction will fail if the actual fee exceeds the specified maximum fee.
import cobo_waas2
from cobo_waas2.models.create_stake_activity201_response import (
CreateStakeActivity201Response,
)
from cobo_waas2.models.create_unstake_activity_request import (
CreateUnstakeActivityRequest,
)
from cobo_waas2.rest import ApiException
from pprint import pprint
# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
# Replace `<YOUR_PRIVATE_KEY>` with your private key
api_private_key="<YOUR_PRIVATE_KEY>",
# Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = cobo_waas2.StakingsApi(api_client)
create_unstake_activity_request = cobo_waas2.CreateUnstakeActivityRequest(
staking_id="0011039d-27fb-49ba-b172-6e0aa80e37ec"
)
try:
# Create unstake activity
api_response = api_instance.create_unstake_activity(
create_unstake_activity_request=create_unstake_activity_request
)
print("The response of StakingsApi->create_unstake_activity:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling StakingsApi->create_unstake_activity: %s\n" % e)
// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.StakingsApi;
import com.cobo.waas2.model.*;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Select the development environment. To use the production environment, replace `Env.DEV` with
// `Env.PROD
defaultClient.setEnv(Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
StakingsApi apiInstance = new StakingsApi();
CreateUnstakeActivityRequest createUnstakeActivityRequest =
new CreateUnstakeActivityRequest().stakingId("0011039d-27fb-49ba-b172-6e0aa80e37ec");
try {
CreateStakeActivity201Response result =
apiInstance.createUnstakeActivity(createUnstakeActivityRequest);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling StakingsApi#createUnstakeActivity");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
package main
import (
"context"
"fmt"
coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
"os"
)
func main() {
createUnstakeActivityRequest := *coboWaas2.NewCreateUnstakeActivityRequest("0011039d-27fb-49ba-b172-6e0aa80e37ec")
configuration := coboWaas2.NewConfiguration()
// Initialize the API client
apiClient := coboWaas2.NewAPIClient(configuration)
ctx := context.Background()
// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
// Replace `<YOUR_PRIVATE_KEY>` with your private key
ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
Secret: "<YOUR_PRIVATE_KEY>",
})
resp, r, err := apiClient.StakingsAPI.CreateUnstakeActivity(ctx).
CreateUnstakeActivityRequest(createUnstakeActivityRequest).
Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `StakingsAPI.CreateUnstakeActivity``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `CreateUnstakeActivity`: CreateStakeActivity201Response
fmt.Fprintf(os.Stdout, "Response from `StakingsAPI.CreateUnstakeActivity`: %v\n", resp)
}
const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.StakingsApi();
const opts = {
CreateUnstakeActivityRequest:
CoboWaas2.CreateUnstakeActivityRequest.constructFromObject({
staking_id: "0011039d-27fb-49ba-b172-6e0aa80e37ec",
}),
};
apiInstance.createUnstakeActivity(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"activity_id": "0111039d-27fb-49ba-b172-6e0aa80e37ec",
"staking_id": "0111039d-27fb-49ba-b172-6e0aa80e37ec"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}import cobo_waas2
from cobo_waas2.models.create_stake_activity201_response import (
CreateStakeActivity201Response,
)
from cobo_waas2.models.create_unstake_activity_request import (
CreateUnstakeActivityRequest,
)
from cobo_waas2.rest import ApiException
from pprint import pprint
# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
# Replace `<YOUR_PRIVATE_KEY>` with your private key
api_private_key="<YOUR_PRIVATE_KEY>",
# Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = cobo_waas2.StakingsApi(api_client)
create_unstake_activity_request = cobo_waas2.CreateUnstakeActivityRequest(
staking_id="0011039d-27fb-49ba-b172-6e0aa80e37ec"
)
try:
# Create unstake activity
api_response = api_instance.create_unstake_activity(
create_unstake_activity_request=create_unstake_activity_request
)
print("The response of StakingsApi->create_unstake_activity:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling StakingsApi->create_unstake_activity: %s\n" % e)
// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.StakingsApi;
import com.cobo.waas2.model.*;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Select the development environment. To use the production environment, replace `Env.DEV` with
// `Env.PROD
defaultClient.setEnv(Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
StakingsApi apiInstance = new StakingsApi();
CreateUnstakeActivityRequest createUnstakeActivityRequest =
new CreateUnstakeActivityRequest().stakingId("0011039d-27fb-49ba-b172-6e0aa80e37ec");
try {
CreateStakeActivity201Response result =
apiInstance.createUnstakeActivity(createUnstakeActivityRequest);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling StakingsApi#createUnstakeActivity");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
package main
import (
"context"
"fmt"
coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
"os"
)
func main() {
createUnstakeActivityRequest := *coboWaas2.NewCreateUnstakeActivityRequest("0011039d-27fb-49ba-b172-6e0aa80e37ec")
configuration := coboWaas2.NewConfiguration()
// Initialize the API client
apiClient := coboWaas2.NewAPIClient(configuration)
ctx := context.Background()
// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
// Replace `<YOUR_PRIVATE_KEY>` with your private key
ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
Secret: "<YOUR_PRIVATE_KEY>",
})
resp, r, err := apiClient.StakingsAPI.CreateUnstakeActivity(ctx).
CreateUnstakeActivityRequest(createUnstakeActivityRequest).
Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `StakingsAPI.CreateUnstakeActivity``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `CreateUnstakeActivity`: CreateStakeActivity201Response
fmt.Fprintf(os.Stdout, "Response from `StakingsAPI.CreateUnstakeActivity`: %v\n", resp)
}
const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.StakingsApi();
const opts = {
CreateUnstakeActivityRequest:
CoboWaas2.CreateUnstakeActivityRequest.constructFromObject({
staking_id: "0011039d-27fb-49ba-b172-6e0aa80e37ec",
}),
};
apiInstance.createUnstakeActivity(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
Authorizations
The API key. For more details, refer to API key.
In the API playground, enter your API secret, and your API key will be accordingly calculated.
Body
The request body to create a unstaking request.
The ID of the corresponding staking position.
"0011039d-27fb-49ba-b172-6e0aa80e37ec"
The request ID that is used to track a request. The request ID is provided by you and must be unique within your organization.
"f47ac10b-58cc-4372-a567-0e02b2c3d479"
The amount to unstake. For the Babylon protocol, this property is ignored.
"100.00"
The preset properties to limit transaction fee.
In the fixed fee model, the transaction fee is a fixed amount within a certain amount of period regardless of the transaction size or network congestion, which can vary between different chains. For more information about the fixed fee model, refer to Fee models.
You can specify the maximum fee amount to limit the transaction fee. The transaction will fail if the transaction fee exceeds the specified maximum fee amount.
Switch between the tabs to display the properties for different transaction fee models.
- Fixed
- EVM_EIP_1559
- EVM_Legacy
- UTXO
- SOL
- FIL
Show child attributes
Show child attributes
Additional protocol-specific information required for the unstaking operation. The required fields vary depending on the staking protocol.
Show child attributes
Show child attributes
The initiator of the staking activity. If you do not specify this property, the WaaS service will automatically designate the API key as the initiator.
Was this page helpful?
