Skip to main content
POST
/
stakings
/
activities
/
stake
import cobo_waas2
from cobo_waas2.models.create_stake_activity201_response import (
    CreateStakeActivity201Response,
)
from cobo_waas2.models.create_stake_activity_request import CreateStakeActivityRequest
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_stake_activity_request = cobo_waas2.CreateStakeActivityRequest(
        pool_id="babylon_btc_signet",
        amount="100.00",
        fee=cobo_waas2.TransactionRequestFee(
            cobo_waas2.TransactionRequestFixedFee(
                fee_type="EVM_EIP_1559", token_id="TRON"
            )
        ),
    )

    try:
        # Create stake activity
        api_response = api_instance.create_stake_activity(
            create_stake_activity_request=create_stake_activity_request
        )
        print("The response of StakingsApi->create_stake_activity:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling StakingsApi->create_stake_activity: %s\n" % e)

{
  "activity_id": "0111039d-27fb-49ba-b172-6e0aa80e37ec",
  "staking_id": "0111039d-27fb-49ba-b172-6e0aa80e37ec"
}
import cobo_waas2
from cobo_waas2.models.create_stake_activity201_response import (
    CreateStakeActivity201Response,
)
from cobo_waas2.models.create_stake_activity_request import CreateStakeActivityRequest
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_stake_activity_request = cobo_waas2.CreateStakeActivityRequest(
        pool_id="babylon_btc_signet",
        amount="100.00",
        fee=cobo_waas2.TransactionRequestFee(
            cobo_waas2.TransactionRequestFixedFee(
                fee_type="EVM_EIP_1559", token_id="TRON"
            )
        ),
    )

    try:
        # Create stake activity
        api_response = api_instance.create_stake_activity(
            create_stake_activity_request=create_stake_activity_request
        )
        print("The response of StakingsApi->create_stake_activity:\n")
        pprint(api_response)
    except Exception as e:
        print("Exception when calling StakingsApi->create_stake_activity: %s\n" % e)

Authorizations

BIZ-API-KEY
string
header
required

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

application/json

The request body to create a staking request.

pool_id
enum<string>
required

The ID of the staking pool. A staking pool is a pairing of a staking protocol and a specific type of token. Currently, berachain_bgt and berachain_bgt_testnet are not supported.

Available options:
babylon_btc_signet,
babylon_btc,
beacon_eth,
beacon_eth_holesky,
core_btc,
core_xtn,
sky_farm_eth_usdc,
bithive_signet,
bithive,
beacon_bera,
beacon_bera_testnet,
berachain_bgt,
berachain_bgt_testnet
Example:

"babylon_btc_signet"

amount
string
required

The amount to stake.

Example:

"100.00"

fee
object
required

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
request_id
string

The request ID that is used to track a request. The request ID is provided by you and must be unique within your organization.

Example:

"f47ac10b-58cc-4372-a567-0e02b2c3d479"

source
object

The information about the staking source.

extra
object

The base information about a staking protocol. The staking information specific to the Babylon protocol.

  • Babylon
  • Ethereum Beacon Chain
  • CORE
app_initiator
string

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.

Example:

"steve@example.com"

Response

Successfully created a staking activity.

activity_id
string
required

The activity ID.

Example:

"0111039d-27fb-49ba-b172-6e0aa80e37ec"

staking_id
string

The ID of the staking position.

Example:

"0111039d-27fb-49ba-b172-6e0aa80e37ec"