spark_flashnet_signIntent
Use the spark_flashnet_signIntent method to request a signed Flashnet intent from the userβs Spark wallet.
An intent describes a Flashnet action (swap, liquidity, or pool creation).
The wallet serializes the intent, shows the user a clear review screen, and signs it with their Spark key.
Parameters
{
"type": "executeSwap"
| "executeRouteSwap"
| "createConstantProductPool"
| "createSingleSidedPool"
| "confirmInitialDeposit"
| "addLiquidity"
| "removeLiquidity"
| "clawback",
"data": { /* intent-specific fields */ }
}Supported Intents & Examples
π Swaps
executeSwapBased on Flashnet Execute Swap.{ "type": "executeSwap", "data": { "userPublicKey": "02abcdef...", "poolId": "03aabb...", "transferId": "spark-transfer-123", "assetInAddress": "03bitcoinassetpubkey...", "assetOutAddress": "03usdstablecoinpubkey...", "amountIn": "100000000", "maxSlippageBps": 50, "minAmountOut": "99500000", "totalIntegratorFeeRateBps": 100, "nonce": "unique-swap-nonce-123" } }executeRouteSwapBased on Flashnet Route Swap.{ "type": "executeRouteSwap", "data": { "userPublicKey": "02abcdef...", "initialSparkTransferId": "spark-route-transfer-123456", "hops": [ { "poolId": "03pool1...", "inputAssetAddress": "03bitcoinassetpubkey...", "outputAssetAddress": "03ethereumassetpubkey...", "hopIntegratorFeeRateBps": 25 }, { "poolId": "03pool2...", "inputAssetAddress": "03ethereumassetpubkey...", "outputAssetAddress": "03usdstablecoinpubkey...", "hopIntegratorFeeRateBps": 25 } ], "inputAmount": "100000000", "maxRouteSlippageBps": 200, "minAmountOut": "99500000", "defaultIntegratorFeeRateBps": 50, "nonce": "unique-route-swap-nonce-789" } }
π Token Launch
createConstantProductPoolBased on Flashnet Create Constant Product Pool.createSingleSidedPoolBased on Flashnet Create Bonding Pool.confirmInitialDepositBased on Flashnet Confirm Initial Deposit.
π§ Liquidity
addLiquidityBased on Flashnet Add Liquidity.removeLiquidityBased on Remove Liquidity.clawbackBased on Flashnet Clawback Funds.
Response
β
Success
On success, the method resolves to the signed intent:
intentβ the full serialized Flashnet intentsignatureβ signature from the userβs Spark identity key
β Error
On error, the method rejects with an error object:
Common failure cases include:
Malformed request (missing required fields like
poolIdorassetInAddress)Unsupported type (intent type not recognized)
Invalid values (negative amounts, bad public key format, etc.)
Wallet-level rejection (user cancels the request)
These errors are surfaced as standard Sats Connect errors for your App to handle.
Last updated