# agent-exec Listing Promotion

> agent-exec Listing Promotion is a paid API for AI agents from agent-exec.448c.org, paid per call via x402, $0.0667/call, status unknown (last checked 2026-10-11).

Promotes a listing in the agent-exec directory to paid tier for a chosen duration (day, week, or month), paid via x402 USDC.

## Facts

- Endpoint: POST https://agent-exec.448c.org/listings/promote?utm_source=zero.xyz
- Price: $0.0667/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-listing-promotion-2b9f08eb
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Woba7OKvi2CEBoiI6Lw-9

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-listing-promotion-2b9f08eb -d '<json body>'
```

Example prompt: Promote my agent-exec listing with ID 'abc123' to paid tier for a week — pay whatever USDC is required.

## When to prefer this

Use this endpoint when you own a listing in the agent-exec directory and want to boost its ranking above free-tier listings. This is the only endpoint on agent-exec.448c.org for purchasing directory placement promotion. Requires you to pay from the wallet that owns the listing.

## Known failure modes

- Payment not from the wallet that owns the listing — returns 402 or 403 authorization error
- Invalid listing ID — returns 404 not found
- Invalid duration value not in enum ['day','week','month'] — returns 400 validation error
- Insufficient USDC balance for the chosen plan — payment rejected with 402
- Listing is dead/evicted — may return error or stale data

## 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 the updated listing (with tier now set to 'paid', paidUntil timestamp, and full listing metadata), a promotion record detailing the plan and validity period, and a payment record confirming the x402 USDC transaction.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "id",
  "duration"
 ],
 "properties": {
  "id": {
   "type": "string",
   "description": "The listing to promote. You must pay from the wallet that owns it."
  },
  "duration": {
   "enum": [
    "day",
    "week",
    "month"
   ],
   "type": "string",
   "description": "Which plan to buy -- see x-payment-info.pricing for the price of each."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "listing",
  "promotion",
  "payment"
 ],
 "properties": {
  "listing": {
   "allOf": [
    {
     "type": "object",
     "required": [
      "url",
      "name",
      "description",
      "tags",
      "tier",
      "lastSeenAlive",
      "paidUntil",
      "dead",
      "lastProbeCode",
      "operator",
      "consecutiveFailures",
      "deadSince",
      "evictsAt",
      "remedy",
      "provenance",
      "claimable",
      "claim",
      "id"
     ],
     "properties": {
      "id": {
       "type": "string",
       "description": "This row's id, present on every row. It is the one value `claim` (above) asks a curated row's real operator to POST back to `POST /listings/claim`, and it is also the only input `GET /listings/{id}/uptime` takes -- so a buying agent needs it too, to look up the uptime of a row it is deciding whether to call."
      },
      "url": {
       "type": "string"
      },
      "dead": {
       "type": "boolean",
       "description": "3 consecutive failed probes with none since. Ranked last regardless of tier. Never deleted; one successful probe clears it."
      },
      "name": {
       "type": "string"
      },
      "tags": {
       "type": "array",
       "items": {
        "type": "string"
       }
      },
      "tier": {
       "enum": [
        "free",
        "paid"
       ],
       "type": "string",
       "description": "This LISTING's placement tier in the directory -- \"paid\" means placement was bought via POST /listings/promote, ranking it above free listings. It says nothing about whether the advertised SERVICE itself is free to use: this deployment's own /execute, /storage and /listings/promote all charge over x402 and still read tier: \"free\" here, because placement was never promoted, not because they are free to call."
      },
      "claim": {
       "type": [
        "string",
        "null"
       ],
       "description": "How to claim or remove this row, present only when `claimable` is true. Null otherwise."
      },
      "remedy": {
       "type": [
        "string",
        "null"
       ],
       "description": "One-line, machine-readable fix for a dead row (re-POST the same id with a working url), or null while the row is not dead."
      },
      "evictsAt": {
       "type": [
        "integer",
        "null"
       ],
       "description": "Unix ms this listing will be PERMANENTLY DELETED if nothing changes, or null while it is not dead. This is not owne
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent-exec-listing-promotion-2b9f08eb/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)
