{
  "_meta": {
    "availability": "Served at /tools and /mcp by every Envoy instance; contract 1 is retired and no longer served. Envoy decides for each purchase who checks out: the agent with a one-time card (checkout_by agent) or Envoy itself (checkout_by envoy)",
    "contract": "envoy@2026-10",
    "evidence": "Served at /tools and /mcp by every Envoy instance. Examples use synthetic data.",
    "publicPaths": {
      "browserTool": "/api/browser/tools/{tool}",
      "disconnect": "/disconnect",
      "installationChallenge": "/installation/challenge",
      "mcp": "/mcp",
      "openapi": "/openapi.json",
      "tool": "/tools/{tool}",
      "tools": "/tools"
    },
    "revision": "envoy@2026-10"
  },
  "tools": {
    "answer_purchase_question": [
      {
        "input": {
          "answer": "Buy the in-stock model instead.",
          "idempotency_key": "synthetic-answer-0001",
          "purchase": "synthetic-intent-0001",
          "question": "synthetic-question-0001",
          "type": "answer"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "answer_purchase_question",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "answer": "Buy the in-stock model instead.",
          "idempotency_key": "synthetic-answer-0001",
          "purchase": "synthetic-intent-0001",
          "question": "synthetic-question-0001",
          "type": "answer"
        },
        "name": "synthetic-answer-relayed",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "call_tool",
            "after_seconds": 0,
            "args": {
              "after_revision": 2,
              "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
              "wait_seconds": 45
            },
            "by": "2026-09-29T12:02:00Z",
            "instruction": "Envoy is checking out for you. Do not open the merchant checkout or pay. Hold-read get_purchase_status until the state changes or next.by passes.",
            "tool": "get_purchase_status"
          },
          "ok": true,
          "purchase": {
            "agent": {
              "agent_id": "origin:https://host.example.test",
              "display_name": "Synthetic Host",
              "verification": "origin"
            },
            "amount": {
              "currency": "INR",
              "display": "₹2,499.00",
              "minor": 249900
            },
            "approval": {
              "approval_url": null,
              "decide_by": null,
              "method": null,
              "state": null
            },
            "chain": {
              "superseded_by": null,
              "supersedes": null
            },
            "checkout_by": "envoy",
            "created_at": "2026-09-29T12:00:00Z",
            "description": "Headphones",
            "details": {
              "complete": true,
              "missing": []
            },
            "follow_up": null,
            "idempotency_key": "synthetic-intent-0001",
            "merchant": {
              "name": "Example Store",
              "url": "https://shop.example.test"
            },
            "money": {
              "merchant_order_ref": null,
              "paid": null,
              "status": "not_started"
            },
            "payment_ready": {
              "available": false,
              "expires_at": null,
              "kind": null
            },
            "purchase_id": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
            "question": null,
            "rail": "operated_checkout",
            "rail_reason": "RAIL_AMOUNT_ABOVE_OTU_LIMIT",
            "reason_code": null,
            "receipt": null,
            "revision": 2,
            "service": "purchase",
            "state": "processing",
            "status_text": "Envoy is placing this order on the merchant site.",
            "terminal": false,
            "updated_at": "2026-09-29T12:00:00Z",
            "user_task": null
          },
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "answer_purchase_question",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "answer": "Quick and easy.",
          "idempotency_key": "synthetic-feedback-0001",
          "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
          "question": "feedback-pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
          "rating": 5,
          "type": "feedback"
        },
        "name": "synthetic-feedback-recorded",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "receipt": {
              "feedback_id": "synthetic-feedback",
              "recorded_at": "2026-09-29T12:21:00Z"
            }
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Envoy needs nothing more. Carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "answer_purchase_question",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "cancel_purchase": [
      {
        "input": {
          "purchase": "synthetic-intent-0001"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "cancel_purchase",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "get_account": [
      {
        "input": {},
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_account",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {},
        "name": "synthetic-compatible-payload",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "account": {
              "active_purchase": null,
              "balance": {
                "currency": "INR",
                "display": "₹5,000.00",
                "minor": 500000
              },
              "currency": "INR",
              "held": {
                "currency": "INR",
                "display": "₹0.00",
                "minor": 0
              },
              "services": [
                "purchase"
              ],
              "spendable": {
                "currency": "INR",
                "display": "₹5,000.00",
                "minor": 500000
              },
              "unavailable": []
            }
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Envoy needs nothing more. Carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_account",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "get_merchants": [
      {
        "input": {},
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_merchants",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {},
        "name": "synthetic-compatible-payload",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "merchants": [
              {
                "amount_range": null,
                "amounts": [
                  {
                    "currency": "INR",
                    "display": "₹500.00",
                    "minor": 50000
                  },
                  {
                    "currency": "INR",
                    "display": "₹1,000.00",
                    "minor": 100000
                  }
                ],
                "discount_percent": 2.5,
                "domain": "shop.example.test",
                "name": "shop.example.test",
                "redeem_at": "checkout"
              }
            ]
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Envoy needs nothing more. Carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_merchants",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "get_purchase_status": [
      {
        "input": {},
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_purchase_status",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "purchase": "synthetic-intent-0001"
        },
        "name": "synthetic-ready-secret",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "payment_details": {
              "amount_limit": {
                "currency": "INR",
                "display": "₹2,499.00",
                "minor": 249900
              },
              "card": {
                "cvv": "000",
                "expiry_month": "12",
                "expiry_year": "2099",
                "network": "rupay",
                "number": "0000000000000000"
              },
              "checkout_code": "000000",
              "kind": "card"
            }
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "checkout",
            "after_seconds": null,
            "args": {
              "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c"
            },
            "by": null,
            "instruction": "Pay once with data.payment_details, then call report_checkout_result. Report paid only when the merchant confirmed payment. If you cannot tell whether payment completed, report failed with failure_reason other. Never pay again for this purchase.",
            "tool": "report_checkout_result"
          },
          "ok": true,
          "purchase": {
            "agent": {
              "agent_id": "origin:https://host.example.test",
              "display_name": "Synthetic Host",
              "verification": "origin"
            },
            "amount": {
              "currency": "INR",
              "display": "₹2,499.00",
              "minor": 249900
            },
            "approval": {
              "approval_url": null,
              "decide_by": "2026-09-29T12:15:00Z",
              "method": "passkey",
              "state": "approved"
            },
            "chain": {
              "superseded_by": null,
              "supersedes": null
            },
            "checkout_by": "agent",
            "created_at": "2026-09-29T12:00:00Z",
            "description": "Headphones",
            "details": {
              "complete": true,
              "missing": []
            },
            "follow_up": null,
            "idempotency_key": "synthetic-intent-0001",
            "merchant": {
              "name": "Example Store",
              "url": "https://shop.example.test"
            },
            "money": {
              "merchant_order_ref": null,
              "paid": null,
              "status": "not_started"
            },
            "payment_ready": {
              "available": true,
              "expires_at": null,
              "kind": "card"
            },
            "purchase_id": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
            "question": null,
            "rail": "otu_card",
            "rail_reason": "RAIL_OTU_PREFERRED",
            "reason_code": null,
            "receipt": null,
            "revision": 1,
            "service": "purchase",
            "state": "ready",
            "status_text": "The one-time card for this purchase is ready for checkout.",
            "terminal": false,
            "updated_at": "2026-09-29T12:00:00Z",
            "user_task": null
          },
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_purchase_status",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "purchase": "synthetic-intent-0001"
        },
        "name": "synthetic-ready-without-checkout-code",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "payment_details": {
              "amount_limit": {
                "currency": "INR",
                "display": "₹2,499.00",
                "minor": 249900
              },
              "card": {
                "cvv": "000",
                "expiry_month": "12",
                "expiry_year": "2099",
                "network": "rupay",
                "number": "0000000000000000"
              },
              "kind": "card"
            }
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "checkout",
            "after_seconds": null,
            "args": {
              "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c"
            },
            "by": null,
            "instruction": "Pay once with data.payment_details, then call report_checkout_result. Report paid only when the merchant confirmed payment. If you cannot tell whether payment completed, report failed with failure_reason other. Never pay again for this purchase.",
            "tool": "report_checkout_result"
          },
          "ok": true,
          "purchase": {
            "agent": {
              "agent_id": "origin:https://host.example.test",
              "display_name": "Synthetic Host",
              "verification": "origin"
            },
            "amount": {
              "currency": "INR",
              "display": "₹2,499.00",
              "minor": 249900
            },
            "approval": {
              "approval_url": null,
              "decide_by": "2026-09-29T12:15:00Z",
              "method": "passkey",
              "state": "approved"
            },
            "chain": {
              "superseded_by": null,
              "supersedes": null
            },
            "checkout_by": "agent",
            "created_at": "2026-09-29T12:00:00Z",
            "description": "Headphones",
            "details": {
              "complete": true,
              "missing": []
            },
            "follow_up": null,
            "idempotency_key": "synthetic-intent-0001",
            "merchant": {
              "name": "Example Store",
              "url": "https://shop.example.test"
            },
            "money": {
              "merchant_order_ref": null,
              "paid": null,
              "status": "not_started"
            },
            "payment_ready": {
              "available": true,
              "expires_at": null,
              "kind": "card"
            },
            "purchase_id": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
            "question": null,
            "rail": "otu_card",
            "rail_reason": "RAIL_OTU_PREFERRED",
            "reason_code": null,
            "receipt": null,
            "revision": 1,
            "service": "purchase",
            "state": "ready",
            "status_text": "The one-time card for this purchase is ready for checkout.",
            "terminal": false,
            "updated_at": "2026-09-29T12:00:00Z",
            "user_task": null
          },
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_purchase_status",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "purchase": "synthetic-intent-0001"
        },
        "name": "synthetic-completed-receipt",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": null,
          "follow_ups": [
            {
              "args": {
                "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
                "question": "feedback-pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
                "type": "feedback"
              },
              "tool": "submit_answer",
              "why": "Optional feedback about this completed purchase."
            }
          ],
          "next": {
            "action": "done",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "The purchase is complete. Tell the user, including the order reference from purchase.receipt.merchant_order_ref when it is present, then carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": {
            "agent": {
              "agent_id": "origin:https://host.example.test",
              "display_name": "Synthetic Host",
              "verification": "origin"
            },
            "amount": {
              "currency": "INR",
              "display": "₹2,499.00",
              "minor": 249900
            },
            "approval": {
              "approval_url": null,
              "decide_by": "2026-09-29T12:15:00Z",
              "method": "passkey",
              "state": "approved"
            },
            "chain": {
              "superseded_by": null,
              "supersedes": null
            },
            "checkout_by": "agent",
            "created_at": "2026-09-29T12:00:00Z",
            "description": "Headphones",
            "details": {
              "complete": true,
              "missing": []
            },
            "follow_up": {
              "id": "feedback-pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
              "kind": "feedback",
              "prompt": "How did this purchase go? The user can rate it from 1 to 5 and add a few words."
            },
            "idempotency_key": "synthetic-intent-0001",
            "merchant": {
              "name": "Example Store",
              "url": "https://shop.example.test"
            },
            "money": {
              "merchant_order_ref": "SYNTHETIC-ORDER-0001",
              "paid": {
                "currency": "INR",
                "display": "₹2,499.00",
                "minor": 249900
              },
              "status": "debited"
            },
            "payment_ready": {
              "available": false,
              "expires_at": null,
              "kind": "card"
            },
            "purchase_id": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
            "question": null,
            "rail": "otu_card",
            "rail_reason": "RAIL_OTU_PREFERRED",
            "reason_code": null,
            "receipt": {
              "card": null,
              "completed_at": "2026-09-29T12:20:00Z",
              "merchant_order_ref": "SYNTHETIC-ORDER-0001",
              "paid": {
                "currency": "INR",
                "display": "₹2,499.00",
                "minor": 249900
              }
            },
            "revision": 4,
            "service": "purchase",
            "state": "completed",
            "status_text": "This purchase is complete.",
            "terminal": true,
            "updated_at": "2026-09-29T12:20:00Z",
            "user_task": null
          },
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "get_purchase_status",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "give_back_gift_card": [
      {
        "input": {
          "idempotency_key": "synthetic-giveback-0001",
          "max_total": "2499.00",
          "product": {
            "name": "Headphones",
            "quantity": 1
          },
          "purchase": "synthetic-intent-0001"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "give_back_gift_card",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "list_gift_card_merchants": [
      {
        "input": {},
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "list_gift_card_merchants",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {},
        "name": "synthetic-compatible-payload",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "merchants": [
              {
                "amount_range": null,
                "amounts": [
                  {
                    "currency": "INR",
                    "display": "₹500.00",
                    "minor": 50000
                  },
                  {
                    "currency": "INR",
                    "display": "₹1,000.00",
                    "minor": 100000
                  }
                ],
                "discount_percent": 2.5,
                "domain": "shop.example.test",
                "name": "shop.example.test",
                "redeem_at": "checkout"
              }
            ]
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Envoy needs nothing more. Carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "list_gift_card_merchants",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "list_purchases": [
      {
        "input": {
          "limit": 5
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "list_purchases",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "list_transactions": [
      {
        "input": {
          "limit": 10
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "list_transactions",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "limit": 10
        },
        "name": "synthetic-compatible-payload",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "next_cursor": null,
            "transactions": [
              {
                "amount": {
                  "currency": "INR",
                  "display": "₹100.00",
                  "minor": 10000
                },
                "by_agent": true,
                "card": "envoy",
                "direction": "debit",
                "id": "synthetic-line",
                "kind": "purchase",
                "occurred_at": "2026-09-29T11:00:00Z",
                "status": "completed",
                "subtitle": "Example Agent",
                "title": "Example Store"
              }
            ]
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Envoy needs nothing more. Carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "list_transactions",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "report_checkout_result": [
      {
        "input": {
          "failure_reason": "other",
          "outcome": "failed",
          "purchase": "synthetic-intent-0001"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "report_checkout_result",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "report_checkout_step": [
      {
        "input": {
          "purchase": "synthetic-intent-0001",
          "step": "payment_page_reached"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "report_checkout_step",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "search_products": [
      {
        "input": {
          "query": "whey protein 1kg"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "search_products",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "quantity": 2,
          "query": "whey protein 1kg"
        },
        "name": "synthetic-products",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "products": [
              {
                "brand": "Synthetic Nutrition",
                "image": "https://cdn.example.test/whey.jpg",
                "merchant_url": "https://elixir.cards",
                "name": "Whey Protein Isolate 1kg",
                "price": {
                  "currency": "INR",
                  "display": "₹499.00",
                  "minor": 49900
                },
                "product_id": "ofr_0123456789abcdef0123456789abcdef",
                "quantity": 2,
                "total": {
                  "currency": "INR",
                  "display": "₹998.00",
                  "minor": 99800
                },
                "valid_until": "2026-09-29T12:30:00Z"
              }
            ]
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Show the user each product with its price and total. To buy what the user picks, one or several, call start_purchase once with items [{name, quantity, product_id}], total = the sum of their total.display (e.g. \"₹998.00\"), their merchant_url and the same address_id you searched with. Never buy one the user did not pick.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "search_products",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "query": "whey protein 1kg"
        },
        "name": "synthetic-nothing-to-offer",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "products": []
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "done",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Elixir's marketplace has nothing to offer for this right now. Tell the user; do not repeat the same search.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "search_products",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ],
    "start_purchase": [
      {
        "input": {
          "idempotency_key": "synthetic-intent-0001",
          "items": [
            {
              "image": "https://shop.example.test/headphones.jpg",
              "name": "Headphones"
            }
          ],
          "merchant_logo": "https://shop.example.test/logo.png",
          "merchant_url": "https://shop.example.test",
          "total": "2499.00",
          "user_request": "Buy the headphones"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "start_purchase",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "idempotency_key": "synthetic-intent-0001",
          "items": [
            {
              "image": "https://shop.example.test/headphones.jpg",
              "name": "Headphones"
            }
          ],
          "merchant_logo": "https://shop.example.test/logo.png",
          "merchant_url": "https://shop.example.test",
          "total": "2499.00",
          "user_request": "Buy the headphones"
        },
        "name": "synthetic-waiting-for-approval",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "call_tool",
            "after_seconds": 0,
            "args": {
              "after_revision": 1,
              "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
              "wait_seconds": 45
            },
            "by": "2026-09-29T12:15:00Z",
            "instruction": "Tell the user the user_action message once; they cannot see tool replies. There is no link, id or code to give them. Call get_purchase_status with next.args exactly to check progress. Follow the returned next action until the state changes or next.by passes.",
            "tool": "get_purchase_status"
          },
          "ok": true,
          "purchase": {
            "agent": {
              "agent_id": "origin:https://host.example.test",
              "display_name": "Synthetic Host",
              "verification": "origin"
            },
            "amount": {
              "currency": "INR",
              "display": "₹2,499.00",
              "minor": 249900
            },
            "approval": {
              "approval_url": null,
              "decide_by": "2026-09-29T12:15:00Z",
              "method": "passkey",
              "state": "pending"
            },
            "chain": {
              "superseded_by": null,
              "supersedes": null
            },
            "checkout_by": "agent",
            "created_at": "2026-09-29T12:00:00Z",
            "description": "Headphones",
            "details": {
              "complete": true,
              "missing": []
            },
            "follow_up": null,
            "idempotency_key": "synthetic-intent-0001",
            "merchant": {
              "name": "Example Store",
              "url": "https://shop.example.test"
            },
            "money": {
              "merchant_order_ref": null,
              "paid": null,
              "status": "not_started"
            },
            "payment_ready": {
              "available": false,
              "expires_at": null,
              "kind": "card"
            },
            "purchase_id": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
            "question": null,
            "rail": "otu_card",
            "rail_reason": "RAIL_OTU_PREFERRED",
            "reason_code": null,
            "receipt": null,
            "revision": 1,
            "service": "purchase",
            "state": "waiting_for_user",
            "status_text": "Approve this purchase in the Envoy app.",
            "terminal": false,
            "updated_at": "2026-09-29T12:00:00Z",
            "user_task": "approve"
          },
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "start_purchase",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": {
            "by": "2026-09-29T12:15:00Z",
            "message": "Approve this purchase in the Envoy app. If your assistant hasn't continued after you approve, reply 'done'.",
            "task": "approve",
            "url": null
          }
        }
      }
    ],
    "submit_answer": [
      {
        "input": {
          "answer": "Buy the in-stock model instead.",
          "idempotency_key": "synthetic-answer-0001",
          "purchase": "synthetic-intent-0001",
          "question": "synthetic-question-0001",
          "type": "answer"
        },
        "name": "synthetic-unauthenticated",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": {
            "code": "UNAUTHENTICATED",
            "fields": [],
            "message": "Reconnect to Envoy.",
            "reason_code": null,
            "retry_after_seconds": null,
            "retryable": false
          },
          "follow_ups": [],
          "next": {
            "action": "reconnect",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Ask the user to reconnect Envoy, then retry this call.",
            "tool": null
          },
          "ok": false,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "submit_answer",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "answer": "Buy the in-stock model instead.",
          "idempotency_key": "synthetic-answer-0001",
          "purchase": "synthetic-intent-0001",
          "question": "synthetic-question-0001",
          "type": "answer"
        },
        "name": "synthetic-answer-relayed",
        "output": {
          "contract": "envoy@2026-10",
          "data": null,
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "call_tool",
            "after_seconds": 0,
            "args": {
              "after_revision": 2,
              "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
              "wait_seconds": 45
            },
            "by": "2026-09-29T12:02:00Z",
            "instruction": "Envoy is checking out for you. Do not open the merchant checkout or pay. Hold-read get_purchase_status until the state changes or next.by passes.",
            "tool": "get_purchase_status"
          },
          "ok": true,
          "purchase": {
            "agent": {
              "agent_id": "origin:https://host.example.test",
              "display_name": "Synthetic Host",
              "verification": "origin"
            },
            "amount": {
              "currency": "INR",
              "display": "₹2,499.00",
              "minor": 249900
            },
            "approval": {
              "approval_url": null,
              "decide_by": null,
              "method": null,
              "state": null
            },
            "chain": {
              "superseded_by": null,
              "supersedes": null
            },
            "checkout_by": "envoy",
            "created_at": "2026-09-29T12:00:00Z",
            "description": "Headphones",
            "details": {
              "complete": true,
              "missing": []
            },
            "follow_up": null,
            "idempotency_key": "synthetic-intent-0001",
            "merchant": {
              "name": "Example Store",
              "url": "https://shop.example.test"
            },
            "money": {
              "merchant_order_ref": null,
              "paid": null,
              "status": "not_started"
            },
            "payment_ready": {
              "available": false,
              "expires_at": null,
              "kind": null
            },
            "purchase_id": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
            "question": null,
            "rail": "operated_checkout",
            "rail_reason": "RAIL_AMOUNT_ABOVE_OTU_LIMIT",
            "reason_code": null,
            "receipt": null,
            "revision": 2,
            "service": "purchase",
            "state": "processing",
            "status_text": "Envoy is placing this order on the merchant site.",
            "terminal": false,
            "updated_at": "2026-09-29T12:00:00Z",
            "user_task": null
          },
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "submit_answer",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      },
      {
        "input": {
          "answer": "Quick and easy.",
          "idempotency_key": "synthetic-feedback-0001",
          "purchase": "pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
          "question": "feedback-pur_5b1e9c7a3f2d5a8e9c0b1d2e3f4a5b6c",
          "rating": 5,
          "type": "feedback"
        },
        "name": "synthetic-feedback-recorded",
        "output": {
          "contract": "envoy@2026-10",
          "data": {
            "receipt": {
              "feedback_id": "synthetic-feedback",
              "recorded_at": "2026-09-29T12:21:00Z"
            }
          },
          "error": null,
          "follow_ups": [],
          "next": {
            "action": "continue",
            "after_seconds": null,
            "args": null,
            "by": null,
            "instruction": "Envoy needs nothing more. Carry on with the user's task.",
            "tool": null
          },
          "ok": true,
          "purchase": null,
          "replayed": false,
          "request_id": "req_synthetic",
          "server_time": "2026-09-29T12:00:00Z",
          "tool": "submit_answer",
          "trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
          "user_action": null
        }
      }
    ]
  }
}
