# Agent Embassy Ticker Shelf

> Agent Embassy Ticker Shelf is a paid API for AI agents from aemb.pro, paid per call via x402, $0.25/call, status unknown (last checked 2026-10-10).

Returns a ranked shelf of financial tickers matching a query, with optional budget gating, objective filtering, and a verifiable on-chain payment receipt.

## Facts

- Endpoint: POST https://aemb.pro/v1/shelf?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-ticker-shelf-b2aa28d0
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_2z35t1gUlTAYyPQAAdN-0

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-ticker-shelf-b2aa28d0 -d '<json body>'
```

Example prompt: Search the Agent Embassy shelf for the best convexity tickers on a volatility theme, cap it at $25 budget, show me up to 5 results, and give me the receipt proving payment.

## When to prefer this

Choose this endpoint when an agent needs to discover and rank financial tickers for a given theme or comparison, especially when verifiable proof of payment and an auditable receipt chain are required. Prefer it over generic stock screeners when the agent must prove what actions were taken (liability boundary) or when budget-gating is needed to constrain results to instruments within a cost threshold.

## Known failure modes

- Invalid or unsupported budget_usd value (must be one of 1/5/10/25/50/100) returns an error
- Query string exceeds 200 characters is rejected
- max_rows outside 3-10 range causes a validation error
- Replaying an idempotency_key returns the original receipt without re-charging
- Payment failure or insufficient USDC balance blocks the request
- Unsupported objective enum value returns an error

## How this service works

Agents pay for work and prove what happened.

## Output

Returns a JSON object with a ranked list of tickers (the 'shelf'), the investment objective applied, the number of rows returned, a chain-of-custody log (request → authorization → action → proof → liability_boundary), a receipt ID, receipt version, the paying account address, and completion status — enabling an agent to audit what happened and prove payment was made.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "query": {
   "type": "string",
   "description": "What to shop for: \"a ticker\", \"a ticker, $5 budget\", \"COMPARE two tickers\", \"BEST a theme, $25 budget\" (max 200 chars)"
  },
  "max_rows": {
   "type": "number",
   "description": "Rows on the shelf, 3-10 (default 10)"
  },
  "objective": {
   "type": "string",
   "description": "convexity (default), long-clock, fast-heat, tail, income, leveraged"
  },
  "budget_usd": {
   "type": "number",
   "description": "Hard budget gate in USD (1/5/10/25/50/100 supported; omit for uncapped)"
  },
  "idempotency_key": {
   "type": "string",
   "description": "Client-generated UUID v4, one per logical request. Replaying the same key on the same tool returns the original receipt."
  }
 }
}
```

## Response schema (JSON Schema)

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

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-embassy-ticker-shelf-b2aa28d0/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)
