Estimate Transaction Fee: Withdraw

Which destination type should I use to send out crypto to an end user’s external wallet?

My request body:

{
 "operation":"TRANSFER",
 "assetId" => "SOL_TEST", //assetId under specified account
 "feeLevel" => "MEDIUM",
 "amount" => "1237000000000",
 "source":{
    "type":"VAULT_ACCOUNT",
    "id" => "1"
 },
 "destination":{
   "type": ??? which one from "END_USER_WALLET" or 
               "ONE_TIME_ADDRESS" or "EXTERNAL_WALLET",
   "oneTimeAddress":{
        "address":"USER_EXTERNAL_WALLET"
    }
  }
}

if I use destination = "type": "ONE_TIME_ADDRESS", it works. Is this result the same as the result from Estimate Network Fee ?
But
if I use destination = "type": "END_USER_WALLET"
I got error: Bad source id: undefined. Must be an number

if I use destination = "type": "EXTERNAL_WALLET"
I got error: One or more destinations are invalid","code":1428

Hi @reuy and welcome to the Fireblocks developer community!
You should be using END_USER_WALLET to send to an end user wallet from your vault, it will need an id, which is the wallet id

{
 "operation":"TRANSFER",
 "assetId" => "SOL_TEST", //assetId under specified account
 "feeLevel" => "MEDIUM",
 "amount" => "1237000000000",
 "source":{
    "type":"VAULT_ACCOUNT",
    "id" => "1"
 },
 "destination":{
   "type": "END_USER_WALLET",
   "id": {walletId}

  }
}