Skip to main content

POST /v1/yield/execute

Free — No payment required.
Submit a signed intent envelope for yield execution. Rhaios validates the envelope (chain, merkle root/proofs, signer), runs a preflight simulation when enabled, and relays it to the configured bundler. Returns userOp hash, transaction hash, receipt, and position update. When preflight simulation is enabled (enforce mode), the server creates an ephemeral test RPC at the latest block, simulates the transaction, and only submits to the bundler if simulation succeeds. This prevents failed transactions from reaching the chain. Duplicate execution calls for the same successful intentId are idempotent:
  • First success returns result: "executed".
  • Later duplicates return result: "already_executed" with the original transaction hash.

Parameters

intentEnvelope
object
required
Signed-intent payload returned by POST /v1/yield/prepare, including chainId, userOps, merkleRoot, and proofs.
intentSignature
string
required
EIP-712 signature over intentEnvelope.signing generated by the same wallet as intentEnvelope.userOps[0].userOperation.sender.
intentId
string
Optional alias for correlation. If provided, it must equal intentEnvelope.merkleRoot.

Example

curl -X POST https://api.staging.rhaios.com/v1/yield/execute \
  -H "Content-Type: application/json" \
  -d '{
    "intentEnvelope": {
      "version": "1",
      "chainId": 8453,
      "userOps": [{ "userOperation": { "sender": "0x...", "nonce": "0x1", "callData": "0x...", "signature": "0x..." } }],
      "merkleRoot": "0x...",
      "proofs": [[]]
    },
    "intentSignature": "0x...",
    "intentId": "0x..."
  }'

Response

{
  "executionModel": "erc4337-validator-intent-v1",
  "result": "executed",
  "userOpHash": "0x4f3e5a76d37bcfbfbd29652d4c26f20f39f84db4ec0d038df42f2f72e1e8b8a2",
  "txHash": "0x9c3ec6d6de7b3b4f0f6f19d9d8a73f0f9f77a17f5d5f3ea0c9f234569c0b8e72",
  "chainId": 8453,
  "chain": "base",
  "receipt": {
    "status": "success",
    "gasUsed": "241919",
    "blockNumber": 28430172
  },
  "explorerUrl": "https://basescan.org/tx/0x9c3ec6d6de7b3b4f0f6f19d9d8a73f0f9f77a17f5d5f3ea0c9f234569c0b8e72"
}
The explorerUrl links directly to the transaction on the block explorer for the chain used.