# Agent Embassy — Renew Agent ID

> Agent Embassy — Renew Agent ID is a paid API for AI agents from agent-embassy.fly.dev, paid per call via x402, $0.25/call, status unknown (last checked 2026-10-10).

Renews an existing Agent ID credential, extending its validity period and returning a signed receipt proving the renewal occurred.

## Facts

- Endpoint: POST https://agent-embassy.fly.dev/v1/agent-id/renew?utm_source=zero.xyz
- Price: $0.25/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent-embassy-renew-agent-id-8942d1ad
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_uEeWtxcBoKPebU3Ngg6vi

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-renew-agent-id-8942d1ad -d '<json body>'
```

Example prompt: Renew my Agent Embassy agent ID fedcba9876543210fedcba9876543210fedcba9876543210fedcba9876543210 for 365 days and give me the signed receipt proving the renewal happened.

## When to prefer this

Use this endpoint when you need to extend the lifetime of an existing Agent Embassy agent ID credential rather than issuing a new one. Prefer this over issuance when the agent already has an on-file identity that downstream systems recognize. Choose it when you need a tamper-evident, on-chain-provable receipt of the renewal action, not just a silent database update.

## Known failure modes

- Unknown or malformed agent_id (not 64 hex chars) → rejected with error
- Invalid revocation_signature (wrong key, wrong message format, or raw ECDSA without EIP-191 envelope) → verification failure
- validity_days outside 1-730 range → validation error
- Replayed published idempotency_key → rejected
- Insufficient USDC balance or payment failure → x402 payment error
- Expired or already-revoked agent_id → rejected

## How this service works

Agents pay for work and prove what happened.

## Output

A JSON object containing the tool name, a chain array describing the lifecycle steps (request, authorization, action, proof, liability_boundary), a status of 'complete', the paying account address, the renewed agent_id, a unique receipt_id (emb_...), and a receipt_version string — together forming a signed, auditable proof of renewal.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "agent_id": {
   "type": "string",
   "description": "The Agent ID string returned at issuance (64 hex characters; case-insensitive). Unknown IDs are rejected"
  },
  "validity_days": {
   "type": "number",
   "description": "Days until the renewed Agent ID expires; integer 1-730. Defaults to the Embassy standard when omitted"
  },
  "idempotency_key": {
   "type": "string",
   "description": "Optional idempotency key: UUID v4 (client-generated; published example keys are rejected). When provided, replaying the same key returns the original receipt instead of re-running the action; when omitted, no dedupe occurs. Keys are scoped per tool and per payer account: the same key on another tool — or from another wallet — is unrelated."
  },
  "revocation_signature": {
   "type": "string",
   "description": "Hex signature over the exact UTF-8 message agent-id-revoke:<OLD_agent_id> (64-char lowercase ID, no trailing newline) — the signature covers the OLD Agent ID being retired. EIP-191: personal_sign the message STRING (personal_sign envelope REQUIRED — raw ECDSA will not verify), 0x 65-byte hex r||s||v (v=27/28). ed25519: nacl.sign.detached over the message bytes, 64-byte hex. Signer: the principal's on-file revocation key, or the Embassy signer for cause"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "tool": "agentid_renew",
  "chain": [
   "request",
   "authorization",
   "action",
   "proof",
   "liability_boundary"
  ],
  "status": "complete",
  "account": "0x1111111111111111111111111111111111111111",
  "agent_id": "fedcba9876543210fedcba9876543210fedcba9876543210fedcba9876543210",
  "receipt_id": "emb_3c4d5e6f7890abcdef123456",
  "receipt_version": "embassy-receipt/1"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-embassy-renew-agent-id-8942d1ad/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-embassy.fly.dev](https://www.zero.xyz/host/agent-embassy.fly.dev/llms.txt)
