Create stake action
Creates a new action for an existing stake. Use this endpoint to initiate a withdrawal or another protocol‑supported staking action.
- HTTP request
- POST/staking/stakes/{stakeId}/actions
- Authentication
-
Authentication Type Supported Organization User (CustomerEmployee) Yes Delegated User (EndUser) No Service Account Yes - Required permissions
- Stakes:Update (always required)
- Authorization requirements
-
Header Type Required Description Authorization string Yes Bearer token used to authenticate the request. See Authentication flows for details. X-DFNS-USERACTION string Yes User Action Signature used to sign change‑inducing requests. See User Action Signing flows for guidance. - Path parameters
-
Parameter Type Required Description stakeId string Yes Unique identifier of the stake. Minimum length is 1 character. - Request body
-
Use this object when creating an IOTA withdrawal action.
Field Type Required protocol enum string Yes kind enum string Yes amount string Yes externalId string No curl --request POST \ --url https://api.digitalassets.ibm.com/staking/stakes/{stakeId}/actions \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'X-DFNS-USERACTION: <api-key>' \ --data ' { "protocol": "Iota", "kind": "Withdraw", "amount": "<string>", "externalId": "<string>" } ' - Response
- 200: Success
Example response:
{ "id": "<string>", "walletId": "<string>", "status": "Active", "requester": { "userId": "<string>", "tokenId": "<string>" }, "requestBody": { "protocol": "Babylon", "walletId": "<string>", "provider": "Figment", "amount": "<string>", "duration": 123, "externalId": "<string>" }, "dateCreated": "<string>", "protocol": "Babylon", "data": { "finalityProviders": [ "<string>" ], "covenantPubkeys": [ "<string>" ], "magicBytes": "<string>", "covenantThreshold": 123, "minUnbondingTime": 123, "lockHeight": 123 }, "actions": [ { "id": "<string>", "stakeId": "<string>", "kind": "Stake", "requester": { "userId": "<string>", "tokenId": "<string>" }, "requestBody": { "protocol": "Babylon", "walletId": "<string>", "provider": "Figment", "amount": "<string>", "duration": 123, "externalId": "<string>" }, "dateCreated": "<string>", "transactionId": "<string>", "signatureId": "<string>", "transactionHash": "<string>", "failureReason": "<string>" } ], "provider": "Figment" }