Dfns API Documentation
  • 👋Welcome
  • Getting Started
    • Onboarding to Dfns
    • Dfns Environments
    • Core API Objects
    • Supported Assets
    • Postman
    • Dfns SDKs
    • Dashboard Videos
  • API Docs
    • Introduction
    • Authentication
      • Delegated Authentication
        • Delegated Registration
        • Delegated Registration Restart
        • Delegated Login
      • User Action Signing
        • Create User Action Signature Challenge
        • Create User Action Signature
      • Registration
        • Create User Registration Challenge
        • Complete User Registration
        • Complete End User Registration with Wallets
        • Resend Registration Code
        • Social Registration
      • Login
        • Create User Login Challenge
        • Complete User Login
        • Social Login
        • Logout
        • Send Login Code
      • Users
        • List Users
        • Create User
        • Get User
        • Activate User
        • Deactivate User
        • Archive User
      • Service Accounts
        • List Service Accounts
        • Create Service Account
        • Get Service Account
        • Update Service Account
        • Activate Service Account
        • Deactivate Service Account
        • Archive Service Account
      • Applications
        • List Applications
        • Create Application
        • Create Server-Signed Application
        • Get Application
        • Update Application
        • Activate Application
        • Deactivate Application
        • Archive Application
      • Personal Access Tokens
        • List Personal Access Tokens
        • Create Personal Access Token
        • Get Personal Access Token
        • Update Personal Access Token
        • Activate Personal Access Token
        • Deactivate Personal Access Token
        • Archive Personal Access Token
      • Credentials
        • Credentials Overview
        • API Reference
          • Create Credential Code
          • Create Credential Challenge
          • Create Credential Challenge With Code
          • Create Credential
          • Create Credential With Code
          • Deactivate Credential
          • Activate Credential
          • List Credentials
      • Recovery
        • Send Recovery Code Email
        • Create Recovery Challenge
        • Create Delegated Recovery Challenge
        • Recover User
    • Wallets
      • Create Wallet
      • Update Wallet
      • Delete Wallet
      • [deprecated] Delegate Wallet
      • Get Wallet by ID
      • List Wallets
      • Get Wallet Assets
      • Get Wallet NFTs
      • Get Wallet History
      • Tag Wallet
      • Untag Wallet
      • Transfer Asset
      • Get Transfer Request by ID
      • List Transfer Requests
      • Sign and Broadcast Transaction
        • Algorand
        • Aptos
        • Bitcoin / Litecoin
        • Canton
        • Cardano
        • EVM
        • Solana
        • Stellar
        • Tezos
        • TRON
        • XRP Ledger (Ripple)
      • Get Transaction Request by ID
      • List Transaction Requests
      • [deprecated] Generate Signature
      • Advanced Wallet APIs
        • Import Wallet
        • [deprecated] Export Wallet
    • Fee Sponsors
      • Create Fee Sponsor
      • Get Fee Sponsor
      • List Fee Sponsors
      • Activate Fee Sponsor
      • Deactivate Fee Sponsor
      • Delete Fee Sponsor
      • List Sponsored Fees
    • Keys
      • Create Key
      • Update Key
      • Delete Key
      • Delegate Key
      • Get Key by ID
      • List Keys
      • Generate Signature
        • Algorand
        • Aptos
        • Bitcoin / Litecoin
        • Cardano
        • Cosmos Appchain
        • EVM
        • Solana
        • Stellar
        • Substrate (Polkadot)
        • Tezos
        • TON
        • TRON
        • XRP Ledger (Ripple)
      • Get Signature Request by ID
      • List Signature Requests
      • Advanced Key APIs
        • Import Key
        • Export Key
        • Deterministic Derivation
    • Networks
      • Estimate fees
      • Read Contract
      • Validators
        • Create Validator
        • List Validators
    • Policy Engine
      • Policies Overview
      • API Reference
        • Create Policy
        • Get Policy
        • List Policies
        • Update Policy
        • Archive Policy
        • Get Approval
        • List Approvals
        • Create Approval Decision
    • Permissions
      • Permissions Overview
      • API Reference
        • Get Permission
        • List Permissions
        • Create Permission
        • Update Permission
        • Archive Permission
        • Assign Permission
        • Revoke Permission
        • List Permission Assignments
    • Webhooks
      • Create Webhook
      • Get Webhook
      • List Webhooks
      • Update Webhook
      • Delete Webhook
      • Ping Webhook
      • Get Webhook Event
      • List Webhook Events
    • Dfns Change Log
    • API Errors
  • Integrations
    • Exchanges
      • Kraken
      • Binance
      • Coinbase Prime
      • API Reference
        • Create Exchange
        • List Exchanges
        • Get Exchange
        • Delete Exchange
        • List Exchange Accounts
        • List Exchange Account Assets
        • Create Exchange Deposit
        • Create Exchange Withdrawal
    • AML / KYT
      • Chainalysis
    • Staking
      • API Reference
        • Create Stake
        • Create Stake Action
        • List Stakes
        • List Stake Actions
        • get Rewards
    • Fiat On/Off-Ramps
    • Account Abstraction on EVMs
  • Advanced Topics
    • Authentication
      • API Authentication
      • Request Headers
      • Credentials
        • Generate a Key Pair
        • User Credentials
        • Access Token Credentials
        • Storing WebAuthn Credentials in Password Managers
      • Request Signing
      • API objects
    • Delegated Signing
    • API Idempotency
    • FAQ
  • Guides
    • Passkey Settings - Migration guide
    • Keys & Multichain - Migration Guide
Powered by GitBook
On this page
  • Required Permissions
  • Parameters
  • Body
  • Response
  • Response example
  • Remarks
  1. Integrations
  2. Staking
  3. API Reference

Create Stake

Last updated 1 month ago

POST /staking/stakes

Creates a new stake.

  • User action signature required. See for more information.

  • Request headers required. See for more information.

  • Authentication required. See for more information.

Required Permissions

Name
Conditions

Stakes:Create

Always Required

Parameters

Body

Property
Required/Optional
Description
Type

walletId *

Required

Id of the Dfns wallet making the deposit.

String

amount *

Required

Transaction amount denominated in min units

String

provider

Optional

Staking Provider, Eg "Figment"

String

protocol *

Required

Staking Protocol, Eg "Babylon", "Iota",..

String

Currently, only two kind are possible: LockedNative for vested staking on IOTA and Native otherwise.

Depending on the protocol, some arguments are required when creating a stake:

Babylon

fields
Type

duration*

number

Iota

You need to choose between amount and lockedIotas to indicate if you want to stake vested coins or native coins

fields
Type
Remarks

validator*

string

amount

string

lockedIotas

string[]

for vested staking

Example

{
  "walletId": "wa-fd328-9v5a8-xxxxxxxxxxxxxxxx",
  "provider": "Figment",
  "protocol": "Babylon",
  "duration": 150,
  "amount": "50000"
}

Response

Response example

{
  "id": "stk-5q230-nl4b0-xxxxxxxxxxxxxxxx",
  "provider": "Figment",
  "providerStakeId": "1dd3b430-729e-4935-8da1-bc7af56a4e7a",
  "walletId": "wa-fd328-9v5a8-xxxxxxxxxxxxxxxx",
  "protocol": "Babylon",
  "status": "Active",
  "requester": {
    "userId": "us-3htce-s75t3-xxxxxxxxxxxxxxxx",
    "tokenId": "to-72305-jh38s-xxxxxxxxxxxxxxxx",
    "appId": "ap-3g5ir-mt688-xxxxxxxxxxxxxxxx"
  },
  "requestBody": {
    "amount": "50000",
    "walletId": "wa-fd328-9v5a8-xxxxxxxxxxxxxxxx",
    "provider": "Figment",
    "protocol": "Babylon",
    "duration": 150
  },
  "dateCreated": "2024-11-27T19:05:33.551Z",
  "actions": [
    {
      "id": "stktx-7cmu5-u8pct-xxxxxxxxxxxxxxxx",
      "stakeId": "stk-5q230-nl4b0-xxxxxxxxxxxxxxxx",
      "transactionId": "tx-4j1md-uperm-xxxxxxxxxxxxxxxx",
      "kind": "Stake",
      "requester": {
        "userId": "us-3htce-s75t3-xxxxxxxxxxxxxxxx",
        "tokenId": "to-72305-jh38s-xxxxxxxxxxxxxxxx",
        "appId": "ap-3g5ir-mt688-xxxxxxxxxxxxxxxx"
      },
      "requestBody": {
        "amount": "50000",
        "walletId": "wa-fd328-9v5a8-xxxxxxxxxxxxxxxx",
        "provider": "Figment",
        "protocol": "Babylon",
        "duration": 150
      },
      "dateCreated": "2024-11-27T19:05:33.551Z"
    }
  ] 
}

Remarks

When creating a stake it will implicitly create a StakeAction with kind Stake

User Action Signing
Request Headers
Authentication Headers