{"slug": "rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup", "title": "Rent a confidential VM with USDC in two HTTP requests, no signup", "summary": "Agentgates launched a pay-per-hour confidential VM service (Intel TDX) aimed at autonomous agents rather than humans, requiring no account or API key: a wallet pays in USDC via the x402 protocol, and the paying wallet owns, reads, renews and destroys the machine. An unpaid request returns HTTP 402 with per-network pricing, and after an EIP-3009 transfer authorization on Base or Polygon (or a Solana transfer) settles on chain, the machine provisions and billing starts only once it reads running. Each machine carries a remote-attestation quote with a public proof page, and environment values are sealed to the machine and never stored.", "body_md": "Most cloud APIs assume a person: a signup form, a card, an API key pasted into a config file. An agent that needs a machine for an hour has none of those. It has a wallet.\n\n[Agentgates](https://agentgates.ai) sells confidential VMs (Intel TDX) by the hour to exactly that buyer. There is no account. The wallet that pays owns the machine, reads its state, renews it and destroys it.\n\nAsk for a machine with no payment and the API answers `402 Payment Required` with the exact price on every network it accepts. Asking is free and repeatable: nothing runs and nothing is charged.\n\n```\ncurl -s -X POST https://api.agentgates.ai/api/compute/deployments \\\n  -H 'content-type: application/json' \\\n  -d '{\"plan\":\"compute.starter\",\"hours\":1,\"image\":\"nginx:alpine\"}' |\n  jq -r '.accepts[] | \"\\(.network): \\((.maxAmountRequired | tonumber) / 1000000) USDC\"'\n```\n\nEach entry of `accepts` is one network's own offer: the amount in USDC atomic units, the token contract and the address to pay. The plans and their live prices are in `GET /api/compute/catalog`.\n\nSign the amount (an EIP-3009 transfer authorization on Base or Polygon, a transfer on Solana) and resend the same request with the payment attached. The official x402 v2 client does both steps:\n\n``` js\nimport { wrapFetchWithPaymentFromConfig } from '@x402/fetch';\nimport { ExactEvmScheme } from '@x402/evm';\nimport { privateKeyToAccount } from 'viem/accounts';\n\nconst pay = wrapFetchWithPaymentFromConfig(fetch, {\n  schemes: [{ network: 'eip155:8453', client: new ExactEvmScheme(privateKeyToAccount(process.env.EVM_PRIVATE_KEY)) }],\n});\n\nconst res = await pay('https://api.agentgates.ai/api/compute/deployments', {\n  method: 'POST',\n  headers: { 'content-type': 'application/json' },\n  body: JSON.stringify({ plan: 'compute.starter', hours: 1, image: 'nginx:alpine', port: 80 }),\n});\nconsole.log(await res.json()); // { deploymentId, status: \"provisioning\", ... }\n```\n\nSettlement confirms on chain, the machine provisions, and the billed clock starts when it reads `running`, not at payment. A wallet that cannot cover the amount is refused before anything moves: the answer says how much it needs and how much it holds.\n\nThe full example, which prints the price and pays only with `--yes`, is in [the repo](https://github.com/agentgates-ai/agentgates/blob/main/examples/buy-a-vm.mjs).\n\nThe machine's memory and disk are encrypted by the processor, and every machine carries a remote-attestation quote with a public proof page, so you can check the hardware before you hand it a secret. Environment values you send are sealed to the machine and never stored.\n\nWatch `expiresAt` and renew with `POST /api/compute/deployments/{id}/renew` and `{\"hours\": 1}`, paid the same way. Renewals stack on the end of the clock, so an agent can keep a machine alive an hour at a time.\n\n`/api/compute/docs`` https://mcp.agentgates.ai/compute`\n`npx skills add agentgates-ai/agentgates`", "url": "https://wpnews.pro/news/rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup", "canonical_source": "https://dev.to/agentgates/rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup-3d9h", "published_at": "2026-11-03 05:21:04+00:00", "updated_at": "2026-11-03 05:23:14.252504+00:00", "lang": "en", "topics": ["ai-agents", "ai-infrastructure", "agent-protocols", "ai-tools"], "entities": ["Agentgates", "Intel TDX", "USDC", "Base", "Polygon", "Solana", "x402"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup", "markdown": "https://wpnews.pro/news/rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup.md", "text": "https://wpnews.pro/news/rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup.txt", "jsonld": "https://wpnews.pro/news/rent-a-confidential-vm-with-usdc-in-two-http-requests-no-signup.jsonld"}}