Skip to main content
POST
Transfer Vault Lock

Authentication

❌ Tenant User (TenantUser)
✅ Organization User (CustomerEmployee)
❌ End User (EndUser)
✅ Service Account

Required Permissions

Vaults:Locks:Transfer: Always required.

Authorizations

Authorization
string
header
required

Bearer Token: Used to authenticate API requests. More details how to generate the token: Authentication flows

X-DFNS-USERACTION
string
header
required

User Action Signature: Used to sign the change-inducing API requests. More details how to generate the token: User Action Signing flows

Path Parameters

vaultId
string
required

Vault id.

Required string length: 1 - 64
Pattern: ^vlt-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
lockId
string
required

Vault lock id.

Required string length: 1 - 64
Pattern: ^vlt-lck-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$

Body

application/json
amount
string
required

The amount to send to the lock's beneficiary, in minimum denomination. At most the locked amount; the unsent remainder returns to the vault's available balance once the transfer is confirmed.

Pattern: ^\d+$

Response

200 - application/json

Success

id
string
required

Transfer id.

Required string length: 1 - 64
Pattern: ^xfr-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"xfr-20g4k-nsdpo-mg6arrifgvid4orn"

walletId
string
required

The source wallet for this tranfer.

Required string length: 1 - 64
Pattern: ^wa-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"wa-5pfuu-9euek-h0odgb6snva8ph3k"

network
enum<string>
required

The blockchain network this transfer is on.

Available options:
Algorand,
AlgorandTestnet,
Aptos,
AptosTestnet,
ArbitrumOne,
ArbitrumSepolia,
Arc,
ArcTestnet,
Areum,
AvalancheC,
AvalancheCFuji,
Base,
BaseSepolia,
Berachain,
BerachainBepolia,
Bitcoin,
BitcoinSignet,
BitcoinTestnet4,
BitcoinCash,
Bob,
BobSepolia,
Bsc,
BscTestnet,
Canton,
CantonTestnet,
Cardano,
CardanoPreprod,
Concordium,
ConcordiumTestnet,
Celo,
CeloSepolia,
Codex,
CodexSepolia,
CosmosHub4,
CosmosIcsTestnet,
Dogecoin,
DogecoinTestnet,
Ethereum,
EthereumClassic,
EthereumClassicMordor,
EthereumSepolia,
EthereumHoodi,
FlareC,
FlareCCoston2,
FlowEvm,
FlowEvmTestnet,
Hedera,
HederaTestnet,
HyperEvm,
HyperEvmTestnet,
Ink,
InkSepolia,
InternetComputer,
Ion,
IonTestnet,
Iota,
IotaTestnet,
Kusama,
KusamaAssetHub,
Litecoin,
LitecoinTestnet,
Monad,
MonadTestnet,
Movement,
MovementTestnet,
Near,
NearTestnet,
Optimism,
OptimismSepolia,
Origyn,
Plasma,
PlasmaTestnet,
Plume,
PlumeSepolia,
Paseo,
PaseoAssetHub,
Polkadot,
PolkadotAssetHub,
Polygon,
PolygonAmoy,
Polymesh,
PolymeshTestnet,
Rayls,
RaylsTestnet,
Robinhood,
RobinhoodSepolia,
SeiAtlantic2,
SeiPacific1,
Solana,
SolanaDevnet,
Sonic,
SonicTestnet,
Starknet,
StarknetSepolia,
Stellar,
StellarTestnet,
Sui,
SuiTestnet,
Tezos,
TezosShadownet,
Tempo,
TempoModerato,
Tsc,
TscTestnet1,
Ton,
TonTestnet,
Tron,
TronNile,
Westend,
WestendAssetHub,
Xdc,
XdcApothem,
XLayer,
XLayerSepolia,
XrpLedger,
XrpLedgerTestnet
requester
object
required

The user who initiated the request.

requestBody
Native Asset · object
required
metadata
object
required

Additional metadata about the transfered asset.

status
enum<string>
required

Transfer status.

Available options:
Pending,
Executing,
Broadcasted,
Confirmed,
Failed,
Rejected
dateRequested
string<date-time>
required

ISO 8601 date (must be UTC). When the transfer was requested.

Example:

"2023-04-14T20:41:28.715Z"

reason
string

The reason for a failed transfer.

debugTrace
any

Raw blockchain node diagnostics, when available. Omitted when the diagnostic or response size limit is exceeded.

txHash
string

The blockchain transaction hash for this transfer.

fee
string

The fee paid for this transfer in minimum denomination.

datePolicyResolved
string<date-time>

ISO 8601 date (must be UTC). When the transfer was approved by policy reviewers.

Example:

"2023-04-14T20:41:28.715Z"

dateBroadcasted
string<date-time>

ISO 8601 date (must be UTC). When the transfer was broadcasted to the blockchain.

Example:

"2023-04-14T20:41:28.715Z"

dateConfirmed
string<date-time>

ISO 8601 date (must be UTC). When the transfer was confirmed on chain.

Example:

"2023-04-14T20:41:28.715Z"

approvalId
string

The id of the approval request if this transfer triggered a policy.

Required string length: 1 - 64
Pattern: ^ap-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"ap-2a9in-tt2a1-983lho480p35ejd0"

externalId
string

The external id provided at transfer creation time.

feeSponsorId
string

The fee sponsor id used to pay for the transfer fees.

Required string length: 1 - 64
Pattern: ^fs-[a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{14,16}$
Example:

"fs-5vqdl-gliqk-b4rfukqauov1sp7j"

replacementId
string

The id of the replacement transaction (cancel or speed-up) issued for this transfer.

details
object

Structured representation of the data used to construct the signature (e.g. nonce, gas parameters). Shape is blockchain specific.