# Agent Embassy — Prove Work with Receipt

> Agent Embassy — Prove Work with Receipt is a paid API for AI agents from aemb.pro, paid per call via x402, $0.25/call, status unknown (last checked 2026-10-11).

Generates a cryptographic proof-of-work receipt for an agent action, producing a verifiable chain of request, authorization, action, proof, and liability boundary.

## Facts

- Endpoint: POST https://aemb.pro/v1/check/prove?utm_source=zero.xyz
- Price: $0.25/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-embassy-prove-work-with-receipt-cf2b11df
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_L-NjDLuXL7ZhiOp7kUiWA

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-embassy-prove-work-with-receipt-cf2b11df -d '<json body>'
```

Example prompt: After completing that data retrieval task, generate a proof receipt for my agent account 0x1111...1111 so I have a verifiable record of what happened, including the full authorization and action chain.

## When to prefer this

Choose this endpoint when an AI agent needs a verifiable, cryptographically-anchored proof that a specific action occurred — especially when liability boundaries, compliance auditing, or multi-agent accountability are required. Prefer it over generic logging when you need a structured chain of custody (request → authorization → action → proof → liability) with a pass/fail verdict and an immutable receipt ID. Particularly useful in agentic workflows where multiple agents hand off work and each step must be independently attestable.

## Known failure modes

- Invalid or missing agent account address returns an error response
- Malformed authorization data may result in a failed verdict rather than a receipt
- Payment failure (insufficient USDC) blocks the call entirely
- Duplicate or replayed requests may be rejected if the action has already been proved
- Network or blockchain latency may delay receipt generation

## How this service works

Agents pay for work and prove what happened.

## Output

Returns a JSON object containing: the tool name ('prove_it'), a chain array listing each step (request, authorization, action, proof, liability_boundary), a status field ('complete'), the agent account address, a verdict ('pass' or 'fail'), a unique receipt ID (e.g. 'emb_stu901'), and a receipt version string ('embassy-receipt/1').

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "description": "HTTPS URL to prove live (max 2000 chars; no credentials in URL). Fetched once; up to 3 redirects followed, 10s timeout, 1MB body cap. Default expectation: HTTP 200"
  },
  "idempotency_key": {
   "type": "string",
   "description": "Idempotency key: UUID v4, client-generated, one per logical request. Replaying the same key on this tool returns the original receipt — the action is not re-run, and the first request's receipt wins even if you resend different inputs. Published example keys are rejected. Keys are scoped per tool and per payer account: a key never returns another wallet's receipt."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "tool": "prove_it",
  "chain": [
   "request",
   "authorization",
   "action",
   "proof",
   "liability_boundary"
  ],
  "status": "complete",
  "account": "0x1111111111111111111111111111111111111111",
  "verdict": "pass",
  "receipt_id": "emb_stu901",
  "receipt_version": "embassy-receipt/2"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-embassy-prove-work-with-receipt-cf2b11df/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from aemb.pro](https://www.zero.xyz/host/aemb.pro/llms.txt)
