# Business Change Intelligence API – Event Search

> Business Change Intelligence API – Event Search is a paid API for AI agents from api.businesschanges.dev, paid per call via x402, $0.1/call, status unknown (last checked 2026-09-14).

Search for businesses or locations with recent regulatory, operational, or ownership-change signals using intent filters, geography, and industry to surface sales leads and market intelligence.

## Facts

- Endpoint: POST https://api.businesschanges.dev/v1/events/search
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/business-change-intelligence-api-event-search-322807d9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Wv31YH9Xw6p5vv1fbNJMt

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 business-change-intelligence-api-event-search-322807d9 -d '<json body>'
```

Example prompt: Find me up to 50 new opening leads for restaurants within 30 km of Chicago — licensed or permitted in the last 60 days — and return the results in standard projection so I can see enough detail for prospecting.

## When to prefer this

Use this endpoint when you need to discover new or recently changed businesses across a geographic area using intent-based filters (openings, closures, permits, construction, operator changes). It is the right starting point for prospecting workflows before using the sibling evidence-expansion or premises-detail endpoints. Prefer it over general web search when you need structured, regulatory-signal-backed business change data rather than unstructured web results.

## Known failure modes

- No events found for the specified geography or filters — empty result set
- Invalid geography coordinates (lat/lon out of bounds) — validation error
- Unsupported intent enum value — schema validation error
- observedAfter date malformed or out of range — 400 error
- Exceeds maximum limit (100) or maxItems for arrays — validation error
- Payment not attached or insufficient (x402 protocol required) — 402 Payment Required
- Rate limit exceeded — 429 Too Many Requests

## How this service works

Find previously unknown businesses or locations with recent license, permit, inspection, ownership, opening, closure, or tenant-transition signals. Use for market research, sales prospecting, expansion tracking, and location intelligence. Results are compact by default and always distinguish regulatory leads from confirmed public status.

## Output

A paginated list of compact (or standard/full) business-change event records, each distinguishing regulatory leads from confirmed public status, including event type, business/location identity, geography, industry, and a cursor for fetching the next page.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "limit": {
   "type": "integer",
   "default": 25,
   "maximum": 100,
   "minimum": 1
  },
  "cursor": {
   "type": "string",
   "maxLength": 512,
   "minLength": 1
  },
  "intents": {
   "type": "array",
   "items": {
    "enum": [
     "opening_leads",
     "construction_activity",
     "remodels",
     "operator_changes",
     "closure_risk",
     "compliance_activity"
    ],
    "type": "string"
   },
   "maxItems": 6,
   "minItems": 1
  },
  "geography": {
   "type": "object",
   "properties": {
    "near": {
     "type": "object",
     "required": [
      "latitude",
      "longitude",
      "radiusKm"
     ],
     "properties": {
      "latitude": {
       "type": "number",
       "maximum": 90,
       "minimum": -90
      },
      "radiusKm": {
       "type": "number",
       "maximum": 250,
       "exclusiveMinimum": 0
      },
      "longitude": {
       "type": "number",
       "maximum": 180,
       "minimum": -180
      }
     },
     "additionalProperties": false
    },
    "cities": {
     "type": "array",
     "items": {
      "type": "string",
      "minLength": 1
     },
     "maxItems": 25,
     "minItems": 1
    },
    "counties": {
     "type": "array",
     "items": {
      "type": "string",
      "minLength": 1
     },
     "maxItems": 25,
     "minItems": 1
    },
    "postalCodes": {
     "type": "array",
     "items": {
      "type": "string",
      "maxLength": 16,
      "minLength": 3
     },
     "maxItems": 50,
     "minItems": 1
    },
    "regionCodes": {
     "type": "array",
     "items": {
      "type": "string",
      "maxLength": 16,
      "minLength": 2
     },
     "maxItems": 25,
     "minItems": 1
    }
   },
   "additionalProperties": false
  },
  "eventTypes": {
   "type": "array",
   "items": {
    "type": "string",
    "pattern": "^[a-z0-9]+(?:[._-][a-z0-9]+)+$",
    "maxLength": 100,
    "minLength": 3
   },
   "maxItems": 25,
   "minItems": 1
  },
  "industries": {
   "type": "array",
   "items": {
    "type": "string",
    "maxLength": 80,
    "minLength": 1
   },
   "maxItems": 25,
   "minItems": 1
  },
  "projection": {
   "enum": [
    "compact",
    "standard",
    "full"
   ],
   "type": "string",
   "default": "compact"
  },
  "jurisdictions": {
   "type": "array",
   "items": {
    "type": "string",
    "pattern": "^[A-Z0-9][A-Z0-9._-]*$",
    "maxLength": 64,
    "minLength": 2,
    "description": "Stable jurisdiction code such as US-FL."
   },
   "maxItems": 25
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/business-change-intelligence-api-event-search-322807d9/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.businesschanges.dev](https://www.zero.xyz/host/api.businesschanges.dev/llms.txt)
