Foresight is our transaction pre-sign API.

By leveraging our smart contract deciphering system, we can provide insights on what an unsigned transaction is about to do, before it gets executed.

In broad terms, the Foresight API offers two types of endpoints.

  • Describe endpoints
    • These are lighter-weight (cheaper to run) endpoints which given an unsigned transaction object, will return an English description of what is about to happen. For example, "Add to a liquidity pool" or "Claim rewards".
  • Preview endpoint
    • In this endpoint, we perform a full simulation of the transaction in an offline fork of the chain, and then proceed to enrich it with our translation layer. This allows us to produce a "classified object", very similar to the classified object that our Translate API would return, but for a transaction that hasn't actually happened. For example, "This transaction will claim 200 USDC in rewards".
    • Unlike other simulation solutions, this endpoint provides a fully enriched description with the actual meaning of the transaction, in addition to reporting any asset transfers that will take place.

For all endpoints, the input is an unsigned transaction object, which is modeled after the standard Ethers object used by most EVM browser/mobile wallet implementations.

All endpoints are also capable of deciphering complex functions (multicalls, multisig calls, etc) and ERC-4337 transactions.