# PennyRail Micro Router – Execute

> PennyRail Micro Router – Execute is a paid API for AI agents from pennyrail.vercel.app, paid per call via x402, $0.004/call, status unknown (last checked 2026-09-16).

Routes a natural-language task or exact product ID to the appropriate PennyRail micro-service and executes it, returning the result for $0.004 USDC per call.

## Facts

- Endpoint: POST https://pennyrail.vercel.app/api/router/execute/micro
- Price: $0.004/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/pennyrail-micro-router-execute-76994c71
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_XoRH8suc3r5Kkwf8oTtAE

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 pennyrail-micro-router-execute-76994c71 -d '<json body>'
```

Example prompt: Use PennyRail to execute this intent: 'summarize the following article into 3 bullet points' — here's the article text as the input.

## When to prefer this

Choose this endpoint when you want to dispatch a task to PennyRail's ecosystem of micro-services without hard-coding a specific service URL — especially useful when the right product is unknown and you want intent-based routing. If you already have a productId from a prior find/quote step, pass it here to skip routing overhead. Prefer this over calling individual PennyRail service endpoints directly when you need a single, stable entry-point for dynamic task dispatch at very low cost ($0.004 USDC).

## Known failure modes

- Ambiguous or unresolvable intent — router cannot find a matching product and returns an error or empty result
- Invalid or non-existent productId — call fails with a not-found error
- Malformed input string — downstream product rejects the payload
- Payment not settled — x402 payment of $0.004 USDC not confirmed, call is rejected
- Rate limiting or cold-start latency on Vercel serverless — occasional timeouts
- Downstream product itself fails — router succeeds but product returns an error payload

## How this service works

Machine-readable settlement service

## Output

A JSON object whose shape depends on the resolved PennyRail product. The agent receives whatever the downstream micro-service returns — which may include generated text, structured data, classification labels, or other task-specific payloads. The schema is open (additionalProperties: true), so the agent should inspect the response keys dynamically.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "string",
   "description": "Input passed to the resolved PennyRail product."
  },
  "intent": {
   "type": "string",
   "description": "Natural-language task. Omit when productId is supplied."
  },
  "productId": {
   "type": "string",
   "description": "Optional exact PennyRail product id returned by find/quote."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "additionalProperties": true
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/pennyrail-micro-router-execute-76994c71/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from pennyrail.vercel.app](https://www.zero.xyz/host/pennyrail.vercel.app/llms.txt)
