Transactions

Get a transaction.

Changed on

Retrieves a transaction. Poll this endpoint until status is terminal (succeeded, reverted or failed).

get/v2/transactions/{id}

Request

  • Base URL: https://api.openfort.io
  • URL: https://api.openfort.io/v2/transactions/{id}
  • Auth: one of:
    • HTTP bearer
    • HTTP bearer
    • HTTP bearer
    • HTTP bearer
    • HTTP bearer

Path parameters

idstring required

The transaction ID (starts with tin_).

Query parameters

expandTransactionExpandableV2[]

Specifies the expandable fields.

Response

Successful response.

idstring required
object'transaction' required
createdAtinteger required
updatedAtinteger required
chainIdinteger required
status'awaiting_signature' | 'submitted' | 'succeeded' | 'reverted' | 'failed' required
accountIdstring required

ID of the account that executes the transaction (starts with acc_).

walletIdstring

ID of the wallet that owns the account (starts with pla_). Absent for backend wallets.

feeSponsorshipIdstring

ID of the fee sponsorship paying for gas (starts with pol_). Absent when the account pays its own gas.

costUsdstring

The actual transaction cost in USD, available after on-chain confirmation.

Example response

{
  "chainId": 80002,
  "accountId": "acc_e1b24353-1741-4a3d-9e91-2b0fd2942f60",
  "walletId": "pla_6f6c9067-89fa-4fc8-ac72-c242a268c584",
  "feeSponsorshipId": "pol_7e07ae30-2a4d-48fa-803f-361da94905dd",
  "account": {
    "custody": "Developer"
  },
  "feeSponsorship": {
    "name": "My DeFi Gas Sponsorship",
    "description": "Sponsors gas for free-tier users",
    "chainId": 8453,
    "enabled": true,
    "strategy": {
      "sponsorSchema": "pay_for_user",
      "tokenContract": "con_48eeba57-2cd5-4159-a2cb-057a23a35e65",
      "tokenContractAmount": "1000000000000000000",
      "dynamicExchangeRate": true,
      "splTokens": [
        "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
      ],
      "tokenContracts": [
        {
          "contract": "con_48eeba57-2cd5-4159-a2cb-057a23a35e65",
          "amount": "1000000000000000000"
        }
      ]
    },
    "paymasterId": "pay_48eeba57-2cd5-4159-a2cb-057a23a35e65",
    "forwarderContractId": "cfo_48eeba57-2cd5-4159-a2cb-057a23a35e65",
    "policyId": "ply_48eeba57-2cd5-4159-a2cb-057a23a35e65"
  },
  "calls": [
    {
      "to": "0x3994801f2BF191D22aA60c2ce3728c4D0e856a7B",
      "value": "1000000000000000000",
      "contractId": "con_0cddb398-1dc6-4e6f-8726-9ec7cea85f35",
      "functionName": "mint"
    }
  ],
  "execution": {
    "entryPointVersion": "0.8"
  },
  "nextAction": {
    "hash": "0x1a3d1d2fbb8a9c1a3f0f7d2b6c4a8b2b1e1d5c9a7f3e2b1c0d9e8f7a6b5c4d3e"
  },
  "receipt": {
    "error": {
      "reason": "AA31: paymaster deposit too low",
      "name": "ExecutionResult",
      "explanation": {
        "cause": "The paymaster does not have enough native tokens deposited in the EntryPoint to cover the gas cost.",
        "solution": "Top up your account balance in the dashboard or deposit more to the Paymaster contract on the relevant chain."
      }
    }
  },
  "costUsd": "0.42"
}

Changes

    • breaking

      the / response's property type changed from no type to object for status

    • breaking

      removed the required property / from the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • breaking

      removed the enum value user from the property items/ of the query request parameter expand

    • warning

      removed the optional property from the response with the status