API call to transfer tokens out of FIreBlocks custody account not working

I was trying to transfer some tokens out of one of asset which is a ERC20 deployed in polygone blockchain. There are 500 tokens in custody of FireBlocks vault. I already tested the transfer using FireBlocks dashboard and now i was do this with API call. Here is the code i am trying to test but it’s return 400 error. Any suggestion what might be wrong. I guess id in source is the vault id while id in destination should be the polygon address where i want to send token out

	const payload: TransactionArguments = {
		assetId: "TT11_POLYGON_TEST_MUMBAI_JOWK",
		source: {
			type: PeerType.VAULT_ACCOUNT,
			id: "1"
		},
		destination: {
			type: PeerType.ONE_TIME_ADDRESS,
			id: "0x1a8929fbE9abEc00CDfCda8907408848cBeb5300"
		},
		amount: "25",
		fee: String("0"),
		note: "Created by fireblocks SDK"
	};
	

	const result = await fireblocks.createTransaction(payload);

	console.log( JSON.stringify(result) );

Hi @shahzad73

When using a one-time address as the destination, you need to use a oneTimeAddress object like so:

    destination: {
        type: PeerType.ONE_TIME_ADDRESS,
        oneTimeAddress: {
            address: "0x1a8929fbE9abEc00CDfCda8907408848cBeb5300"
        }
    }

Also, note that the fee parameter should only be used for UTXO-based assets and XRP.

thanks,
yes it worked