import cobo_waas2
from cobo_waas2.models.pool_details import PoolDetails
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)
pool_id = "babylon_btc"
try:
# Get staking pool details
api_response = api_instance.get_staking_pool_by_id(pool_id)
print("The response of StakingsApi->get_staking_pool_by_id:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling StakingsApi->get_staking_pool_by_id: %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();
String poolId = "babylon_btc";
try {
PoolDetails result = apiInstance.getStakingPoolById(poolId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling StakingsApi#getStakingPoolById");
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() {
poolId := "babylon_btc"
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.GetStakingPoolById(ctx, poolId).Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `StakingsAPI.GetStakingPoolById``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `GetStakingPoolById`: PoolDetails
fmt.Fprintf(os.Stdout, "Response from `StakingsAPI.GetStakingPoolById`: %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 pool_id = "babylon_btc";
apiInstance.getStakingPoolById(pool_id).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"id": "babylon_btc",
"chain_id": "Bitcoin",
"protocol": "Babylon",
"protocol_icon_url": "https://example.com/icon.png",
"supported_wallet_types": [
"MPC"
],
"supported_wallet_subtypes": [
"Org-Controlled"
],
"token_id": "BTC",
"est_apr": 0.05,
"validators_info": [
{
"pool_type": "Babylon",
"name": "Cobo",
"icon_url": "https://example.com/icon.png",
"priority": 0,
"public_key": "eca1b104dce16c30705f4147a9c4a373ac88646c5d1bcda6a89c018940cb96a0",
"commission_rate": 0.1,
"supported_pos_chains": [
"Babylon",
"Cosmos",
"Ethereum"
]
}
],
"pool_type": "Babylon",
"min_amount": "0.01",
"max_amount": "100.00",
"min_stake_period": 30,
"max_stake_period": 1000,
"min_stake_blocks": 100,
"max_stake_blocks": 1000
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}Get staking pool details
This operation retrieves the detailed information about a specified staking pool.
import cobo_waas2
from cobo_waas2.models.pool_details import PoolDetails
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)
pool_id = "babylon_btc"
try:
# Get staking pool details
api_response = api_instance.get_staking_pool_by_id(pool_id)
print("The response of StakingsApi->get_staking_pool_by_id:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling StakingsApi->get_staking_pool_by_id: %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();
String poolId = "babylon_btc";
try {
PoolDetails result = apiInstance.getStakingPoolById(poolId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling StakingsApi#getStakingPoolById");
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() {
poolId := "babylon_btc"
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.GetStakingPoolById(ctx, poolId).Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `StakingsAPI.GetStakingPoolById``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `GetStakingPoolById`: PoolDetails
fmt.Fprintf(os.Stdout, "Response from `StakingsAPI.GetStakingPoolById`: %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 pool_id = "babylon_btc";
apiInstance.getStakingPoolById(pool_id).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"id": "babylon_btc",
"chain_id": "Bitcoin",
"protocol": "Babylon",
"protocol_icon_url": "https://example.com/icon.png",
"supported_wallet_types": [
"MPC"
],
"supported_wallet_subtypes": [
"Org-Controlled"
],
"token_id": "BTC",
"est_apr": 0.05,
"validators_info": [
{
"pool_type": "Babylon",
"name": "Cobo",
"icon_url": "https://example.com/icon.png",
"priority": 0,
"public_key": "eca1b104dce16c30705f4147a9c4a373ac88646c5d1bcda6a89c018940cb96a0",
"commission_rate": 0.1,
"supported_pos_chains": [
"Babylon",
"Cosmos",
"Ethereum"
]
}
],
"pool_type": "Babylon",
"min_amount": "0.01",
"max_amount": "100.00",
"min_stake_period": 30,
"max_stake_period": 1000,
"min_stake_blocks": 100,
"max_stake_blocks": 1000
}{
"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.pool_details import PoolDetails
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)
pool_id = "babylon_btc"
try:
# Get staking pool details
api_response = api_instance.get_staking_pool_by_id(pool_id)
print("The response of StakingsApi->get_staking_pool_by_id:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling StakingsApi->get_staking_pool_by_id: %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();
String poolId = "babylon_btc";
try {
PoolDetails result = apiInstance.getStakingPoolById(poolId);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling StakingsApi#getStakingPoolById");
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() {
poolId := "babylon_btc"
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.GetStakingPoolById(ctx, poolId).Execute()
if err != nil {
fmt.Fprintf(os.Stderr, "Error when calling `StakingsAPI.GetStakingPoolById``: %v\n", err)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `GetStakingPoolById`: PoolDetails
fmt.Fprintf(os.Stdout, "Response from `StakingsAPI.GetStakingPoolById`: %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 pool_id = "babylon_btc";
apiInstance.getStakingPoolById(pool_id).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.
Path Parameters
The ID of the staking pool. A staking pool is a pairing of a staking protocol and a specific type of token. You can call List staking pools to retrieve a list of staking pools.
Response
A staking pool has been successfully retrieved.
The detailed information about the staking protocol.
The ID of the staking pool. A staking pool is a pairing of a staking protocol and a specific type of token.
"babylon_btc"
The chain ID.
"Bitcoin"
The name of the protocol.
"Babylon"
The URL of the protocol's icon.
"https://example.com/icon.png"
The wallet type. Possible values include:
-
Custodial: Custodial Wallets -
MPC: MPC Wallets -
SmartContract: Smart Contract Wallets -
Exchange: Exchange Wallets
The wallet type. Possible values include:
-
Custodial: Custodial Wallets -
MPC: MPC Wallets -
SmartContract: Smart Contract Wallets -
Exchange: Exchange Wallets
Custodial, MPC, SmartContract, Exchange ["MPC"]
The wallet subtype. Possible values include:
Asset: Custodial Wallets (Asset Wallets).Web3: Custodial Wallets (Web3 Wallets).Org-Controlled: MPC Wallets (Organization-Controlled Wallets).User-Controlled: MPC Wallets (User-Controlled Wallets).Safe{Wallet}: Smart Contract Wallets (Safe{Wallet}).Main: Exchange Wallets (Main Account).Sub: Exchange Wallets (Sub Account).
The wallet sub-type. Possible values include:
Asset: Custodial Wallets (Asset Wallets).Web3: Custodial Wallets (Web3 Wallets).Org-Controlled: MPC Wallets (Organization-Controlled Wallets).User-Controlled: MPC Wallets (User-Controlled Wallets).Safe{Wallet}: Smart Contract Wallets (Safe).Main: Exchange Wallets (Main Account).Sub: Exchange Wallets (Sub Account).
Each wallet sub-type requires a different set of properties. Switch between the above tabs for details.
Asset, Web3, Org-Controlled, User-Controlled, Safe{Wallet}, Main, Sub ["Org-Controlled"]
The token ID.
"BTC"
The estimated annual percentage rate (APR).
0.05
A list of available validators.
Show child attributes
Show child attributes
The type of the staking pool. Possible values are:
Babylon: Babylon staking poolETHBeacon: Ethereum Beacon Chain staking poolCoreBTC: Core BTC staking poolSkyFarm: SKY farm staking poolBitHive: BitHive staking poolBERABeacon: BERA Beacon Chain staking poolBeraChainBGT: Bera Chain BGT staking pool
Babylon, ETHBeacon, CoreBTC, SkyFarm, BitHive, BERABeacon, BeraChainBGT "Babylon"
The minimum amount that can be staked in one staking request.
"0.01"
The maximum amount that can be staked in one staking request.
"100.00"
The minimum staking period, in days.
30
The maximum staking period, in days.
1000
The minimum block number. A block number indicates the number of blocks that need to be processed before the locked tokens are unlocked and become accessible.
100
The maximum block number. A block number indicates the number of blocks that need to be processed before the locked tokens are unlocked and become accessible.
1000
Was this page helpful?
