openapi: 3.1.0
paths:
  /v1/quote:
    post:
      description: Compose instructions and retrieve a MEE quote in a single request.
      summary: Compose instructions and generate a quote
      tags: &ref_0
        - root
      parameters: []
      operationId: quote
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              description: >-
                Combine compose flows with quote configuration to compose instructions and generate a quote in a single
                call.
              type: object
              properties:
                mode:
                  type: string
                  enum:
                    - smart-account
                    - eoa
                    - eoa-7702
                ownerAddress:
                  description: EOA wallet address which is used as owner of the orchestrator account
                  type: string
                  example: '0x0a7C906832544293a6018bA25280c7f7b0Bbf120'
                authorizations:
                  type: array
                  items:
                    description: >-
                      Object containing the EIP-7702 authorization signature fields for delegation, including the signer
                      address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity). Used to prove
                      delegation intent and validity.
                    type: object
                    properties:
                      address:
                        description: >-
                          The EVM address of the delegation contract to which your EOA (Externally Owned Account) is
                          being upgraded. Must be a valid checksummed Ethereum address.
                        type: string
                        example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                      chainId:
                        description: >-
                          The chain ID for which this authorization is valid. Use 0 for multichain or specify a
                          supported chain ID.
                        type: number
                        example: 8453
                      nonce:
                        description: Signature nonce
                        type: number
                        example: 38
                      r:
                        description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                        type: string
                        example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                      s:
                        description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                        type: string
                        example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                      v:
                        example: '28'
                        description: >-
                          The "v" value of the ECDSA signature (recovery id), as a string. Optional for EIP-2098
                          signatures.
                        type: string
                      yParity:
                        description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                        type: number
                        example: 1
                    required:
                      - address
                      - chainId
                      - nonce
                      - r
                      - s
                      - yParity
                    additionalProperties: false
                fundingTokens:
                  type: array
                  items:
                    description: Object containing the funding token deposit for MEE fusion execution.
                    type: object
                    properties:
                      tokenAddress:
                        description: Contract address of the token that will be deposited into the Nexus smart account.
                        type: string
                        example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                      chainId:
                        description: Chain ID where the funding token resides. Use a supported chain ID.
                        type: number
                        example: 1
                      amount:
                        description: Amount of funding token in wei/smallest unit to deposit.
                        type: string
                        example: '1000000000'
                    required:
                      - tokenAddress
                      - chainId
                      - amount
                    additionalProperties: false
                feeToken:
                  description: Optional fee token configuration. If not specified, sponsorship will be used.
                  type: object
                  properties:
                    address:
                      description: Contract address of the token used to pay MEE execution fees
                      type: string
                      example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                    chainId:
                      description: Chain ID where the fee token resides. Use a supported chain ID.
                      type: number
                      example: 1
                    gasRefundAddress:
                      example: '0x0a7C906832544293a6018bA25280c7f7b0Bbf120'
                      description: >-
                        Custom gas refund address to receive remaining unspent gas. Defaults to owner address. Gas
                        refunds are always in ETH and may be refunded on multiple chains depending on userOps involved.
                      type: string
                  required:
                    - address
                    - chainId
                  additionalProperties: false
                cleanUps:
                  description: Optional cleanup configurations for intermediate tokens
                  type: array
                  items:
                    description: Cleanup configuration for intermediate tokens that may remain after failed operations.
                    type: object
                    properties:
                      tokenAddress:
                        description: Address of the token to cleanup
                        type: string
                        example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                      chainId:
                        description: Chain ID where the token cleanup should occur
                        type: number
                        example: 1
                      recipientAddress:
                        description: Address to receive the cleanup tokens
                        type: string
                        example: '0x0a7C906832544293a6018bA25280c7f7b0Bbf120'
                      amount:
                        example: '1000000'
                        description: Amount to cleanup in wei. If not specified, uses runtime balance (entire balance).
                        type: string
                      gasLimit:
                        example: '150000'
                        description: Custom gas limit for cleanup userOp
                        type: string
                    required:
                      - tokenAddress
                      - chainId
                      - recipientAddress
                    additionalProperties: false
                gasLimit:
                  description: Optional gas limit override for the gas userop.
                  type: string
                  example: '12345678901234567890'
                lowerBoundTimestamp:
                  description: The lower bound timestamp for the user operation.
                  type: number
                  example: 1710000000
                upperBoundTimestamp:
                  description: The upper bound timestamp for the user operation.
                  type: number
                  example: 1710003600
                simulate:
                  type: boolean
                simulationOverrides:
                  type: object
                  properties:
                    tokenOverrides:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          tokenAddress:
                            description: Address of the token to override the balance for.
                            type: string
                            example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                          accountAddress:
                            example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                            description: Address of the account to override the balance for.
                            type: string
                          chainId:
                            description: Chain ID where the token override should occur
                            type: number
                            example: 1
                          balance:
                            description: Balance of the token to override the balance for, in wei/smallest unit.
                            type: string
                            example: '1000000000'
                        required:
                          - tokenAddress
                          - chainId
                          - balance
                        additionalProperties: false
                    customOverrides:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          contractAddress:
                            description: Address of the contract to override the storage slot for.
                            type: string
                            example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                          storageSlot:
                            description: Storage slot to override the value for.
                            type: string
                            example: '0x1234567890123456789012345678901234567890123456789012345678901234'
                          chainId:
                            description: Chain ID where the storage slot override should occur
                            type: number
                            example: 1
                          value:
                            description: Value to override the storage slot for.
                            type: string
                            example: '0x1234567890123456789012345678901234567890'
                        required:
                          - contractAddress
                          - storageSlot
                          - chainId
                          - value
                        additionalProperties: false
                  required:
                    - tokenOverrides
                    - customOverrides
                  additionalProperties: false
                composeFlows:
                  minItems: 1
                  maxItems: 10
                  type: array
                  items:
                    description: This enable developers to specify a build, intent-simple, or intent operation
                    anyOf:
                      - type: object
                        properties:
                          type:
                            description: >-
                              Compose flow for the "build" type to generate composable MEE instructions from a custom
                              specification.
                            example: /instructions/build
                            type: string
                            const: /instructions/build
                          data:
                            description: Request to build composable instructions from ABI signature and arguments
                            type: object
                            properties:
                              to:
                                description: Target contract address
                                type: string
                                example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                              chainId:
                                description: Chain ID where the transaction will be executed
                                type: number
                                example: 8453
                              value:
                                example: '0'
                                description: Native token value in wei
                                type: string
                              gasLimit:
                                example: '50000'
                                description: Gas limit for the transaction
                                type: string
                              functionSignature:
                                description: Function signature string (e.g., "function approve(address spender, uint256 amount)")
                                type: string
                                example: function transfer(address to, uint256 amount)
                              args:
                                type: array
                                items: {}
                            required:
                              - to
                              - chainId
                              - functionSignature
                              - args
                            additionalProperties: false
                          batch:
                            description: Flag to enable or disable instructions batching. By default, batching is enabled
                            type: boolean
                            example: true
                        required:
                          - type
                          - data
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            description: >-
                              Compose flow for the "build-raw" type to generate composable MEE instructions from raw
                              calldata.
                            example: /instructions/build-raw
                            type: string
                            const: /instructions/build-raw
                          data:
                            description: Request to build composable instructions from raw calldata
                            type: object
                            properties:
                              to:
                                description: Target contract address
                                type: string
                                example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                              chainId:
                                description: Chain ID where the transaction will be executed
                                type: number
                                example: 8453
                              value:
                                example: '0'
                                description: Native token value in wei
                                type: string
                              gasLimit:
                                example: '50000'
                                description: Gas limit for the transaction
                                type: string
                              data:
                                description: Raw calldata as hex string (e.g., "0x1234..." for encoded function call)
                                type: string
                                example: >-
                                  0xa9059cbb0000000000000000000000001234567890123456789012345678901234567890000000000000000000000000000000000000000000000000000000000000000a
                            required:
                              - to
                              - chainId
                              - data
                            additionalProperties: false
                          batch:
                            description: Flag to enable or disable instructions batching. By default, batching is enabled
                            type: boolean
                            example: true
                        required:
                          - type
                          - data
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            description: >-
                              Compose flow for the "build-ccip" type to generate composable MEE instructions for
                              Chainlink CCIP token bridging
                            example: /instructions/build-ccip
                            type: string
                            const: /instructions/build-ccip
                          data:
                            type: object
                            properties:
                              srcToken:
                                description: Source token EVM address. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                              dstToken:
                                description: Destination token EVM address. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58'
                              srcChainId:
                                description: The source chain ID for the swap or token bridging. Use a supported chain ID number.
                                type: number
                                example: 8453
                              dstChainId:
                                description: >-
                                  The destination chain ID for the swap or token bridging. Use a supported chain ID
                                  number.
                                type: number
                                example: 10
                              amount:
                                anyOf:
                                  - example: '1000000'
                                  - description: >-
                                      Schema for specifying a runtime ERC20 balance check, including the target address,
                                      token address, and optional constraints.
                                    type: object
                                    properties:
                                      type:
                                        example: runtimeErc20Balance
                                        type: string
                                        const: runtimeErc20Balance
                                      targetAddress:
                                        example: '0x742d35cc6639cb8d4b5d1c5d7b8b5e2e7c0c7a8a'
                                        description: >-
                                          The address whose ERC20 balance will be checked at runtime. If not provided,
                                          the balance will be checked for the smart account address derived from the
                                          owner address.
                                        type: string
                                      tokenAddress:
                                        example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                                      constraints:
                                        description: >-
                                          Constraints for runtime value checks. Specify one or more of gte, lte, or eq
                                          to restrict the value.
                                        type: object
                                        properties:
                                          gte:
                                            example: '1000000'
                                            description: Greater than or equal to
                                            type: string
                                          lte:
                                            example: '10000000'
                                            description: Less than or equal to
                                            type: string
                                          eq:
                                            example: '5000000'
                                            description: Equal to
                                            type: string
                                        additionalProperties: false
                                    required:
                                      - type
                                      - tokenAddress
                                    additionalProperties: false
                              gasLimit:
                                example: '50000'
                                description: Gas limit for the CCIP token bridging
                                type: string
                            required:
                              - srcToken
                              - dstToken
                              - srcChainId
                              - dstChainId
                              - amount
                            additionalProperties: false
                          batch:
                            description: Flag to enable or disable instructions batching. By default, batching is enabled
                            type: boolean
                            example: true
                        required:
                          - type
                          - data
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            description: Compose flow for the "intent-simple" type for basic cross-chain swaps.
                            example: /instructions/intent-simple
                            type: string
                            const: /instructions/intent-simple
                          data:
                            type: object
                            properties:
                              srcToken:
                                description: Source token EVM address. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                              dstToken:
                                description: Destination token EVM address. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58'
                              srcChainId:
                                description: The source chain ID for the swap or token bridging. Use a supported chain ID number.
                                type: number
                                example: 8453
                              dstChainId:
                                description: >-
                                  The destination chain ID for the swap or token bridging. Use a supported chain ID
                                  number.
                                type: number
                                example: 10
                              amount:
                                example: '1000000'
                              routeSelectionMode:
                                description: >-
                                  Swap route selection strategy. Use `cheap` (default) to evaluate every route and pick
                                  the highest output. Use `fast-quote` to return as soon as the first valid route is
                                  discovered. `fast-execution` is reserved for future use.
                                example: cheap
                                type: string
                                enum:
                                  - cheap
                                  - fast-quote
                                  - fast-execution
                              allowSwapProviders:
                                example: lifi,gluex
                                description: Comma-separated list of allowed swap providers.
                                type: string
                              denySwapProviders:
                                example: ''
                                description: Comma-separated list of denied swap providers.
                                type: string
                              allowBridgeProviders:
                                example: across
                                description: Comma-separated list of allowed bridge providers.
                                type: string
                              denyBridgeProviders:
                                example: across
                                description: Comma-separated list of denied bridge providers.
                                type: string
                              slippage:
                                description: 'Slippage tolerance (0-1, default: 0.01 = 1%)'
                                example: 0.01
                                default: 0.01
                                type: number
                                minimum: 0
                                maximum: 1
                            required:
                              - srcToken
                              - dstToken
                              - srcChainId
                              - dstChainId
                              - amount
                              - slippage
                            additionalProperties: false
                          batch:
                            description: Flag to enable or disable instructions batching. By default, batching is enabled
                            type: boolean
                            example: true
                        required:
                          - type
                          - data
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            description: Compose flow for the "intent" type for advanced multi-chain, multi-asset operations.
                            example: /instructions/intent
                            type: string
                            const: /instructions/intent
                          data:
                            type: object
                            properties:
                              slippage:
                                description: Slippage must be a number between 0 and 1 (inclusive)
                                example: 0.003
                                type: number
                                minimum: 0
                                maximum: 1
                              inputPositions:
                                minItems: 1
                                type: array
                                items:
                                  description: >-
                                    Input position specifying the chain, token, and amount to be used as input for the
                                    intent request.
                                  type: object
                                  properties:
                                    chainToken:
                                      description: >-
                                        The chain and token for the input position. Must include a supported chainId and
                                        a valid EVM token address.
                                      example:
                                        chainId: 8453
                                        tokenAddress: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                                      type: object
                                      properties:
                                        chainId:
                                          description: >-
                                            The chain and token for the input position. Must include a supported chainId
                                            and a valid EVM token address.
                                          type: number
                                          example: 8453
                                        tokenAddress:
                                          description: >-
                                            The chain and token for the input position. Must include a supported chainId
                                            and a valid EVM token address.
                                          type: string
                                          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                                      required:
                                        - chainId
                                        - tokenAddress
                                      additionalProperties: false
                                    amount:
                                      example: '1000000'
                                  required:
                                    - chainToken
                                    - amount
                                  additionalProperties: false
                              targetPositions:
                                description: >-
                                  Target positions: target assets with their respective weights. Weights define the
                                  distribution of the output assets. Weights for all the entries must sum to 1
                                minItems: 1
                                type: array
                                items:
                                  description: Target position specifying the chain, token, and weight for the intent request.
                                  type: object
                                  properties:
                                    chainToken:
                                      description: >-
                                        The chain and token for the target position. Must include a supported chainId
                                        and a valid EVM token address.
                                      example:
                                        chainId: 8453
                                        tokenAddress: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                                      type: object
                                      properties:
                                        chainId:
                                          description: >-
                                            The chain and token for the target position. Must include a supported
                                            chainId and a valid EVM token address.
                                          type: number
                                          example: 8453
                                        tokenAddress:
                                          description: >-
                                            The chain and token for the target position. Must include a supported
                                            chainId and a valid EVM token address.
                                          type: string
                                          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                                      required:
                                        - chainId
                                        - tokenAddress
                                      additionalProperties: false
                                    weight:
                                      example: 0.5
                                  required:
                                    - chainToken
                                    - weight
                                  additionalProperties: false
                            required:
                              - slippage
                              - inputPositions
                              - targetPositions
                            additionalProperties: false
                          batch:
                            description: Flag to enable or disable instructions batching. By default, batching is enabled
                            type: boolean
                            example: true
                        required:
                          - type
                          - data
                        additionalProperties: false
              required:
                - mode
                - ownerAddress
                - composeFlows
              additionalProperties: false
      responses:
        '200':
          description: Combined response containing composed instructions and the resulting MEE quote.
          content:
            application/json:
              schema:
                description: Combined response containing composed instructions and the resulting MEE quote.
                type: object
                properties:
                  ownerAddress:
                    description: Owner wallet address which will be used as a owner of orchestrator account
                    type: string
                    example: '0x1234567890abcdef1234567890abcdef12345678'
                  fee:
                    description: 'Fee details: amount, token address, and chain ID.'
                    type: object
                    properties:
                      amount:
                        description: Fee amount for the quote in wei.
                        type: string
                        example: '10000000000000000'
                      token:
                        description: EVM address of the fee token (zero address for native ETH).
                        type: string
                        example: '0x0000000000000000000000000000000000000000'
                      chainId:
                        description: Chain ID where the fee token resides.
                        type: number
                        example: 8453
                    required:
                      - amount
                      - token
                      - chainId
                    additionalProperties: false
                  quoteType:
                    description: 'Type of MEE signature: permit, onchain, simple, permit-sca, or mm-dtk.'
                    example: permit
                    type: string
                    enum:
                      - permit
                      - onchain
                      - simple
                      - permit-sca
                      - mm-dtk
                  quote:
                    description: MEE network compatible quote information
                    type: object
                    properties:
                      hash:
                        description: Supertransaction hash of the quote.
                        type: string
                        example: '0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdef'
                      node:
                        description: EVM address of the node providing the quote.
                        type: string
                        example: '0x9876543210abcdef9876543210abcdef98765432'
                      commitment:
                        description: Node's commitment hash for the supertransaction quote (hex string, 0x-prefixed).
                        type: string
                        example: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef'
                      paymentInfo:
                        type: object
                        properties:
                          sender:
                            description: Sender EVM address (optional)
                            type: string
                            example: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                          initCode:
                            default: 0x
                            description: Init code as hex string (optional)
                            type: string
                            example: '0x1234abcd'
                          nonce:
                            description: Nonce as string (optional)
                            type: string
                            example: '0'
                          token:
                            description: Payment token address
                            type: string
                            example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                          chainId:
                            description: Chain ID of the payment token
                            type: number
                            example: 1
                          verificationGasLimit:
                            example: '21000'
                            description: Verification gas limit as string (optional)
                            type: string
                          eoa:
                            example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                            description: EOA address (optional)
                            type: string
                          eip7702Auth:
                            description: >-
                              Object containing the EIP-7702 authorization signature fields for delegation, including
                              the signer address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity).
                              Used to prove delegation intent and validity.
                            type: object
                            properties:
                              address:
                                description: >-
                                  The EVM address of the delegation contract to which your EOA (Externally Owned
                                  Account) is being upgraded. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                              chainId:
                                description: >-
                                  The chain ID for which this authorization is valid. Use 0 for multichain or specify a
                                  supported chain ID.
                                type: number
                                example: 8453
                              nonce:
                                description: Signature nonce
                                type: number
                                example: 38
                              r:
                                description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                type: string
                                example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                              s:
                                description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                type: string
                                example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                              v:
                                example: '28'
                                description: >-
                                  The "v" value of the ECDSA signature (recovery id), as a string. Optional for EIP-2098
                                  signatures.
                                type: string
                              yParity:
                                description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                                type: number
                                example: 1
                            required:
                              - address
                              - chainId
                              - nonce
                              - r
                              - s
                              - yParity
                            additionalProperties: false
                          shortEncoding:
                            example: false
                            default: false
                            description: 'Short encoding flag (default: false)'
                            type: boolean
                          callGasLimit:
                            example: '50000'
                            description: Call gas limit as string (optional)
                            type: string
                          sponsored:
                            example: true
                            description: Sponsored flag (optional)
                            type: boolean
                          sponsorshipUrl:
                            example: https://sponsorship.abc.org
                            description: Sponsored ulr (optional)
                            type: string
                          tokenAmount:
                            example: 1000 (1000 USDC), 1 (1 ether)
                            description: Token amount as string (optional)
                            type: string
                          tokenValue:
                            description: Token value as string in USD
                            type: string
                            example: 1000 (for 1000 USDC), 250000 (for 1 WBTC very soon)
                          tokenWeiAmount:
                            description: Token wei amount as string (optional)
                            type: string
                            example: 1000000000000000000000 (1000 ether), 250000 (0.25 USDC)
                          gasFee:
                            example: '21000000000000000'
                            description: Gas fee as string (optional)
                            type: string
                          orchestrationFee:
                            example: '1000000000000000'
                            description: Orchestration fee as string (optional)
                            type: string
                        required:
                          - sender
                          - initCode
                          - nonce
                          - token
                          - chainId
                          - shortEncoding
                          - tokenValue
                          - tokenWeiAmount
                        additionalProperties: false
                      userOps:
                        description: Array of MEE UserOperation objects for the quote.
                        type: array
                        items:
                          description: >-
                            Object containing the fields of a MEE UserOperation which is a Wrapper for userops supported
                            by MEE nodes
                          type: object
                          properties:
                            userOp:
                              description: >-
                                Object containing the fields of a UserOperation, including sender, nonce, calldata, gas
                                limits, and signature.
                              type: object
                              properties:
                                sender:
                                  description: The address of the account initiating the user operation.
                                  type: string
                                  example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                                nonce:
                                  description: The nonce of the sender account, as a bigint.
                                  type: string
                                  example: '0'
                                initCode:
                                  description: The initCode for contract creation, as a hex string. Optional.
                                  type: string
                                  example: '0x1234abcd'
                                callData:
                                  description: The calldata for the user operation, as a hex string.
                                  type: string
                                  example: '0x1234abcd'
                                callGasLimit:
                                  description: The gas limit for the call, as a bigint.
                                  type: string
                                  example: '21000'
                                verificationGasLimit:
                                  description: The gas limit for verification, as a bigint.
                                  type: string
                                  example: '100000'
                                preVerificationGas:
                                  description: The gas used before verification, as a bigint.
                                  type: string
                                  example: '21000'
                                maxFeePerGas:
                                  description: The maximum fee per gas, as a bigint.
                                  type: string
                                  example: '1000000000'
                                maxPriorityFeePerGas:
                                  description: The maximum priority fee per gas, as a bigint.
                                  type: string
                                  example: '100000000'
                                paymasterAndData:
                                  example: 0x
                                  description: The paymaster and data field, as a hex string. Optional.
                                  type: string
                                signature:
                                  example: '0xabcdef123456'
                                  description: The signature for the user operation, as a hex string. Optional.
                                  type: string
                              required:
                                - sender
                                - nonce
                                - callData
                                - callGasLimit
                                - verificationGasLimit
                                - preVerificationGas
                                - maxFeePerGas
                                - maxPriorityFeePerGas
                              additionalProperties: false
                            userOpHash:
                              description: The hash of the user operation.
                              type: string
                              example: '0x1234abcd5678ef90'
                            meeUserOpHash:
                              description: The MEE-specific hash of the user operation.
                              type: string
                              example: '0xabcdef1234567890'
                            lowerBoundTimestamp:
                              description: The lower bound timestamp for the user operation.
                              type: number
                              example: 1710000000
                            upperBoundTimestamp:
                              description: The upper bound timestamp for the user operation.
                              type: number
                              example: 1710003600
                            maxGasLimit:
                              description: The maximum gas limit for the user operation.
                              type: string
                              example: '1000000'
                            maxFeePerGas:
                              description: The maximum fee per gas for the user operation.
                              type: string
                              example: '1000000000'
                            chainId:
                              description: The chain ID for the user operation.
                              type: number
                              example: 8453
                            eip7702Auth:
                              description: >-
                                Object containing the EIP-7702 authorization signature fields for delegation, including
                                the signer address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity).
                                Used to prove delegation intent and validity.
                              type: object
                              properties:
                                address:
                                  description: >-
                                    The EVM address of the delegation contract to which your EOA (Externally Owned
                                    Account) is being upgraded. Must be a valid checksummed Ethereum address.
                                  type: string
                                  example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                                chainId:
                                  description: >-
                                    The chain ID for which this authorization is valid. Use 0 for multichain or specify
                                    a supported chain ID.
                                  type: number
                                  example: 8453
                                nonce:
                                  description: Signature nonce
                                  type: number
                                  example: 38
                                r:
                                  description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                  type: string
                                  example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                                s:
                                  description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                  type: string
                                  example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                                v:
                                  example: '28'
                                  description: >-
                                    The "v" value of the ECDSA signature (recovery id), as a string. Optional for
                                    EIP-2098 signatures.
                                  type: string
                                yParity:
                                  description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                                  type: number
                                  example: 1
                              required:
                                - address
                                - chainId
                                - nonce
                                - r
                                - s
                                - yParity
                              additionalProperties: false
                            isCleanUpUserOp:
                              example: false
                              description: Whether this is a clean-up user operation.
                              type: boolean
                            shortEncoding:
                              example: true
                              description: Whether the user operation uses short encoding.
                              type: boolean
                          required:
                            - userOp
                            - userOpHash
                            - meeUserOpHash
                            - lowerBoundTimestamp
                            - upperBoundTimestamp
                            - maxGasLimit
                            - maxFeePerGas
                            - chainId
                          additionalProperties: false
                      fundingTokens:
                        description: Optional array of funding tokens for token pull execution.
                        type: array
                        items:
                          description: Object containing the funding token deposit for MEE fusion execution.
                          type: object
                          properties:
                            tokenAddress:
                              description: Contract address of the token that will be deposited into the Nexus smart account.
                              type: string
                              example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                            chainId:
                              description: Chain ID where the funding token resides. Use a supported chain ID.
                              type: number
                              example: 1
                            amount:
                              description: Amount of funding token in wei/smallest unit to deposit.
                              type: string
                              example: '1000000000'
                          required:
                            - tokenAddress
                            - chainId
                            - amount
                          additionalProperties: false
                    required:
                      - hash
                      - node
                      - commitment
                      - paymentInfo
                      - userOps
                    additionalProperties: false
                  payloadToSign:
                    description: Array of payloads to be signed, structure depends on the quoteType.
                    minItems: 1
                    type: array
                    items:
                      anyOf:
                        - description: Full EIP-712 permit signature data (payload and metadata)
                          type: object
                          properties:
                            signablePayload:
                              description: Payload to be signed for EIP-712 permit
                              type: object
                              properties:
                                domain:
                                  description: EIP-712 domain object
                                  type: object
                                  properties:
                                    name:
                                      example: USD Coin
                                      description: Token or contract name (e.g. 'USD Coin')
                                      type: string
                                    version:
                                      example: '2'
                                      description: Contract version (e.g. '1')
                                      type: string
                                    chainId:
                                      example: 1
                                      description: EVM chain ID (e.g. 1 for Ethereum mainnet)
                                      type: number
                                    verifyingContract:
                                      example: '0xA0b86a33E6441c1a7C4FB1e50Fc5F5ED69DC3D2B'
                                      description: Address of the contract being verified
                                      type: string
                                    salt:
                                      example: '0x0000000000000000000000000000000000000000000000000000000000000000'
                                      description: Optional domain salt (hex string)
                                      type: string
                                  additionalProperties: false
                                types:
                                  type: object
                                  propertyNames:
                                    description: Name of the EIP-712 struct (e.g. 'Permit')
                                    type: string
                                    example: Permit
                                  additionalProperties:
                                    description: List of fields for this struct
                                    example:
                                      - name: owner
                                        type: address
                                      - name: spender
                                        type: address
                                      - name: value
                                        type: uint256
                                      - name: nonce
                                        type: uint256
                                      - name: deadline
                                        type: uint256
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          description: A string value.
                                          type: string
                                          example: owner
                                        type:
                                          description: A string value.
                                          type: string
                                          example: address
                                      required:
                                        - name
                                        - type
                                      additionalProperties: false
                                message:
                                  description: Key-value pairs for the EIP-712 message
                                  example:
                                    owner: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                    spender: '0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45'
                                    value: '1000000000000000000000'
                                    nonce: '0'
                                    deadline: '1647857449'
                                  type: object
                                  propertyNames:
                                    description: A string value.
                                    type: string
                                    example: owner
                                  additionalProperties: {}
                                primaryType:
                                  description: Name of the main EIP-712 struct to sign (e.g. 'Permit')
                                  type: string
                                  example: Permit
                              required:
                                - types
                                - message
                                - primaryType
                              additionalProperties: false
                            metadata:
                              description: Extra metadata for the permit signature
                              type: object
                              properties:
                                nonce:
                                  description: Permit nonce (as string)
                                  type: string
                                  example: '0'
                                name:
                                  description: Token or contract name
                                  type: string
                                  example: USD Coin
                                version:
                                  description: Contract version
                                  type: string
                                  example: '2'
                                domainSeparator:
                                  description: EIP-712 domain separator (hex string)
                                  type: string
                                  example: '0x06c37168a7db5138defc7866392bb87a741f9b3d104deb5094588ce041cae335'
                                owner:
                                  description: Address of the permit owner
                                  type: string
                                  example: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                spender:
                                  description: Address of the spender
                                  type: string
                                  example: '0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45'
                                amount:
                                  description: Permit amount in wei (as string)
                                  type: string
                                  example: '1000000000000000000000'
                              required:
                                - nonce
                                - name
                                - version
                                - domainSeparator
                                - owner
                                - spender
                                - amount
                              additionalProperties: false
                          required:
                            - signablePayload
                            - metadata
                          additionalProperties: false
                        - description: On-chain signature data for direct contract calls
                          example:
                            to: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                            data: 0xa9059cbb000000000000000000000000...
                            value: '0'
                            chainId: 1
                          type: object
                          properties:
                            to:
                              description: Target contract address for the on-chain call
                              type: string
                              example: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                            data:
                              description: Calldata for the on-chain transaction (hex string)
                              type: string
                              example: 0xa9059cbb000000000000000000000000...
                            value:
                              description: ETH value to send with the transaction (in wei, as string)
                              type: string
                              example: '0'
                            chainId:
                              description: Chain ID for the on-chain transaction
                              type: number
                              example: 1
                          required:
                            - to
                            - data
                            - value
                            - chainId
                          additionalProperties: false
                        - description: Message with raw transaction hash to sign for simple quote type
                          example:
                            message:
                              raw: '0xed96a92aa94b8b1927fc7c52ca3b3fcd0d706147dfbeda34a62dc232f6993029'
                          type: object
                          properties:
                            message:
                              type: object
                              properties:
                                raw:
                                  description: Raw transaction hash to sign (hex string)
                                  type: string
                                  example: '0xed96a92aa94b8b1927fc7c52ca3b3fcd0d706147dfbeda34a62dc232f6993029'
                              required:
                                - raw
                              additionalProperties: false
                          required:
                            - message
                          additionalProperties: false
                  instructions:
                    type: array
                    items:
                      description: >-
                        Object representing a single MEE instruction, including the set of contract calls to execute,
                        the target chain ID, and whether the instruction is composable with others in the same batch.
                      type: object
                      properties:
                        calls:
                          type: array
                          items:
                            anyOf:
                              - type: object
                                properties:
                                  to:
                                    description: EVM address of the target smart contract to invoke for this call.
                                    type: string
                                    example: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                                  value:
                                    description: >-
                                      Amount of native token (in wei) to send with the contract call. Must be a
                                      non-negative integer.
                                    type: string
                                    example: '0'
                                  functionSig:
                                    description: >-
                                      Function signature as a string, e.g. "transfer(address,uint256)". Must match the
                                      target contract ABI.
                                    type: string
                                    example: transfer(address,uint256)
                                  inputParams:
                                    example:
                                      - fetcherType: 0
                                        paramData: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                        constraints: []
                                    type: array
                                    items:
                                      example:
                                        fetcherType: 0
                                        paramData: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                        constraints:
                                          - constraintType: 1
                                            referenceData: '500'
                                      type: object
                                      properties:
                                        fetcherType:
                                          type: number
                                          enum:
                                            - 0
                                            - 1
                                        paramData:
                                          description: >-
                                            String representing the input parameter data, such as ABI-encoded bytes or a
                                            direct value.
                                          type: string
                                          example: example string
                                        constraints:
                                          type: array
                                          items:
                                            example:
                                              constraintType: 0
                                              referenceData: '1000'
                                            type: object
                                            properties:
                                              constraintType:
                                                type: number
                                                enum:
                                                  - 0
                                                  - 1
                                                  - 2
                                                  - 3
                                              referenceData:
                                                description: >-
                                                  String data used as the reference for the constraint, such as a
                                                  literal value or ABI-encoded data.
                                                type: string
                                                example: example string
                                            required:
                                              - constraintType
                                              - referenceData
                                            additionalProperties: false
                                      required:
                                        - fetcherType
                                        - paramData
                                        - constraints
                                      additionalProperties: false
                                  outputParams:
                                    example:
                                      - fetcherType: 0
                                        paramData: 0x
                                    type: array
                                    items:
                                      example:
                                        fetcherType: 0
                                        paramData: 0x
                                      type: object
                                      properties:
                                        fetcherType:
                                          type: number
                                          enum:
                                            - 0
                                            - 1
                                        paramData:
                                          description: >-
                                            String representing the output parameter data, such as ABI-encoded bytes or
                                            a result value.
                                          type: string
                                          example: example string
                                      required:
                                        - fetcherType
                                        - paramData
                                      additionalProperties: false
                                  gasLimit:
                                    description: Gas limit for the contract call. Optional - if not provided, it will be estimated.
                                    type: string
                                    example: '100000'
                                required:
                                  - to
                                  - value
                                  - functionSig
                                  - inputParams
                                  - outputParams
                                additionalProperties: false
                        chainId:
                          description: Chain ID on which this instruction should be executed. Must be a supported EVM chain ID.
                          type: number
                          example: 1
                        isComposable:
                          description: Indicates if this instruction is composable with others in the same execution batch.
                          type: boolean
                          example: true
                      required:
                        - calls
                        - chainId
                      additionalProperties: false
                  returnedData:
                    type: array
                    items: {}
                required:
                  - ownerAddress
                  - fee
                  - quoteType
                  - quote
                  - payloadToSign
                  - instructions
                  - returnedData
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
        '412':
          description: '412'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                  authorizations:
                    type: array
                    items:
                      type: object
                      properties:
                        address:
                          description: 7702 delegation smart account address
                          type: string
                          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                        chainId:
                          description: 7702 delegation chain ID (0 for multichain or a supported chain ID)
                          type: number
                          example: 0
                        nonce:
                          description: 7702 delegation nonce from EOA
                          type: number
                          example: '123456'
                      required:
                        - address
                        - chainId
                        - nonce
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                  - authorizations
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
      security: &ref_1
        - X-API-Key:
            - mee:*
            - instructions:*
  /v1/execute:
    post:
      description: >-
        Submit the signed supertransaction quote for the execution where multichain composable and async execution
        happens via MEE nodes
      summary: Submit the supertransaction for execution
      tags: *ref_0
      parameters: []
      operationId: execute
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              description: MEE execution request with signed quote payloads
              type: object
              properties:
                ownerAddress:
                  description: Owner wallet address which will be used as a owner of orchestrator account
                  type: string
                  example: '0x1234567890abcdef1234567890abcdef12345678'
                fee:
                  description: 'Fee details: amount, token address, and chain ID.'
                  type: object
                  properties:
                    amount:
                      description: Fee amount for the quote in wei.
                      type: string
                      example: '10000000000000000'
                    token:
                      description: EVM address of the fee token (zero address for native ETH).
                      type: string
                      example: '0x0000000000000000000000000000000000000000'
                    chainId:
                      description: Chain ID where the fee token resides.
                      type: number
                      example: 8453
                  required:
                    - amount
                    - token
                    - chainId
                  additionalProperties: false
                quoteType:
                  description: 'Type of MEE signature: permit, onchain, simple, permit-sca, or mm-dtk.'
                  example: permit
                  type: string
                  enum:
                    - permit
                    - onchain
                    - simple
                    - permit-sca
                    - mm-dtk
                quote:
                  description: MEE network compatible quote information
                  type: object
                  properties:
                    hash:
                      description: Supertransaction hash of the quote.
                      type: string
                      example: '0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdef'
                    node:
                      description: EVM address of the node providing the quote.
                      type: string
                      example: '0x9876543210abcdef9876543210abcdef98765432'
                    commitment:
                      description: Node's commitment hash for the supertransaction quote (hex string, 0x-prefixed).
                      type: string
                      example: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef'
                    paymentInfo:
                      type: object
                      properties:
                        sender:
                          description: Sender EVM address (optional)
                          type: string
                          example: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                        initCode:
                          default: 0x
                          description: Init code as hex string (optional)
                          type: string
                          example: '0x1234abcd'
                        nonce:
                          description: Nonce as string (optional)
                          type: string
                          example: '0'
                        token:
                          description: Payment token address
                          type: string
                          example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                        chainId:
                          description: Chain ID of the payment token
                          type: number
                          example: 1
                        verificationGasLimit:
                          example: '21000'
                          description: Verification gas limit as string (optional)
                          type: string
                        eoa:
                          example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                          description: EOA address (optional)
                          type: string
                        eip7702Auth:
                          description: >-
                            Object containing the EIP-7702 authorization signature fields for delegation, including the
                            signer address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity). Used to
                            prove delegation intent and validity.
                          type: object
                          properties:
                            address:
                              description: >-
                                The EVM address of the delegation contract to which your EOA (Externally Owned Account)
                                is being upgraded. Must be a valid checksummed Ethereum address.
                              type: string
                              example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                            chainId:
                              description: >-
                                The chain ID for which this authorization is valid. Use 0 for multichain or specify a
                                supported chain ID.
                              type: number
                              example: 8453
                            nonce:
                              description: Signature nonce
                              type: number
                              example: 38
                            r:
                              description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                              type: string
                              example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                            s:
                              description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                              type: string
                              example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                            v:
                              example: '28'
                              description: >-
                                The "v" value of the ECDSA signature (recovery id), as a string. Optional for EIP-2098
                                signatures.
                              type: string
                            yParity:
                              description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                              type: number
                              example: 1
                          required:
                            - address
                            - chainId
                            - nonce
                            - r
                            - s
                            - yParity
                          additionalProperties: false
                        shortEncoding:
                          example: false
                          default: false
                          description: 'Short encoding flag (default: false)'
                          type: boolean
                        callGasLimit:
                          example: '50000'
                          description: Call gas limit as string (optional)
                          type: string
                        sponsored:
                          example: true
                          description: Sponsored flag (optional)
                          type: boolean
                        sponsorshipUrl:
                          example: https://sponsorship.abc.org
                          description: Sponsored ulr (optional)
                          type: string
                        tokenAmount:
                          example: 1000 (1000 USDC), 1 (1 ether)
                          description: Token amount as string (optional)
                          type: string
                        tokenValue:
                          description: Token value as string in USD
                          type: string
                          example: 1000 (for 1000 USDC), 250000 (for 1 WBTC very soon)
                        tokenWeiAmount:
                          description: Token wei amount as string (optional)
                          type: string
                          example: 1000000000000000000000 (1000 ether), 250000 (0.25 USDC)
                        gasFee:
                          example: '21000000000000000'
                          description: Gas fee as string (optional)
                          type: string
                        orchestrationFee:
                          example: '1000000000000000'
                          description: Orchestration fee as string (optional)
                          type: string
                      required:
                        - sender
                        - initCode
                        - nonce
                        - token
                        - chainId
                        - shortEncoding
                        - tokenValue
                        - tokenWeiAmount
                      additionalProperties: false
                    userOps:
                      description: Array of MEE UserOperation objects for the quote.
                      type: array
                      items:
                        description: >-
                          Object containing the fields of a MEE UserOperation which is a Wrapper for userops supported
                          by MEE nodes
                        type: object
                        properties:
                          userOp:
                            description: >-
                              Object containing the fields of a UserOperation, including sender, nonce, calldata, gas
                              limits, and signature.
                            type: object
                            properties:
                              sender:
                                description: The address of the account initiating the user operation.
                                type: string
                                example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                              nonce:
                                description: The nonce of the sender account, as a bigint.
                                type: string
                                example: '0'
                              initCode:
                                description: The initCode for contract creation, as a hex string. Optional.
                                type: string
                                example: '0x1234abcd'
                              callData:
                                description: The calldata for the user operation, as a hex string.
                                type: string
                                example: '0x1234abcd'
                              callGasLimit:
                                description: The gas limit for the call, as a bigint.
                                type: string
                                example: '21000'
                              verificationGasLimit:
                                description: The gas limit for verification, as a bigint.
                                type: string
                                example: '100000'
                              preVerificationGas:
                                description: The gas used before verification, as a bigint.
                                type: string
                                example: '21000'
                              maxFeePerGas:
                                description: The maximum fee per gas, as a bigint.
                                type: string
                                example: '1000000000'
                              maxPriorityFeePerGas:
                                description: The maximum priority fee per gas, as a bigint.
                                type: string
                                example: '100000000'
                              paymasterAndData:
                                example: 0x
                                description: The paymaster and data field, as a hex string. Optional.
                                type: string
                              signature:
                                example: '0xabcdef123456'
                                description: The signature for the user operation, as a hex string. Optional.
                                type: string
                            required:
                              - sender
                              - nonce
                              - callData
                              - callGasLimit
                              - verificationGasLimit
                              - preVerificationGas
                              - maxFeePerGas
                              - maxPriorityFeePerGas
                            additionalProperties: false
                          userOpHash:
                            description: The hash of the user operation.
                            type: string
                            example: '0x1234abcd5678ef90'
                          meeUserOpHash:
                            description: The MEE-specific hash of the user operation.
                            type: string
                            example: '0xabcdef1234567890'
                          lowerBoundTimestamp:
                            description: The lower bound timestamp for the user operation.
                            type: number
                            example: 1710000000
                          upperBoundTimestamp:
                            description: The upper bound timestamp for the user operation.
                            type: number
                            example: 1710003600
                          maxGasLimit:
                            description: The maximum gas limit for the user operation.
                            type: string
                            example: '1000000'
                          maxFeePerGas:
                            description: The maximum fee per gas for the user operation.
                            type: string
                            example: '1000000000'
                          chainId:
                            description: The chain ID for the user operation.
                            type: number
                            example: 8453
                          eip7702Auth:
                            description: >-
                              Object containing the EIP-7702 authorization signature fields for delegation, including
                              the signer address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity).
                              Used to prove delegation intent and validity.
                            type: object
                            properties:
                              address:
                                description: >-
                                  The EVM address of the delegation contract to which your EOA (Externally Owned
                                  Account) is being upgraded. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                              chainId:
                                description: >-
                                  The chain ID for which this authorization is valid. Use 0 for multichain or specify a
                                  supported chain ID.
                                type: number
                                example: 8453
                              nonce:
                                description: Signature nonce
                                type: number
                                example: 38
                              r:
                                description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                type: string
                                example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                              s:
                                description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                type: string
                                example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                              v:
                                example: '28'
                                description: >-
                                  The "v" value of the ECDSA signature (recovery id), as a string. Optional for EIP-2098
                                  signatures.
                                type: string
                              yParity:
                                description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                                type: number
                                example: 1
                            required:
                              - address
                              - chainId
                              - nonce
                              - r
                              - s
                              - yParity
                            additionalProperties: false
                          isCleanUpUserOp:
                            example: false
                            description: Whether this is a clean-up user operation.
                            type: boolean
                          shortEncoding:
                            example: true
                            description: Whether the user operation uses short encoding.
                            type: boolean
                        required:
                          - userOp
                          - userOpHash
                          - meeUserOpHash
                          - lowerBoundTimestamp
                          - upperBoundTimestamp
                          - maxGasLimit
                          - maxFeePerGas
                          - chainId
                        additionalProperties: false
                    fundingTokens:
                      description: Optional array of funding tokens for token pull execution.
                      type: array
                      items:
                        description: Object containing the funding token deposit for MEE fusion execution.
                        type: object
                        properties:
                          tokenAddress:
                            description: Contract address of the token that will be deposited into the Nexus smart account.
                            type: string
                            example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                          chainId:
                            description: Chain ID where the funding token resides. Use a supported chain ID.
                            type: number
                            example: 1
                          amount:
                            description: Amount of funding token in wei/smallest unit to deposit.
                            type: string
                            example: '1000000000'
                        required:
                          - tokenAddress
                          - chainId
                          - amount
                        additionalProperties: false
                  required:
                    - hash
                    - node
                    - commitment
                    - paymentInfo
                    - userOps
                  additionalProperties: false
                payloadToSign:
                  description: Array of payloads with signatures for execution.
                  minItems: 1
                  type: array
                  items:
                    anyOf:
                      - type: object
                        properties:
                          signablePayload:
                            description: Payload to be signed for EIP-712 permit
                            type: object
                            properties:
                              domain:
                                description: EIP-712 domain object
                                type: object
                                properties:
                                  name:
                                    example: USD Coin
                                    description: Token or contract name (e.g. 'USD Coin')
                                    type: string
                                  version:
                                    example: '2'
                                    description: Contract version (e.g. '1')
                                    type: string
                                  chainId:
                                    example: 1
                                    description: EVM chain ID (e.g. 1 for Ethereum mainnet)
                                    type: number
                                  verifyingContract:
                                    example: '0xA0b86a33E6441c1a7C4FB1e50Fc5F5ED69DC3D2B'
                                    description: Address of the contract being verified
                                    type: string
                                  salt:
                                    example: '0x0000000000000000000000000000000000000000000000000000000000000000'
                                    description: Optional domain salt (hex string)
                                    type: string
                                additionalProperties: false
                              types:
                                type: object
                                propertyNames:
                                  description: Name of the EIP-712 struct (e.g. 'Permit')
                                  type: string
                                  example: Permit
                                additionalProperties:
                                  description: List of fields for this struct
                                  example:
                                    - name: owner
                                      type: address
                                    - name: spender
                                      type: address
                                    - name: value
                                      type: uint256
                                    - name: nonce
                                      type: uint256
                                    - name: deadline
                                      type: uint256
                                  type: array
                                  items:
                                    type: object
                                    properties:
                                      name:
                                        description: A string value.
                                        type: string
                                        example: owner
                                      type:
                                        description: A string value.
                                        type: string
                                        example: address
                                    required:
                                      - name
                                      - type
                                    additionalProperties: false
                              message:
                                description: Key-value pairs for the EIP-712 message
                                example:
                                  owner: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                  spender: '0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45'
                                  value: '1000000000000000000000'
                                  nonce: '0'
                                  deadline: '1647857449'
                                type: object
                                propertyNames:
                                  description: A string value.
                                  type: string
                                  example: owner
                                additionalProperties: {}
                              primaryType:
                                description: Name of the main EIP-712 struct to sign (e.g. 'Permit')
                                type: string
                                example: Permit
                            required:
                              - types
                              - message
                              - primaryType
                            additionalProperties: false
                          metadata:
                            description: Extra metadata for the permit signature
                            type: object
                            properties:
                              nonce:
                                description: Permit nonce (as string)
                                type: string
                                example: '0'
                              name:
                                description: Token or contract name
                                type: string
                                example: USD Coin
                              version:
                                description: Contract version
                                type: string
                                example: '2'
                              domainSeparator:
                                description: EIP-712 domain separator (hex string)
                                type: string
                                example: '0x06c37168a7db5138defc7866392bb87a741f9b3d104deb5094588ce041cae335'
                              owner:
                                description: Address of the permit owner
                                type: string
                                example: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                              spender:
                                description: Address of the spender
                                type: string
                                example: '0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45'
                              amount:
                                description: Permit amount in wei (as string)
                                type: string
                                example: '1000000000000000000000'
                            required:
                              - nonce
                              - name
                              - version
                              - domainSeparator
                              - owner
                              - spender
                              - amount
                            additionalProperties: false
                          signature:
                            description: >-
                              Hex-encoded signature of the quote payload, produced by the user's private key. Must be a
                              valid ECDSA signature in hexadecimal format.
                            type: string
                            example: >-
                              0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1b
                        required:
                          - signablePayload
                          - metadata
                          - signature
                        additionalProperties: false
                      - type: object
                        properties:
                          to:
                            description: Target contract address for the on-chain call
                            type: string
                            example: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                          data:
                            description: Calldata for the on-chain transaction (hex string)
                            type: string
                            example: 0xa9059cbb000000000000000000000000...
                          value:
                            description: ETH value to send with the transaction (in wei, as string)
                            type: string
                            example: '0'
                          chainId:
                            description: Chain ID for the on-chain transaction
                            type: number
                            example: 1
                          signature:
                            description: >-
                              Hex-encoded signature of the quote payload, produced by the user's private key. Must be a
                              valid ECDSA signature in hexadecimal format.
                            type: string
                            example: >-
                              0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1b
                        required:
                          - to
                          - data
                          - value
                          - chainId
                          - signature
                        additionalProperties: false
                      - type: object
                        properties:
                          message:
                            type: object
                            properties:
                              raw:
                                description: Raw transaction hash to sign (hex string)
                                type: string
                                example: '0xed96a92aa94b8b1927fc7c52ca3b3fcd0d706147dfbeda34a62dc232f6993029'
                            required:
                              - raw
                            additionalProperties: false
                          signature:
                            description: >-
                              Hex-encoded signature of the quote payload, produced by the user's private key. Must be a
                              valid ECDSA signature in hexadecimal format.
                            type: string
                            example: >-
                              0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1b
                        required:
                          - message
                          - signature
                        additionalProperties: false
              required:
                - ownerAddress
                - fee
                - quoteType
                - quote
                - payloadToSign
              additionalProperties: false
      responses:
        '200':
          description: MEE execution response
          content:
            application/json:
              schema:
                description: MEE execution response
                type: object
                properties:
                  success:
                    description: Indicates if the supertransaction execution was successful.
                    type: boolean
                    example: true
                  supertxHash:
                    example: '0x9a72f87a93c55d8f88e3f8c2a7b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2'
                    anyOf:
                      - description: The transaction hash of the executed supertransaction, or null if not available.
                        type: string
                        example: example string
                      - type: 'null'
                  error:
                    example: null
                    anyOf:
                      - description: Error message if the execution failed, or null if successful.
                        type: string
                        example: example string
                      - type: 'null'
                required:
                  - success
                  - supertxHash
                  - error
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
      security: *ref_1
  /v1/mee/orchestrator:
    post:
      description: Get orchestrator addresses for the specified owner on requested chains
      summary: Get orchestrator addresses
      tags:
        - mee
      parameters: []
      operationId: getOrchestrator
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              description: Request schema for getting orchestrator addresses on specified chains
              type: object
              properties:
                ownerAddress:
                  description: EOA wallet address which is used as owner of the orchestrator account
                  type: string
                  example: '0x0a7C906832544293a6018bA25280c7f7b0Bbf120'
                chains:
                  description: List of unique chain IDs where orchestrator addresses are needed
                  example:
                    - 1
                    - 137
                    - 10
                    - 8453
                  minItems: 1
                  type: array
                  items:
                    description: Chain ID where orchestrator address is needed
                    type: number
                    example: 8453
              required:
                - ownerAddress
                - chains
              additionalProperties: false
      responses:
        '200':
          description: Response schema containing orchestrator addresses grouped by chains
          content:
            application/json:
              schema:
                description: Response schema containing orchestrator addresses grouped by chains
                example:
                  - address: '0x4b19129EA58431A06D01054f69AcAe5de50633b6'
                    chains:
                      - '1'
                      - '10'
                  - address: '0xD5Fe79C09CDF3D279cD87B5CAdC77517D65274ca'
                    chains:
                      - '137'
                type: array
                items:
                  type: object
                  properties:
                    address:
                      description: Orchestrator address
                      type: string
                      example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                    chains:
                      description: List of chain IDs that share this orchestrator address
                      example:
                        - '1'
                        - '10'
                        - '137'
                      type: array
                      items:
                        type: string
                  required:
                    - address
                    - chains
                  additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
  /v1/instructions/hyperliquid/deposit:
    post:
      description: Build instructions for depositing USDC from Arbitrum to Hyperliquid
      summary: Build Hyperliquid deposit instructions
      tags: &ref_2
        - instructions
      parameters: []
      operationId: hyperliquidDeposit
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              description: >-
                Object containing the Hyperliquid deposit request fields, including owner address, execution mode
                (smart-account only), source token (USDC on Arbitrum only), source chain (Arbitrum only), amount to
                deposit, and optional fee token.
              type: object
              properties:
                ownerAddress:
                  description: EOA wallet address which is going to be used as a owner of orchestrator account
                  type: string
                  example: '0x742d35cc6639cb8d4b5d1c5d7b8b5e2e7c0c7a8a'
                orchestratorAddressOverride:
                  example: '0x742d35cc6639cb8d4b5d1c5d7b8b5e2e7c0c7a8a'
                  description: >-
                    Account address which is going to be used as orchestrator account address. If not provided,
                    ownerAddress will be used to derive the Nexus orchestratoraccount address.
                  type: string
                mode:
                  description: Execution mode for Hyperliquid deposits. Only smart-account mode is supported.
                  example: smart-account
                  type: string
                  enum:
                    - smart-account
                sourceToken:
                  example: '0xaf88d065e77c8cc2239327c5edb3a432268e5831'
                sourceChainId:
                  example: 42161
                amount:
                  example: '10000000'
                feeToken:
                  description: Optional fee token for the transaction. If not provided, sponsorship will be used.
                  example:
                    address: '0xaf88d065e77c8cc2239327c5edb3a432268e5831'
                    chainId: 42161
                  type: object
                  properties:
                    address:
                      description: Contract address of the token used to pay MEE execution fees
                      type: string
                      example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                    chainId:
                      description: Chain ID where the fee token resides. Use a supported chain ID.
                      type: number
                      example: 1
                    gasRefundAddress:
                      example: '0x0a7C906832544293a6018bA25280c7f7b0Bbf120'
                      description: >-
                        Custom gas refund address to receive remaining unspent gas. Defaults to owner address. Gas
                        refunds are always in ETH and may be refunded on multiple chains depending on userOps involved.
                      type: string
                  required:
                    - address
                    - chainId
                  additionalProperties: false
              required:
                - ownerAddress
                - mode
                - sourceToken
                - sourceChainId
                - amount
              additionalProperties: false
      responses:
        '200':
          description: >-
            Response schema for a Hyperliquid deposit quote, including MEE quote information for bridging USDC from
            Arbitrum to Hyperliquid.
          content:
            application/json:
              schema:
                description: >-
                  Response schema for a Hyperliquid deposit quote, including MEE quote information for bridging USDC
                  from Arbitrum to Hyperliquid.
                type: object
                properties:
                  ownerAddress:
                    description: Owner wallet address which will be used as a owner of orchestrator account
                    type: string
                    example: '0x1234567890abcdef1234567890abcdef12345678'
                  fee:
                    description: 'Fee details: amount, token address, and chain ID.'
                    type: object
                    properties:
                      amount:
                        description: Fee amount for the quote in wei.
                        type: string
                        example: '10000000000000000'
                      token:
                        description: EVM address of the fee token (zero address for native ETH).
                        type: string
                        example: '0x0000000000000000000000000000000000000000'
                      chainId:
                        description: Chain ID where the fee token resides.
                        type: number
                        example: 8453
                    required:
                      - amount
                      - token
                      - chainId
                    additionalProperties: false
                  quoteType:
                    description: 'Type of MEE signature: permit, onchain, simple, permit-sca, or mm-dtk.'
                    example: permit
                    type: string
                    enum:
                      - permit
                      - onchain
                      - simple
                      - permit-sca
                      - mm-dtk
                  quote:
                    description: MEE network compatible quote information
                    type: object
                    properties:
                      hash:
                        description: Supertransaction hash of the quote.
                        type: string
                        example: '0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdef'
                      node:
                        description: EVM address of the node providing the quote.
                        type: string
                        example: '0x9876543210abcdef9876543210abcdef98765432'
                      commitment:
                        description: Node's commitment hash for the supertransaction quote (hex string, 0x-prefixed).
                        type: string
                        example: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef'
                      paymentInfo:
                        type: object
                        properties:
                          sender:
                            description: Sender EVM address (optional)
                            type: string
                            example: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                          initCode:
                            default: 0x
                            description: Init code as hex string (optional)
                            type: string
                            example: '0x1234abcd'
                          nonce:
                            description: Nonce as string (optional)
                            type: string
                            example: '0'
                          token:
                            description: Payment token address
                            type: string
                            example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                          chainId:
                            description: Chain ID of the payment token
                            type: number
                            example: 1
                          verificationGasLimit:
                            example: '21000'
                            description: Verification gas limit as string (optional)
                            type: string
                          eoa:
                            example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                            description: EOA address (optional)
                            type: string
                          eip7702Auth:
                            description: >-
                              Object containing the EIP-7702 authorization signature fields for delegation, including
                              the signer address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity).
                              Used to prove delegation intent and validity.
                            type: object
                            properties:
                              address:
                                description: >-
                                  The EVM address of the delegation contract to which your EOA (Externally Owned
                                  Account) is being upgraded. Must be a valid checksummed Ethereum address.
                                type: string
                                example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                              chainId:
                                description: >-
                                  The chain ID for which this authorization is valid. Use 0 for multichain or specify a
                                  supported chain ID.
                                type: number
                                example: 8453
                              nonce:
                                description: Signature nonce
                                type: number
                                example: 38
                              r:
                                description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                type: string
                                example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                              s:
                                description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                type: string
                                example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                              v:
                                example: '28'
                                description: >-
                                  The "v" value of the ECDSA signature (recovery id), as a string. Optional for EIP-2098
                                  signatures.
                                type: string
                              yParity:
                                description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                                type: number
                                example: 1
                            required:
                              - address
                              - chainId
                              - nonce
                              - r
                              - s
                              - yParity
                            additionalProperties: false
                          shortEncoding:
                            example: false
                            default: false
                            description: 'Short encoding flag (default: false)'
                            type: boolean
                          callGasLimit:
                            example: '50000'
                            description: Call gas limit as string (optional)
                            type: string
                          sponsored:
                            example: true
                            description: Sponsored flag (optional)
                            type: boolean
                          sponsorshipUrl:
                            example: https://sponsorship.abc.org
                            description: Sponsored ulr (optional)
                            type: string
                          tokenAmount:
                            example: 1000 (1000 USDC), 1 (1 ether)
                            description: Token amount as string (optional)
                            type: string
                          tokenValue:
                            description: Token value as string in USD
                            type: string
                            example: 1000 (for 1000 USDC), 250000 (for 1 WBTC very soon)
                          tokenWeiAmount:
                            description: Token wei amount as string (optional)
                            type: string
                            example: 1000000000000000000000 (1000 ether), 250000 (0.25 USDC)
                          gasFee:
                            example: '21000000000000000'
                            description: Gas fee as string (optional)
                            type: string
                          orchestrationFee:
                            example: '1000000000000000'
                            description: Orchestration fee as string (optional)
                            type: string
                        required:
                          - sender
                          - initCode
                          - nonce
                          - token
                          - chainId
                          - shortEncoding
                          - tokenValue
                          - tokenWeiAmount
                        additionalProperties: false
                      userOps:
                        description: Array of MEE UserOperation objects for the quote.
                        type: array
                        items:
                          description: >-
                            Object containing the fields of a MEE UserOperation which is a Wrapper for userops supported
                            by MEE nodes
                          type: object
                          properties:
                            userOp:
                              description: >-
                                Object containing the fields of a UserOperation, including sender, nonce, calldata, gas
                                limits, and signature.
                              type: object
                              properties:
                                sender:
                                  description: The address of the account initiating the user operation.
                                  type: string
                                  example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                                nonce:
                                  description: The nonce of the sender account, as a bigint.
                                  type: string
                                  example: '0'
                                initCode:
                                  description: The initCode for contract creation, as a hex string. Optional.
                                  type: string
                                  example: '0x1234abcd'
                                callData:
                                  description: The calldata for the user operation, as a hex string.
                                  type: string
                                  example: '0x1234abcd'
                                callGasLimit:
                                  description: The gas limit for the call, as a bigint.
                                  type: string
                                  example: '21000'
                                verificationGasLimit:
                                  description: The gas limit for verification, as a bigint.
                                  type: string
                                  example: '100000'
                                preVerificationGas:
                                  description: The gas used before verification, as a bigint.
                                  type: string
                                  example: '21000'
                                maxFeePerGas:
                                  description: The maximum fee per gas, as a bigint.
                                  type: string
                                  example: '1000000000'
                                maxPriorityFeePerGas:
                                  description: The maximum priority fee per gas, as a bigint.
                                  type: string
                                  example: '100000000'
                                paymasterAndData:
                                  example: 0x
                                  description: The paymaster and data field, as a hex string. Optional.
                                  type: string
                                signature:
                                  example: '0xabcdef123456'
                                  description: The signature for the user operation, as a hex string. Optional.
                                  type: string
                              required:
                                - sender
                                - nonce
                                - callData
                                - callGasLimit
                                - verificationGasLimit
                                - preVerificationGas
                                - maxFeePerGas
                                - maxPriorityFeePerGas
                              additionalProperties: false
                            userOpHash:
                              description: The hash of the user operation.
                              type: string
                              example: '0x1234abcd5678ef90'
                            meeUserOpHash:
                              description: The MEE-specific hash of the user operation.
                              type: string
                              example: '0xabcdef1234567890'
                            lowerBoundTimestamp:
                              description: The lower bound timestamp for the user operation.
                              type: number
                              example: 1710000000
                            upperBoundTimestamp:
                              description: The upper bound timestamp for the user operation.
                              type: number
                              example: 1710003600
                            maxGasLimit:
                              description: The maximum gas limit for the user operation.
                              type: string
                              example: '1000000'
                            maxFeePerGas:
                              description: The maximum fee per gas for the user operation.
                              type: string
                              example: '1000000000'
                            chainId:
                              description: The chain ID for the user operation.
                              type: number
                              example: 8453
                            eip7702Auth:
                              description: >-
                                Object containing the EIP-7702 authorization signature fields for delegation, including
                                the signer address, chain ID, nonce, and ECDSA signature components (r, s, v/yParity).
                                Used to prove delegation intent and validity.
                              type: object
                              properties:
                                address:
                                  description: >-
                                    The EVM address of the delegation contract to which your EOA (Externally Owned
                                    Account) is being upgraded. Must be a valid checksummed Ethereum address.
                                  type: string
                                  example: '0x00000069E0Fb590E092Dd0E36FF93ac28ff11a3a'
                                chainId:
                                  description: >-
                                    The chain ID for which this authorization is valid. Use 0 for multichain or specify
                                    a supported chain ID.
                                  type: number
                                  example: 8453
                                nonce:
                                  description: Signature nonce
                                  type: number
                                  example: 38
                                r:
                                  description: The "r" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                  type: string
                                  example: '0x192a2503401595804c35cdc5b748fe35cceb77ef534bf5d670f7797376487ded'
                                s:
                                  description: The "s" value of the ECDSA signature, as a 32-byte hex string prefixed with 0x.
                                  type: string
                                  example: '0x1fd3c8acd0b7c5f64a8d72c35c39988544fca961b838277ab11750041cccc3d1'
                                v:
                                  example: '28'
                                  description: >-
                                    The "v" value of the ECDSA signature (recovery id), as a string. Optional for
                                    EIP-2098 signatures.
                                  type: string
                                yParity:
                                  description: The y-parity value (EIP-2098) for the signature. Should be 0 or 1.
                                  type: number
                                  example: 1
                              required:
                                - address
                                - chainId
                                - nonce
                                - r
                                - s
                                - yParity
                              additionalProperties: false
                            isCleanUpUserOp:
                              example: false
                              description: Whether this is a clean-up user operation.
                              type: boolean
                            shortEncoding:
                              example: true
                              description: Whether the user operation uses short encoding.
                              type: boolean
                          required:
                            - userOp
                            - userOpHash
                            - meeUserOpHash
                            - lowerBoundTimestamp
                            - upperBoundTimestamp
                            - maxGasLimit
                            - maxFeePerGas
                            - chainId
                          additionalProperties: false
                      fundingTokens:
                        description: Optional array of funding tokens for token pull execution.
                        type: array
                        items:
                          description: Object containing the funding token deposit for MEE fusion execution.
                          type: object
                          properties:
                            tokenAddress:
                              description: Contract address of the token that will be deposited into the Nexus smart account.
                              type: string
                              example: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48'
                            chainId:
                              description: Chain ID where the funding token resides. Use a supported chain ID.
                              type: number
                              example: 1
                            amount:
                              description: Amount of funding token in wei/smallest unit to deposit.
                              type: string
                              example: '1000000000'
                          required:
                            - tokenAddress
                            - chainId
                            - amount
                          additionalProperties: false
                    required:
                      - hash
                      - node
                      - commitment
                      - paymentInfo
                      - userOps
                    additionalProperties: false
                  payloadToSign:
                    description: Array of payloads to be signed, structure depends on the quoteType.
                    minItems: 1
                    type: array
                    items:
                      anyOf:
                        - description: Full EIP-712 permit signature data (payload and metadata)
                          type: object
                          properties:
                            signablePayload:
                              description: Payload to be signed for EIP-712 permit
                              type: object
                              properties:
                                domain:
                                  description: EIP-712 domain object
                                  type: object
                                  properties:
                                    name:
                                      example: USD Coin
                                      description: Token or contract name (e.g. 'USD Coin')
                                      type: string
                                    version:
                                      example: '2'
                                      description: Contract version (e.g. '1')
                                      type: string
                                    chainId:
                                      example: 1
                                      description: EVM chain ID (e.g. 1 for Ethereum mainnet)
                                      type: number
                                    verifyingContract:
                                      example: '0xA0b86a33E6441c1a7C4FB1e50Fc5F5ED69DC3D2B'
                                      description: Address of the contract being verified
                                      type: string
                                    salt:
                                      example: '0x0000000000000000000000000000000000000000000000000000000000000000'
                                      description: Optional domain salt (hex string)
                                      type: string
                                  additionalProperties: false
                                types:
                                  type: object
                                  propertyNames:
                                    description: Name of the EIP-712 struct (e.g. 'Permit')
                                    type: string
                                    example: Permit
                                  additionalProperties:
                                    description: List of fields for this struct
                                    example:
                                      - name: owner
                                        type: address
                                      - name: spender
                                        type: address
                                      - name: value
                                        type: uint256
                                      - name: nonce
                                        type: uint256
                                      - name: deadline
                                        type: uint256
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        name:
                                          description: A string value.
                                          type: string
                                          example: owner
                                        type:
                                          description: A string value.
                                          type: string
                                          example: address
                                      required:
                                        - name
                                        - type
                                      additionalProperties: false
                                message:
                                  description: Key-value pairs for the EIP-712 message
                                  example:
                                    owner: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                    spender: '0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45'
                                    value: '1000000000000000000000'
                                    nonce: '0'
                                    deadline: '1647857449'
                                  type: object
                                  propertyNames:
                                    description: A string value.
                                    type: string
                                    example: owner
                                  additionalProperties: {}
                                primaryType:
                                  description: Name of the main EIP-712 struct to sign (e.g. 'Permit')
                                  type: string
                                  example: Permit
                              required:
                                - types
                                - message
                                - primaryType
                              additionalProperties: false
                            metadata:
                              description: Extra metadata for the permit signature
                              type: object
                              properties:
                                nonce:
                                  description: Permit nonce (as string)
                                  type: string
                                  example: '0'
                                name:
                                  description: Token or contract name
                                  type: string
                                  example: USD Coin
                                version:
                                  description: Contract version
                                  type: string
                                  example: '2'
                                domainSeparator:
                                  description: EIP-712 domain separator (hex string)
                                  type: string
                                  example: '0x06c37168a7db5138defc7866392bb87a741f9b3d104deb5094588ce041cae335'
                                owner:
                                  description: Address of the permit owner
                                  type: string
                                  example: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                spender:
                                  description: Address of the spender
                                  type: string
                                  example: '0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45'
                                amount:
                                  description: Permit amount in wei (as string)
                                  type: string
                                  example: '1000000000000000000000'
                              required:
                                - nonce
                                - name
                                - version
                                - domainSeparator
                                - owner
                                - spender
                                - amount
                              additionalProperties: false
                          required:
                            - signablePayload
                            - metadata
                          additionalProperties: false
                        - description: On-chain signature data for direct contract calls
                          example:
                            to: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                            data: 0xa9059cbb000000000000000000000000...
                            value: '0'
                            chainId: 1
                          type: object
                          properties:
                            to:
                              description: Target contract address for the on-chain call
                              type: string
                              example: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                            data:
                              description: Calldata for the on-chain transaction (hex string)
                              type: string
                              example: 0xa9059cbb000000000000000000000000...
                            value:
                              description: ETH value to send with the transaction (in wei, as string)
                              type: string
                              example: '0'
                            chainId:
                              description: Chain ID for the on-chain transaction
                              type: number
                              example: 1
                          required:
                            - to
                            - data
                            - value
                            - chainId
                          additionalProperties: false
                        - description: Message with raw transaction hash to sign for simple quote type
                          example:
                            message:
                              raw: '0xed96a92aa94b8b1927fc7c52ca3b3fcd0d706147dfbeda34a62dc232f6993029'
                          type: object
                          properties:
                            message:
                              type: object
                              properties:
                                raw:
                                  description: Raw transaction hash to sign (hex string)
                                  type: string
                                  example: '0xed96a92aa94b8b1927fc7c52ca3b3fcd0d706147dfbeda34a62dc232f6993029'
                              required:
                                - raw
                              additionalProperties: false
                          required:
                            - message
                          additionalProperties: false
                required:
                  - ownerAddress
                  - fee
                  - quoteType
                  - quote
                  - payloadToSign
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
      security: *ref_1
  /v1/instructions/build-ccip:
    post:
      description: Build CCIP token bridge instructions for your supertransaction
      summary: Build CCIP token bridge instructions
      tags: *ref_2
      parameters: []
      operationId: buildCcip
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              description: >-
                Object containing the CCIP token bridging field, including source/destination tokens and chains, user
                address, amount, execution mode, and slippage tolerance.
              type: object
              properties:
                srcToken:
                  description: Source token EVM address. Must be a valid checksummed Ethereum address.
                  type: string
                  example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                dstToken:
                  description: Destination token EVM address. Must be a valid checksummed Ethereum address.
                  type: string
                  example: '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58'
                srcChainId:
                  description: The source chain ID for the swap or token bridging. Use a supported chain ID number.
                  type: number
                  example: 8453
                dstChainId:
                  description: The destination chain ID for the swap or token bridging. Use a supported chain ID number.
                  type: number
                  example: 10
                ownerAddress:
                  description: EOA wallet address which is going to be used as a owner of orchestrator account
                  type: string
                  example: '0x742d35cc6639cb8d4b5d1c5d7b8b5e2e7c0c7a8a'
                amount:
                  anyOf:
                    - example: '1000000'
                    - description: >-
                        Schema for specifying a runtime ERC20 balance check, including the target address, token
                        address, and optional constraints.
                      type: object
                      properties:
                        type:
                          example: runtimeErc20Balance
                          type: string
                          const: runtimeErc20Balance
                        targetAddress:
                          example: '0x742d35cc6639cb8d4b5d1c5d7b8b5e2e7c0c7a8a'
                          description: >-
                            The address whose ERC20 balance will be checked at runtime. If not provided, the balance
                            will be checked for the smart account address derived from the owner address.
                          type: string
                        tokenAddress:
                          example: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913'
                        constraints:
                          description: >-
                            Constraints for runtime value checks. Specify one or more of gte, lte, or eq to restrict the
                            value.
                          type: object
                          properties:
                            gte:
                              example: '1000000'
                              description: Greater than or equal to
                              type: string
                            lte:
                              example: '10000000'
                              description: Less than or equal to
                              type: string
                            eq:
                              example: '5000000'
                              description: Equal to
                              type: string
                          additionalProperties: false
                      required:
                        - type
                        - tokenAddress
                      additionalProperties: false
                mode:
                  type: string
                  enum:
                    - smart-account
                    - eoa
                    - eoa-7702
                gasLimit:
                  example: '50000'
                  description: Gas limit for the CCIP token bridging
                  type: string
              required:
                - srcToken
                - dstToken
                - srcChainId
                - dstChainId
                - ownerAddress
                - amount
                - mode
              additionalProperties: false
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  instructions:
                    description: Array of MEE instructions ready for execution
                    type: array
                    items:
                      description: >-
                        Object representing a single MEE instruction, including the set of contract calls to execute,
                        the target chain ID, and whether the instruction is composable with others in the same batch.
                      type: object
                      properties:
                        calls:
                          type: array
                          items:
                            anyOf:
                              - type: object
                                properties:
                                  to:
                                    description: EVM address of the target smart contract to invoke for this call.
                                    type: string
                                    example: '0x1111111254EEB25477B68fb85Ed929f73A960582'
                                  value:
                                    description: >-
                                      Amount of native token (in wei) to send with the contract call. Must be a
                                      non-negative integer.
                                    type: string
                                    example: '0'
                                  functionSig:
                                    description: >-
                                      Function signature as a string, e.g. "transfer(address,uint256)". Must match the
                                      target contract ABI.
                                    type: string
                                    example: transfer(address,uint256)
                                  inputParams:
                                    example:
                                      - fetcherType: 0
                                        paramData: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                        constraints: []
                                    type: array
                                    items:
                                      example:
                                        fetcherType: 0
                                        paramData: '0x742d35C9a91B1D5b5D24Dc30e8F0dF8E84b5d1c4'
                                        constraints:
                                          - constraintType: 1
                                            referenceData: '500'
                                      type: object
                                      properties:
                                        fetcherType:
                                          type: number
                                          enum:
                                            - 0
                                            - 1
                                        paramData:
                                          description: >-
                                            String representing the input parameter data, such as ABI-encoded bytes or a
                                            direct value.
                                          type: string
                                          example: example string
                                        constraints:
                                          type: array
                                          items:
                                            example:
                                              constraintType: 0
                                              referenceData: '1000'
                                            type: object
                                            properties:
                                              constraintType:
                                                type: number
                                                enum:
                                                  - 0
                                                  - 1
                                                  - 2
                                                  - 3
                                              referenceData:
                                                description: >-
                                                  String data used as the reference for the constraint, such as a
                                                  literal value or ABI-encoded data.
                                                type: string
                                                example: example string
                                            required:
                                              - constraintType
                                              - referenceData
                                            additionalProperties: false
                                      required:
                                        - fetcherType
                                        - paramData
                                        - constraints
                                      additionalProperties: false
                                  outputParams:
                                    example:
                                      - fetcherType: 0
                                        paramData: 0x
                                    type: array
                                    items:
                                      example:
                                        fetcherType: 0
                                        paramData: 0x
                                      type: object
                                      properties:
                                        fetcherType:
                                          type: number
                                          enum:
                                            - 0
                                            - 1
                                        paramData:
                                          description: >-
                                            String representing the output parameter data, such as ABI-encoded bytes or
                                            a result value.
                                          type: string
                                          example: example string
                                      required:
                                        - fetcherType
                                        - paramData
                                      additionalProperties: false
                                  gasLimit:
                                    description: Gas limit for the contract call. Optional - if not provided, it will be estimated.
                                    type: string
                                    example: '100000'
                                required:
                                  - to
                                  - value
                                  - functionSig
                                  - inputParams
                                  - outputParams
                                additionalProperties: false
                        chainId:
                          description: Chain ID on which this instruction should be executed. Must be a supported EVM chain ID.
                          type: number
                          example: 1
                        isComposable:
                          description: Indicates if this instruction is composable with others in the same execution batch.
                          type: boolean
                          example: true
                      required:
                        - calls
                        - chainId
                      additionalProperties: false
                  simulationTokenOverrides:
                    type: array
                    items:
                      type: object
                      properties:
                        tokenAddress:
                          description: Address of the token
                          type: string
                          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                        accountAddress:
                          description: Address of the account
                          type: string
                          example: '0x742d35Cc6634C0532925a3b844Bc454e4438f44e'
                        chainId:
                          description: Chain ID
                          type: number
                          example: 8453
                        balance:
                          description: Balance of the token
                          type: string
                          example: '12345678901234567890'
                      required:
                        - tokenAddress
                        - accountAddress
                        - chainId
                        - balance
                      additionalProperties: false
                required:
                  - instructions
                additionalProperties: false
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                  message:
                    type: string
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                        path:
                          type: array
                          items:
                            type: string
                        message:
                          type: string
                      required:
                        - code
                        - path
                        - message
                      additionalProperties: false
                required:
                  - code
                  - message
                  - errors
                additionalProperties: false
      security: *ref_1
info:
  title: Supertransaction API
  version: 0.4.0
  description: A comprehensive Supertransaction API documentation
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
components:
  securitySchemes:
    X-API-Key:
      type: apiKey
      name: X-API-Key
      in: header
      description: 'API Key required to access Supertransaction API. Example: mee_2w3mXCuyt4xVXDRCZ5k5Lhgs'
servers:
  - url: https://api.biconomy.io
    description: Production server
  - url: https://api-staging.biconomy.io
    description: Staging server
