# Subscribe Inbox to Publisher Topic

> Subscribe Inbox to Publisher Topic is a free API for AI agents from inbox.withzero.xyz, Free, status unknown (last checked 2026-09-15, last successful call 2026-06-03).

Creates a subscription so that events from a specified publisher wallet and topic pattern are delivered to your inbox, with an optional trigger action on each new match.

## Facts

- Endpoint: POST https://inbox.withzero.xyz/api/v1/subscriptions
- Price: Free
- Status: unknown
- Last checked: 2026-09-15
- Last successful call: 2026-06-03
- Success rate: 50% of calls made through Zero
- Activations on Zero: 5
- Provider: inbox.withzero.xyz
- Website: https://inbox.withzero.xyz
- Canonical page: https://www.zero.xyz/c/inbox-withzero-xyz-subscribe-inbox-to-publisher-topic-07ba4da1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_9z2vLQcrZm_pFrCQiPevP

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 inbox-withzero-xyz-subscribe-inbox-to-publisher-topic-07ba4da1 -d '<json body>'
```

Example prompt: Subscribe my inbox to all events from publisher wallet 0xAbCd1234...5678 matching the topic pattern 'news.*', and trigger my webhook at https://myserver.com/hook with secret 'supersecretkey123' whenever a new match arrives.

## When to prefer this

Use this endpoint when you want your agent's inbox to automatically receive events published by a specific wallet on a matching topic, especially when combined with a webhook or scheduler trigger to react to new events without polling. Prefer this over manual draining when you need event-driven automation.

## Known failure modes

- Invalid or missing fromWallet address (not a valid 0x Ethereum address)
- Missing or empty topicPattern
- Webhook trigger missing required URL or secret too short (<8 chars)
- scheduler-run trigger missing or invalid taskId UUID
- Inbox not provisioned yet — must call POST /api/v1/inboxes first
- Duplicate subscription conflict
- Authentication/proof credential invalid or missing

## How this service works

Subscribe your inbox to a publisher topic. 📖 Full guide: https://inbox.withzero.xyz/llms.txt

## Output

Returns a subscription object containing a unique subscription ID, the publisher wallet address, the topic pattern, the configured trigger (or null), and the createdAt timestamp confirming the subscription is active.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "fromWallet",
  "topicPattern"
 ],
 "properties": {
  "trigger": {
   "oneOf": [
    {
     "type": "object",
     "required": [
      "type",
      "taskId"
     ],
     "properties": {
      "type": {
       "type": "string",
       "const": "scheduler-run"
      },
      "taskId": {
       "type": "string",
       "format": "uuid",
       "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
      }
     },
     "additionalProperties": false
    },
    {
     "type": "object",
     "required": [
      "type",
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "format": "uri"
      },
      "type": {
       "type": "string",
       "const": "webhook"
      },
      "secret": {
       "type": "string",
       "maxLength": 256,
       "minLength": 8
      }
     },
     "additionalProperties": false
    }
   ],
   "description": "Optional action on a fresh match: a scheduler-run (dispatch a task run) or a webhook (signed URL callback)."
  },
  "fromWallet": {
   "type": "string",
   "pattern": "^0x[0-9a-fA-F]{40}$",
   "description": "Publisher wallet whose events you want delivered to your inbox."
  },
  "topicPattern": {
   "type": "string",
   "maxLength": 256,
   "minLength": 1,
   "description": "Topic glob, e.g. \"render.*\" or \"news.summary\"."
  }
 },
 "additionalProperties": false
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "id",
  "fromWallet",
  "topicPattern",
  "trigger",
  "createdAt"
 ],
 "properties": {
  "id": {
   "type": "string"
  },
  "trigger": {
   "anyOf": [
    {
     "oneOf": [
      {
       "type": "object",
       "required": [
        "type",
        "taskId"
       ],
       "properties": {
        "type": {
         "type": "string",
         "const": "scheduler-run"
        },
        "taskId": {
         "type": "string",
         "format": "uuid",
         "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        }
       },
       "additionalProperties": false
      },
      {
       "type": "object",
       "required": [
        "type",
        "url"
       ],
       "properties": {
        "url": {
         "type": "string",
         "format": "uri"
        },
        "type": {
         "type": "string",
         "const": "webhook"
        },
        "secret": {
         "type": "string",
         "maxLength": 256,
         "minLength": 8
        }
       },
       "additionalProperties": false
      }
     ]
    },
    {
     "type": "null"
    }
   ]
  },
  "createdAt": {
   "type": "string"
  },
  "fromWallet": {
   "type": "string"
  },
  "topicPattern": {
   "type": "string"
  }
 },
 "additionalProperties": false
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/inbox-withzero-xyz-subscribe-inbox-to-publisher-topic-07ba4da1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from inbox.withzero.xyz](https://www.zero.xyz/host/inbox.withzero.xyz/llms.txt)
