TriportRPC

trace_call

Polygon / https://triport.io/polygon

Minimum tier: Free

Polygon method guide

Last updated:

trace_call executes a single call against the chain state at a given block (no broadcast, no state mutation) and returns the complete Parity trace array for that call. Optionally it also returns a state diff and/or a low-level VM trace, depending on the trace types you request.

It is the lightweight sibling of trace_block: instead of re-executing every transaction in a block, it runs exactly one call, so it is fast enough for interactive and pre-confirmation use. The primary use case is MEV pre-confirmation analysis — simulate a candidate transaction (or a single leg of a sandwich bundle) and read the full internal call tree to compute expected profit before you sign and broadcast. A plain eth_call only returns the final return data; trace_call exposes every internal call, value transfer, and (optionally) storage change along the way.

This is a premium capability: it requires the polygon_trace scope and Pro tier or higher. Calls below Pro tier are rejected with -32002, and calls that exceed your tier's per-second rate are rejected with -32003.

Parameters

This method takes no parameters.

Returns

trace_call return value
FieldType
resultobject

Examples

curl https://triport.io/polygon \
  -X POST -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <api-key>' \
  -d '{"jsonrpc":"2.0","id":1,"method":"trace_call","params":[]}'
const res = await fetch("https://triport.io/polygon", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer <api-key>" },
  body: JSON.stringify({
  "jsonrpc": "2.0",
  "id": 1,
  "method": "trace_call",
  "params": []
}),
});
const data = await res.json();
import requests
resp = requests.post(
    "https://triport.io/polygon",
    headers={"Authorization": "Bearer <api-key>"},
    json={"jsonrpc":"2.0","id":1,"method":"trace_call","params":[]},
)
print(resp.json())

Usage

  1. Transport: HTTP (JSON-RPC).
  2. Chain: Polygon.
  3. Clusters: mainnet.
  4. Credit cost: 5 per call.

FAQ

What does trace_call do?
Как это работает у нас (2026-07-26). Метод собирается на нашей стороне из geth-трейсера debug_ и приводится к parity-формату. Причина: bor — форк geth, parity-namespace trace_ в нём отсутствует, а внешний premium-канал (the RPC provider), через который метод отдавался раньше, закрыл trace_*. Схема ответа сверяется с живым parity-ответом, а не с документацией. Подробности и границы — docs/polygon-trace-shim/PLAN.md.
How many credits does trace_call cost?
trace_call costs 5 credit(s) per call on Triport by default.
Is trace_call available over WebSocket?
trace_call is an HTTP JSON-RPC method.