Prepare bridge
Requires scope transactions:create.
ApiKeyAuthorizationBearer <sk_test_ or sk_live_ key>Your sk_live_ / sk_test_ API key
application/json- body
chain*stringThe chain the USD₮ leaves from: ethereum, arbitrum, polygon, optimism, base or plasma.
"ethereum""arbitrum""polygon""optimism""base""plasma"destinationChain*stringWhere the USD₮ lands: any of the six source chains other than chain, or tron.
"ethereum""arbitrum""polygon""optimism""base""plasma""tron"recipient*stringThe address that receives the USD₮ on destinationChain: a 0x address for an EVM destination, a base58 T... address for tron.
1 <= length <= 128amount*stringAmount of USD₮ to send, in token units (for example "100").
^\d+(\.\d{1,6})?$length <= 80safeAddress*stringThe Safe doing the bridge.
^0x[0-9a-fA-F]{40}$passkeyPublicKey*Response Body
200application/json
Unsigned bridge userOperation
TypeScript Definitions
Use the response body type in TypeScript.
400application/json
As for the quote, or the Safe cannot cover the amount plus the gas
TypeScript Definitions
Use the response body type in TypeScript.
401application/json
The Authorization header is missing, malformed, or the API key is unknown or revoked
TypeScript Definitions
Use the response body type in TypeScript.
409application/json
The passkey does not own this Safe, the wallet is under recovery, the Safe is not deployed, or the same userOperation is already in flight
TypeScript Definitions
Use the response body type in TypeScript.
429application/json
The API key exceeded its request budget for the window
TypeScript Definitions
Use the response body type in TypeScript.
Language
curl -X POST 'https://api.pilot.shiga.io/v1/bridges/prepare' \ -H 'Authorization: Bearer sk_test_...' \ -H 'Content-Type: application/json' \ -d '{ "chain": "ethereum", "destinationChain": "ethereum", "recipient": "string", "amount": "string", "safeAddress": "string", "passkeyPublicKey": { "x": "string", "y": "string" }}'{ "data": { "chain": "base", "destinationChain": "arbitrum", "moduleId": "evm_erc4337", "senderAddress": "string", "recipient": "string", "asset": "usdt", "amountIn": "string", "amountOut": "string", "minAmountOut": "string", "bridgeFee": "string", "bridgeFeeBps": 34, "estimatedFillSeconds": 2, "quoteExpiresAt": "2019-08-24T14:15:22Z", "feeToken": "usdt", "gas": "string", "sponsored": false, "userCost": "string", "gasEstimated": true, "provider": "across", "bridgeId": "cca4409a-da51-4564-bde8-29efe705cbe3", "safeAddress": "string", "userOp": {}, "userOpHash": "string" }, "status": 200, "success": true}