Skip to main content
POST
/
sdk
/
{environmentId}
/
evm
/
simulateUserOp
Simulate an EVM AA UserOp
curl --request POST \
  --url https://app.dynamicauth.com/api/v0/sdk/{environmentId}/evm/simulateUserOp \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "chainId": "An example name",
  "operation": {},
  "entryPoint": "0xbF394748301603f18d953C90F0b087CBEC0E1834",
  "value": "An example name",
  "domain": "An example name"
}
'
{
  "inAssets": [
    {
      "asset": {
        "address": "0xbF394748301603f18d953C90F0b087CBEC0E1834",
        "chainName": "<string>",
        "decimals": 123,
        "logoUrl": "<string>",
        "name": "<string>",
        "symbol": "<string>",
        "type": "<string>",
        "chainId": 123
      },
      "transferIn": [
        {
          "rawValue": "<string>",
          "summary": "<string>",
          "usdPrice": "<string>",
          "value": "<string>"
        }
      ],
      "transferOut": [
        {
          "rawValue": "<string>",
          "summary": "<string>",
          "usdPrice": "<string>",
          "value": "<string>"
        }
      ]
    }
  ],
  "outAssets": [
    {
      "asset": {
        "address": "0xbF394748301603f18d953C90F0b087CBEC0E1834",
        "chainName": "<string>",
        "decimals": 123,
        "logoUrl": "<string>",
        "name": "<string>",
        "symbol": "<string>",
        "type": "<string>",
        "chainId": 123
      },
      "transferIn": [
        {
          "rawValue": "<string>",
          "summary": "<string>",
          "usdPrice": "<string>",
          "value": "<string>"
        }
      ],
      "transferOut": [
        {
          "rawValue": "<string>",
          "summary": "<string>",
          "usdPrice": "<string>",
          "value": "<string>"
        }
      ]
    }
  ],
  "priceData": {
    "nativeTokenUsdPrice": 123
  },
  "showTotalFiat": true,
  "counterparties": [
    "0xbF394748301603f18d953C90F0b087CBEC0E1834"
  ],
  "validation": {
    "result": "Benign",
    "reason": "<string>",
    "description": "<string>",
    "classification": "<string>"
  },
  "assetExposures": [
    {
      "asset": {
        "address": "0xbF394748301603f18d953C90F0b087CBEC0E1834",
        "chainName": "<string>",
        "decimals": 123,
        "logoUrl": "<string>",
        "name": "<string>",
        "symbol": "<string>",
        "type": "<string>",
        "chainId": 123
      },
      "spenderToInfo": {}
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

environmentId
string
required

ID of the environment

Required string length: 36
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"95b11417-f18f-457f-8804-68e361f9164f"

Body

application/json
chainId
string
required
Maximum string length: 255
Pattern: ^(?=\S)[\p{L}\p{N}a-zA-Z _.,:!?&%@\/+\-'|]+(?<=\S)$
Example:

"An example name"

operation
object
required

User operation object to simulate

entryPoint
string
required

Valid blockchain wallet address, must be an alphanumeric string (underscores allowed for chains like Midnight)

Maximum string length: 255
Pattern: ^[A-Za-z0-9_]{18,100}$
Example:

"0xbF394748301603f18d953C90F0b087CBEC0E1834"

value
string
required
Maximum string length: 255
Pattern: ^(?=\S)[\p{L}\p{N}a-zA-Z _.,:!?&%@\/+\-'|]+(?<=\S)$
Example:

"An example name"

domain
string
Maximum string length: 255
Pattern: ^(?=\S)[\p{L}\p{N}a-zA-Z _.,:!?&%@\/+\-'|]+(?<=\S)$
Example:

"An example name"

Response

Simulated transaction result

inAssets
object[]
required

List of assets received in the simulated transaction

outAssets
object[]
required

List of assets sent in the simulated transaction

priceData
object
required
showTotalFiat
boolean
required

Whether to display the total fiat value of the transaction

counterparties
string[]

List of counterparty addresses involved in the transaction

Valid blockchain wallet address, must be an alphanumeric string (underscores allowed for chains like Midnight)

Maximum string length: 255
Pattern: ^[A-Za-z0-9_]{18,100}$
Example:

"0xbF394748301603f18d953C90F0b087CBEC0E1834"

validation
object
assetExposures
object[]

List of asset exposure changes from the simulated transaction