TransactionIntents

Send a signed transaction signableHash.

Changed on

Broadcasts a signed TransactionIntent to the blockchain.

Use this endpoint to send the signed signableHash. Openfort will then put it on-chain.

post/v1/transaction_intents/{id}/signature

Request

  • Base URL: https://api.openfort.io
  • URL: https://api.openfort.io/v1/transaction_intents/{id}/signature
  • Auth: one of:
    • HTTP bearer
    • HTTP bearer

Path parameters

idstring required

Specifies the unique transaction intent ID (starts with tin_).

Request body

signaturestring required

signed userOperationHash by the owner or valid session key

optimisticboolean

Set to true to indicate that the transactionIntent request should be resolved as soon as possible, after the transactionIntent is created and simulated and before it arrives on chain.

Example request

{
  "signature": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
  "optimistic": true
}

Response

Successful response.

idstring required
object'transactionIntent' required
createdAtinteger required
updatedAtinteger required

The unix timestamp in seconds when the transactionIntent was created.

chainIdinteger required

The chain ID.

abstractionType'accountAbstractionV6' | 'accountAbstractionV8' | 'accountAbstractionV9' | 'standard' required
userOperationHashstring
userOperationunknown
finalCoststring

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

Example response

{
  "chainId": 5,
  "details": {
    "from": "0x8ab66318aCC6b29A27e74e534bfe3ecf81C50387",
    "data": "0x8c5a...",
    "nonce": "0",
    "gas": "21000",
    "maxFeePerGas": "1000000000",
    "maxPriorityFeePerGas": "1000000000",
    "value": "0x8ab66318aCC6b29A27e74e534bfe3ecf81C50387"
  },
  "response": {
    "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."
      }
    }
  },
  "finalCost": "0.42",
  "interactions": [
    {
      "value": "1000000000000000000",
      "contract": "con_0cddb398-1dc6-4e6f-8726-9ec7cea85f35",
      "functionName": "mint",
      "functionArgs": [
        "0x662D24Bf7Ea2dD6a7D0935F680a6056b94fE934d"
      ]
    }
  ]
}

Changes

    • 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

      removed from the response property anyOf list for the response status

    • info

      removed the zkSync enum value from the response property for the response status

    • breaking

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

    • info

      the security scope transactions:write was added to the endpoint's security scheme sk

    • 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 required property // to the response with the status