tx.parse
Parse up to 100 transaction digests into typed, described transactions.
Details
- Endpoint
- POST /v0/transactions
- Credits
- varies
- Pricing
- Depends on the input and the size of the result. The description says how.
- Rate class
- Heavy. Counts against your heavy requests per second.
Send transaction digests and get back one TideTransaction each: type, source protocol, a plain-English description, SUI and coin transfers, balance changes, object changes, events, commands and an insight block (price impact, sandwich detection). The reply is a bare array in request order; digests tide does not have are left out. Amounts are raw integers with decimal-adjusted twins, SUI in MIST. Costs 1 credit per transaction returned.
Parameters
| Name | Type | Description |
|---|---|---|
| transactionsrequired | array of string | Transaction digests, 1 to 100. |
Request
Send your key in the x-api-key header, or leave it out to use the keyless tier.
curl
curl -X POST "https://api.tide.ad/v0/transactions" \
-H "x-api-key: YOUR_API_KEY" \
-H "content-type: application/json" \
-d '{
"transactions": [
"3nrSJ85TEooEfeXjbbDEVdsbebfYdFMXzHE3gBSHTkcT",
"2hhr9HKTRS7vnqc6r9ny7WQgecSzTnkAbPwrpGACKCE7"
]
}'TypeScript
const res = await fetch("https://api.tide.ad/v0/transactions", {
method: "POST",
headers: {
"x-api-key": process.env.TIDE_API_KEY!,
"content-type": "application/json",
},
body: JSON.stringify({
"transactions": [
"3nrSJ85TEooEfeXjbbDEVdsbebfYdFMXzHE3gBSHTkcT",
"2hhr9HKTRS7vnqc6r9ny7WQgecSzTnkAbPwrpGACKCE7"
]
}),
});
const data = await res.json();Response
JSON
[
{
"digest": "3nrSJ85TEooEfeXjbbDEVdsbebfYdFMXzHE3gBSHTkcT",
"checkpoint": 341030585,
"txIndex": 17,
"timestamp": 1793666900,
"epoch": 1300,
"type": "SWAP",
"source": "CETUS",
"description": "Swapped 605,797.47 ANAKIN for 15.43 SUI ($13.54) on Cetus ANAKIN/SUI 0.01% pool, through an unlabelled contract.",
"status": "success",
"error": null,
"sender": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"feePayer": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"fee": 100920,
"gas": {
"computation": 100000,
"storage": 9203600,
"rebate": 9202680,
"budget": 200822,
"price": 100
},
"nativeTransfers": [
{
"fromUserAccount": null,
"toUserAccount": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"amount": 15428237974
}
],
"tokenTransfers": [
{
"fromUserAccount": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"toUserAccount": null,
"coinType": "0x3b51a2ea74f7846068e171e91c6d1f49c4fd7ae07376d3dabcdca7cb619e0b08::anakin::ANAKIN",
"amount": 605797.471271129,
"amountRaw": "605797471271129",
"decimals": 9,
"symbol": "ANAKIN"
}
],
"balanceChanges": [
{
"owner": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"coinType": "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI",
"amountRaw": "15428137054",
"amount": 15.428137054,
"usd": 13.53521,
"priceAsOf": "2026-11-03T00:48:20.163Z"
}
],
"objectChanges": [
{
"objectId": "0x639b5e433da31739e800cd085f356e64cae222966d0f1b11bd9dc76b322ff58b",
"type": "0x1eabed72c53feb3805120a081dc15963c204dc8d091542592abaf7a35689b2fb::partner::Partner",
"kind": "mutated",
"owner": {
"kind": "shared",
"initialSharedVersion": 319549282
},
"version": 1069709130,
"previousVersion": 1069709129
}
],
"events": [
{
"index": 0,
"type": "0x1eabed72c53feb3805120a081dc15963c204dc8d091542592abaf7a35689b2fb::pool::SwapEvent",
"package": "0x89a01a8c79e65e29aad0c5bcc7153f43d21e8311bdebd352f8b021f999ecd4b1",
"module": "pool",
"sender": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"json": {
"after_sqrt_price": "93043271441066866",
"amount_in": "605797471271129",
"amount_out": "15428237974",
"atob": true,
"before_sqrt_price": "93150840427122068",
"fee_amount": "60579747128",
"partner": "0x0000000000000000000000000000000000000000000000000000000000000000",
"pool": "0x86f780a3358e41099a9eecb47d3c46cc77ef728d08679cb02accb9ce6ae6d49e",
"ref_amount": "0",
"steps": "1",
"vault_a_amount": "524054589010341142",
"vault_b_amount": "13362968761732"
}
}
],
"commands": [
{
"index": 0,
"kind": "SplitCoins",
"target": null,
"typeArguments": [],
"summary": "Split 605,797.47 ANAKIN off ANAKIN coin."
}
],
"explain": {
"summary": "Swapped 605,797.47 ANAKIN for 15.43 SUI ($13.54) on Cetus ANAKIN/SUI 0.01% pool, through an unlabelled contract.",
"steps": [
{
"sentence": "Split coins (1 command).",
"commands": [
0
]
}
],
"result": [
{
"owner": "0x636ae74fc1313df5437d2953decbd17d1cbb2a08f7d130f69e9c31763c64f933",
"roles": [
"sender"
],
"changes": [
{
"coinType": "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI",
"amountRaw": "15428137054",
"amount": 15.428137054,
"usd": 13.53521
}
],
"sentence": "Net: -605,797.47 ANAKIN ($13.49), +15.43 SUI ($13.54) after 0.0001 SUI gas."
}
]
},
"insight": {
"priceImpact": [
{
"pool": "0x86f780a3358e41099a9eecb47d3c46cc77ef728d08679cb02accb9ce6ae6d49e",
"poolName": "Cetus ANAKIN/SUI 0.01% pool",
"venue": "cetus",
"soldCoinType": "0x3b51a2ea74f7846068e171e91c6d1f49c4fd7ae07376d3dabcdca7cb619e0b08::anakin::ANAKIN",
"boughtCoinType": "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI",
"priceBefore": 0.000025499643577756115,
"priceAfter": 0.000025440784483750333,
"impactPct": -0.23082,
"executionPrice": 0.00002546765000789345,
"paidBelowPct": 0.1255,
"sentence": "Moved the Cetus ANAKIN/SUI 0.01% pool price by -0.231%. Paid 0.125% below the pool price before the trade."
}
],
"sandwich": null,
"pnl": {
"coinType": "0x3b51a2ea74f7846068e171e91c6d1f49c4fd7ae07376d3dabcdca7cb619e0b08::anakin::ANAKIN",
"side": "sell",
"heldAfter": 0,
"avgEntryUsd": null,
"realizedUsd": null,
"buysBefore": 0,
"sentence": "This sale has no cost on record (the ANAKIN was received, not bought), so no profit or loss is shown. Position: sold out."
}
},
"partial": false
}
]Long lists are cut to a few items here.