sui_executeTransactionBlock
Execute a signed transaction (Sui JSON-RPC compatible) and answer with final effects.
Details
- Endpoint
- POST sui_executeTransactionBlock (JSON-RPC)
- Credits
- 5
- Rate class
- send
The classic Sui JSON-RPC method on tide's fast send path: params [txBytes, signatures, options, requestType], answered as SuiTransactionBlockResponse. options take showEffects, showEvents, showObjectChanges, showBalanceChanges, showRawEffects and showRawInput; showInput returns the sender, gas data and signatures only. It always answers once the effects are certified (final); requestType is accepted and confirmedLocalExecution is false. Point an existing JSON-RPC client's execute call here and it works unchanged. Same idempotency, errors and credits as POST /v0/transactions/send.
Parameters
| Name | Type | Description |
|---|---|---|
| tx_bytes | string | The transaction the wallet signed: base64 BCS TransactionData (the `bytes` that `Transaction.sign` or a wallet's signTransaction returns). |
| signatures | array of string | Base64 serialized signatures, one per signer: the sender's, plus the sponsor's when someone else pays gas. A multisig, zkLogin or passkey signature counts as one. A single string is accepted too. |
| options | object | showEffects, showEvents, showObjectChanges, showBalanceChanges, showRawEffects, showRawInput, showInput (all false by default). |
| request_type | string | Accepted for compatibility; tide always waits for certified effects. |
Request
Send your key in the x-api-key header, or leave it out to use the keyless tier.
curl -X POST "https://api.tide.ad/" \
-H "x-api-key: YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "sui_executeTransactionBlock",
"params": {
"tx_bytes": "AAACAAj2OsVJNwAAAAAgIBRJpGJ1nSuyDwkig3rAnSMlCDGWo4I+6u9CdMvAsOkCAgABAQAAAQEDAAAAAAEBALj32Sf8VGVrj0peUPTjrK1zhsojX66sHDkNMh2vY4YAATp9kIKhymluuJmqx0jaBd8m8gUC1HaPcOuQUrvRblX0AAAAAAAAAAAgQJ78pygSAAAWBQAArKysrKysrKysrKysrKysrKysrKy499kn/FRla49KXlD046ytc4bKI1+urBw5DTIdr2OGAGQAAAAAAAAAoCASAAAAAAACARYFAAAAAAAAARcFAAAAAAAAAAAgNYNKisF8pI+xSsj5nBfJh0fpXdBylK5BpGs4IkakSZu9sq/a",
"signatures": [
"AKe6ytTI4aMRU6Y2SDHk1B6U+o4LW9IO1sgdpSLdMSFCR2hbfPBKpjFC8s8I4Sgb7LCTAR1pPfNAWjzmCAAMlwg117Mbqnsu2ZrhvRnTlFLFDOnN9B6SeD0J2DbsPuW9Uw=="
],
"options": {
"showEffects": true,
"showEvents": true
}
}
}'const res = await fetch("https://api.tide.ad/", {
method: "POST",
headers: {
"x-api-key": process.env.TIDE_API_KEY!,
"content-type": "application/json",
},
body: JSON.stringify({
"jsonrpc": "2.0",
"id": 1,
"method": "sui_executeTransactionBlock",
"params": {
"tx_bytes": "AAACAAj2OsVJNwAAAAAgIBRJpGJ1nSuyDwkig3rAnSMlCDGWo4I+6u9CdMvAsOkCAgABAQAAAQEDAAAAAAEBALj32Sf8VGVrj0peUPTjrK1zhsojX66sHDkNMh2vY4YAATp9kIKhymluuJmqx0jaBd8m8gUC1HaPcOuQUrvRblX0AAAAAAAAAAAgQJ78pygSAAAWBQAArKysrKysrKysrKysrKysrKysrKy499kn/FRla49KXlD046ytc4bKI1+urBw5DTIdr2OGAGQAAAAAAAAAoCASAAAAAAACARYFAAAAAAAAARcFAAAAAAAAAAAgNYNKisF8pI+xSsj5nBfJh0fpXdBylK5BpGs4IkakSZu9sq/a",
"signatures": [
"AKe6ytTI4aMRU6Y2SDHk1B6U+o4LW9IO1sgdpSLdMSFCR2hbfPBKpjFC8s8I4Sgb7LCTAR1pPfNAWjzmCAAMlwg117Mbqnsu2ZrhvRnTlFLFDOnN9B6SeD0J2DbsPuW9Uw=="
],
"options": {
"showEffects": true,
"showEvents": true
}
}
}),
});
const data = await res.json();Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"digest": "4fnSPCCnT5w2i9FAyGSCsVDvG2trKymYZw8soRpNngss",
"effects": {
"messageVersion": "v1",
"status": {
"status": "success"
},
"executedEpoch": "1302",
"gasUsed": {
"computationCost": "100000",
"storageCost": "988000",
"storageRebate": "0",
"nonRefundableStorageFee": "0"
},
"modifiedAtVersions": [],
"transactionDigest": "4fnSPCCnT5w2i9FAyGSCsVDvG2trKymYZw8soRpNngss",
"created": [
{
"owner": {
"AddressOwner": "0x201449a462759d2bb20f0922837ac09d2325083196a3823eeaef4274cbc0b0e9"
},
"reference": {
"objectId": "0x814445f2832a5a823ae2a47551f83de89458839aecaaeefe046b4c7739c8b011",
"version": 1,
"digest": "4ZwQiqc68MdSed5rs7MBfaonNQFebWtnTh8eFNfzd5UJ"
}
}
],
"dependencies": []
},
"events": [],
"confirmedLocalExecution": false
}
}