# Advertisement Insights

> Advertisement Insights is a paid API for AI agents from agents.pubrio.com, paid per call via MPP or x402, $0.03/call, status unknown (last checked 2026-10-12).

Returns aggregated advertising-signal insights for a company over a date window, including active/launched ad counts, channel mix, creative samples, audience reach tier distribution, and a weekly time series.

## Facts

- Endpoint: POST https://agents.pubrio.com/companies/advertisements/insights?utm_source=zero.xyz
- Price: $0.03/call
- Payment: MPP, x402
- Status: unknown
- Last checked: 2026-10-12
- Activations on Zero: 0
- Provider: agents.pubrio.com
- Website: https://agents.pubrio.com
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agents-pubrio-com-advertisement-insights-93c397f2
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_duk3e2wuVTTQy0Ed8hdyE

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 agents-pubrio-com-advertisement-insights-93c397f2 -d '<json body>'
```

Example prompt: Pull the advertising insights for the company with search ID 'a1b2c3d4-e5f6-7890-abcd-ef1234567890' from January 1 2026 to March 31 2026, filtering to LinkedIn and Facebook ads only, and show me the channel mix, reach tier distribution, and some creative samples.

## When to prefer this

Use this endpoint when you need a high-level advertising overview for a single company — channel mix, reach distribution, creative samples, and weekly trends — without needing to paginate through individual ads. Prefer this over the Advertisement Search endpoint when you want aggregated insights rather than individual ad records, and when you want creative gallery data in a single call. Best suited for competitive intelligence, market entry detection, and ad strategy benchmarking.

## Known failure modes

- Missing or invalid domain_search_id (UUID format required) returns a validation error
- Reversed or invalid date window (date_to before date_from) causes fallback to default window — check window_days in response
- Unsupported source_type or reach_tier enum values cause filter to be ignored or return an error
- No advertising data found for the company in the requested window returns empty postings and creatives arrays
- Rate limiting or credit exhaustion returns a payment/quota error

## How this service works

Pubrio detects when companies enter new markets and returns the company and people data behind each move. Expansion signals (local hiring, new offices and entities, localized ads, news, cloud hosting) are typed, dated and tied to evidence across 200+ markets, with strong coverage of Asia-Pacific and other markets that Western-built datasets miss. The graph covers 800M+ companies and 560M+ contacts from 50+ local data sources, refreshed daily. Search companies, people, job postings, news, ads and cloud footprints with filters or a plain-language query; look up records by domain, LinkedIn URL or Pubrio id; find lookalike companies and people; read hiring, news, advertising and cloud insights for one company; and reveal verified work emails, personal emails and phone numbers. Each call costs the number of credits listed on its endpoint. This server is a pay-per-use, transparent proxy in front of Pubrio's own API: it handles identity, payment, and proxying. Agents can purchase autonomously or with their human's approval. The complete verified paid surface is listed at /openapi.json, the source of truth for available operations. Each operation here carries its live price in x-payment-info. Use the operations and details here when they meet your needs. Filtered specs contain only matching operations; if you cannot find what you need here, use search or the service catalog. The live catalog at /manifest.json is authoritative for prices and any free included units (prices[].includedUnits) - some meters include free usage per account before any charge, reserved for agents claimed by a human with a verified email.

## Output

A structured object containing: an ad-volume rollup (postings array) grouped by reach tier, market, channel and format; an array of recent ad creatives including headline, body, CTA and image; a reach-tier lookup catalog (slug and human label); and metadata about the query window. Reach is always expressed as a distribution across tiers, never as a single summed number.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "date_to": {
   "type": "string",
   "format": "date",
   "example": "2026-03-31",
   "description": "End of the date window (ISO 8601, YYYY-MM-DD). Ignored without date_from. If the window is invalid or reversed, the default window is used; check window_days in the response."
  },
  "date_from": {
   "type": "string",
   "format": "date",
   "example": "2026-01-01",
   "description": "Start of the date window (ISO 8601, YYYY-MM-DD). Use together with date_to to scope results to a specific range; omit both to use the default window."
  },
  "domain_search_id": {
   "type": "string",
   "format": "uuid",
   "description": "A unique identifier for the company search operation."
  },
  "is_include_unlinked_companies": {
   "type": "boolean",
   "example": false,
   "description": "Include advertisements not yet linked to a verified company profile."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "data": {
   "type": "object",
   "properties": {
    "postings": {
     "type": "array",
     "items": {
      "type": "object"
     },
     "description": "Ad-volume rollup, grouped by reach tier, markets, channel and format. Keys are abbreviated to keep the payload small: `r` = reach tier slug (matches `reach_tiers[].slug`, `null` when the platform reports no reach), `m` = the ISO 3166-1 alpha-2 markets the ads were shown in, `ch` = source channel, `fo` = ad format, `n` = number of ads in this group."
    },
    "creatives": {
     "type": "array",
     "items": {
      "type": "object"
     },
     "description": "Recent ad creatives, image-led: creatives with a real image come first, then recent text or video ads so image-less advertisers still appear. `headline`, `body` and `cta` may each be `null`. Everything needed to render a creative gallery is here — no second call to Advertisement Search is required."
    },
    "reach_tiers": {
     "type": "array",
     "items": {
      "type": "object"
     },
     "description": "The reach-tier label catalog, ordered smallest to largest. This is a lookup table, not a distribution — it carries no counts. Join `postings[].r` to `slug` to get the human label, and read the per-tier volume from `postings[].n`. Ad reach is a text range at source, so tiers must never be summed into a single reach figure."
    }
   },
   "description": "Insight bands for the requested company and window."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agents-pubrio-com-advertisement-insights-93c397f2/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.pubrio.com](https://www.zero.xyz/host/agents.pubrio.com/llms.txt)
