# Agent-Exec Deadman Switch Registration

> Agent-Exec Deadman Switch Registration is a paid API for AI agents from agent-exec.448c.org, paid per call via x402, $0.0054/call, status unknown (last checked 2026-10-11).

Registers a pay-per-use deadman switch entry with a probe URL and lease duration, returning a UUID to confirm or let expire for automated verification.

## Facts

- Endpoint: POST https://agent-exec.448c.org/deadman?utm_source=zero.xyz
- Price: $0.0054/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-exec-deadman-switch-registration-ac05ae14
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_G_00eRocaL3HiDxNGfK2-

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-deadman-switch-registration-ac05ae14 -d '<json body>'
```

Example prompt: Register a deadman switch for me — probe https://example.com/health every 60 seconds and expect a 200 status code; describe it as 'checking my API server is alive', and set the lease to 120 seconds.

## When to prefer this

Choose this endpoint when you need an accountless, pay-per-use deadman switch that automatically probes a remote URL after a configurable lease duration, with no API key or account required — payment via x402 USDC is the only credential. Prefer this over traditional monitoring services when running AI agent workflows that need lightweight, one-shot liveness or content verification without infrastructure setup. Best suited for agents that need to register a canary check, confirm a workflow step, or detect inactivity within a bounded time window.

## Known failure modes

- Missing required probe predicate (no expectedStatus or expectedBodyContains) — entry cannot resolve to confirmed or refuted
- Invalid leaseSeconds value — too short or non-numeric
- Payment failure — invalid or insufficient USDC payment via x402 protocol
- Probe URL is malformed or not an absolute http/https URL
- Entry not confirmed before leaseExpiresAt — probe runs automatically and status resolves based on probe result
- Server unavailable or 5xx error during registration

## 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 containing a UUID (use this to confirm the entry before expiry), status set to 'pending', the probe configuration (URL, expected status, expected body substring), timestamps for creation and lease expiry in Unix milliseconds, and payment details including the on-chain transaction hash, paying wallet address, asset, network, and amount charged in atomic units.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "probe",
  "description",
  "leaseSeconds"
 ],
 "properties": {
  "probe": {
   "type": "object",
   "description": "At least one of expectedBodyContains / expectedStatus is required -- a probe with no predicate can never resolve to confirmed or refuted."
  },
  "description": {
   "type": "string",
   "description": "What you are about to do."
  },
  "leaseSeconds": {
   "type": "number",
   "description": "How long before an unconfirmed entry's probe runs."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "id",
  "status",
  "description",
  "probe",
  "createdAt",
  "leaseExpiresAt",
  "payment"
 ],
 "properties": {
  "id": {
   "type": "string",
   "format": "uuid",
   "description": "Keep this -- it is both how you confirm and how anyone reads the eventual verdict back."
  },
  "probe": {
   "type": "object",
   "required": [
    "url"
   ],
   "properties": {
    "url": {
     "type": "string",
     "format": "uri",
     "maxLength": 2048,
     "description": "Absolute http:// or https:// URL, GETted from OUR vantage point once the lease expires."
    },
    "expectedStatus": {
     "type": "integer",
     "maximum": 599,
     "minimum": 100,
     "description": "The response status must equal this for the verdict to be confirmed-by-probe."
    },
    "expectedBodyContains": {
     "type": "string",
     "maxLength": 500,
     "minLength": 1,
     "description": "The response body must contain this substring for the verdict to be confirmed-by-probe."
    }
   },
   "description": "At least one of expectedBodyContains / expectedStatus is required -- a probe with no predicate can never resolve to confirmed or refuted."
  },
  "status": {
   "enum": [
    "pending"
   ],
   "type": "string",
   "description": "Always pending at registration."
  },
  "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."
    }
   }
  },
  "createdAt": {
   "type": "integer",
   "description": "Unix ms this entry was registered."
  },
  "description": {
   "type": "string"
  },
  "leaseExpiresAt": {
   "type": "integer",
   "description": "Unix ms the lease expires -- confirm before this or the probe owns the entry."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-exec-deadman-switch-registration-ac05ae14/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-exec.448c.org](https://www.zero.xyz/host/agent-exec.448c.org/llms.txt)
