Build an unsigned external-wallet deposit transaction
Builds one unsigned vault deposit transaction for a wallet SDP does not custody. By default the owner is the fee payer and only required signer; pass feePayer to pay the network fee (and any first-deposit account rent) from your own wallet instead — the transaction then also requires that wallet's signature, added server-side before submit. The transaction expires with its blockhash, and nothing moves until the signed bytes are submitted.
Headers
Selects the active project for this request. Required for session/dashboard callers. Ignored when authenticating with an API key, whose scope is fixed to the key's project.
Selects the active project for this request. Required for session/dashboard callers. Ignored when authenticating with an API key, whose scope is fixed to the key's project.
Request body
Example request
{
"strategyId": "earn_strategy_example",
"ownerAddress": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",
"feePayer": "3nMFwZXwY1s1M5s8vYAHqd4wGs4iSxXE4LRoUMMYqEgF",
"amount": "25",
"minSharesOut": "24.9",
"sourceTokenMint": "2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo",
"swapSlippageBps": 2
}Response
Unsigned deposit transaction
Example response
{
"data": {
"transaction": {
"transactionId": "earn_external_wallet_transaction_example",
"lastValidBlockHeight": "361186610",
"ownerAddress": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",
"feePayer": "3nMFwZXwY1s1M5s8vYAHqd4wGs4iSxXE4LRoUMMYqEgF",
"provider": "kamino",
"providerReference": "7uib8xGAwkaPz4ZGCA6t8sSEid5Yp9ty13PHUweTypx",
"tokenMint": "4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU",
"shareMint": "hXm2xSRF5PLKGMrTvAWqKhR76MuJX5dAabeSChkjqu2",
"amount": "25",
"minSharesOut": "25",
"swap": {
"sourceTokenMint": "2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo",
"sourceAmount": "25",
"depositAmount": "25",
"quotedAmount": "25",
"slippageBps": 2,
"priceImpactPct": "0.0001",
"routeLabels": [
"Whirlpool"
]
},
"strategy": {
"id": "earn_strategy_example",
"name": "Allez USDC",
"provider": "kamino",
"providerReference": "7uib8xGAwkaPz4ZGCA6t8sSEid5Yp9ty13PHUweTypx",
"hostCluster": "devnet"
}
}
},
"meta": {
"requestId": "req_example",
"timestamp": "2025-01-01T00:00:00.000Z"
}
}Changes
Changed in 3 of the 13 revisions of this API.27
- ○
added the new optional request property
new-optional-request-property
- ○
added
subschema #1subschema #2to theresponse propertyanyOflist for the response statusresponse-property-any-of-added
- ○
removed
subschema #1subschema #2from theresponse propertyanyOflist for the response statusresponse-property-any-of-removed
- ○
- ▲
the
response's property type changed fromobjectto no type for statusresponse-property-type-changed
- ▲
removed the required property
/from the response with the statusresponse-required-property-removed
- ○
added the new optional request property
new-optional-request-property
- ○
added the new optional request property
new-optional-request-property
- ○
added
subschema #1subschema #2to theresponse propertyanyOflist for the response statusresponse-property-any-of-added
- ▲
- ○
endpoint added
endpoint-added
- ○