# agent-exec Storage Object Renewal

> agent-exec Storage Object Renewal is a paid API for AI agents from agent-exec.45.67.221.128.sslip.io, paid per call via x402, $0.0051/call, status unknown (last checked 2026-10-02).

Extends the retention window of a stored object in the agent-exec sandbox by paying per-use with USDC, no account required.

## Facts

- Endpoint: POST https://agent-exec.45.67.221.128.sslip.io/storage/%7Bid%7D/renew?utm_source=zero.xyz
- Price: $0.0051/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-exec-storage-object-renewal-8739c76b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_OFyL2DZycOD1e9JxF6p7N

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agent-exec-storage-object-renewal-8739c76b -d '<json body>'
```

Example prompt: Renew the storage for my agent-exec object abc123 using a medium plan so it sticks around longer — pay with USDC.

## When to prefer this

Use this endpoint when an AI agent needs to extend the lifetime of an object already stored in the agent-exec sandbox without creating a new execution. It is the right choice when the agent wants to prevent imminent expiry of a stored result, proactively top up retention time, or automate storage management as part of a longer-running pipeline — all without needing an account or API key, just a valid USDC payment.

## Known failure modes

- Object ID not found — returns 404 if the storage object does not exist or has already been freed
- Insufficient payment — returns 402 with a quote for the correct amount if payment is too low or plan is too small for the object
- Invalid plan value — omitted, misspelled, or undersized plan causes the smallest valid plan to be auto-selected
- Payment verification failure — on-chain transaction not confirmed, resulting in rejection
- Object already expired — if the object has already been released, renewal is not possible

## How this service works

Accountless, pay-per-use code execution for software agents: submit source code, get stdout, stderr and exit code back from an isolated, network-less sandbox. No account, no API key -- possession of valid payment is sufficient.

## Output

Returns a JSON object with the storage object ID, the chosen plan, the new expiry timestamp (Unix ms), the previous expiry timestamp (Unix ms before renewal), and payment details including the on-chain transaction hash, payer wallet address, amount charged in atomic USDC units, asset name, and network.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "plan": {
   "enum": [
    "small",
    "medium",
    "large"
   ],
   "type": "string",
   "description": "Optional. Which plan to buy. Its retention window is ADDED to whatever the object has left, never substituted for it, so renewing early forfeits nothing. Omitted, misspelled or too small for the object, you get the smallest plan that holds the object, and the 402 quotes exactly that."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "id",
  "expiresAt",
  "previousExpiresAt",
  "plan",
  "payment"
 ],
 "properties": {
  "id": {
   "type": "string"
  },
  "plan": {
   "enum": [
    "small",
    "medium",
    "large"
   ],
   "type": "string"
  },
  "payment": {
   "type": "object",
   "properties": {
    "asset": {
     "type": "string"
    },
    "payer": {
     "type": "string",
     "description": "The paying wallet's address."
    },
    "amount": {
     "type": "string",
     "description": "Atomic units of the settlement asset that were charged."
    },
    "network": {
     "type": "string"
    },
    "transaction": {
     "type": "string",
     "description": "On-chain settlement transaction hash."
    }
   }
  },
  "expiresAt": {
   "type": "integer",
   "description": "Unix ms the object is free again, after this renewal."
  },
  "previousExpiresAt": {
   "type": "integer",
   "description": "Unix ms the object would have expired before this renewal."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-exec-storage-object-renewal-8739c76b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-exec.45.67.221.128.sslip.io](https://www.zero.xyz/host/agent-exec.45.67.221.128.sslip.io/llms.txt)
