Skip to content

Ads

An Ad is “one paid or house placement promoting an offer to an Audience”: read the ones your rivals keep paying for first.

Noun
Ad
Calls
1
Emits
Ad.found

A Data Verb reads the market and returns a reading. A Software Verb changes your records and emits an Event. Every call here is a Data Verb: it reads, and it changes a record only where its Effects say so.

Properties

FieldTypeWhat null means
adsAd[]Never null: empty when none ran, at $0; absent with countOnly.
ads[].advertiser{ name: string; hostname: Hostname | null }Never null; hostname: null when the page names no site.
ads[].venueVenueIdNever null.
ads[].format'text' | 'image' | 'video' | 'carousel'Never null.
ads[].headlinestring | nullThe format has no headline.
ads[].bodystring | nullThe format has no body copy.
ads[].ctastring | nullNo button.
ads[].landingUrlstring | nullThe library does not show it.
ads[].mediaUrlstring | nullA text ad, or the library does not serve the file.
ads[].firstSeenstring | null, in dateThe library does not show a start date.
ads[].lastSeenstring | null, in dateThe library does not show it.
ads[].daysRunningnumber | null, in daysNo start date, so unknown; never zero.
ads[].transparencyUrlstring | nullThe site’s library has no page for it.
ads[]ObservedEach ad also carries observedAt and method.
totalnumber | null, in adsThe library reports no total.
afterCursorThe last page: there are no more rows.
costCost, in USDNever null. In try mode usd is 0 and maxUsd is what the call would have cost.

Object

JSON
{
  "ads": [
    {
      "advertiser": {
        "name": "RentRival",
        "hostname": "rentrival.example"
      },
      "venue": "facebook",
      "format": "image",
      "headline": "Stop chasing rent in spreadsheets",
      "body": "Owners get statements on the 1st. Free for 14 days.",
      "cta": "Sign up",
      "landingUrl": "https://rentrival.example/pm",
      "mediaUrl": null,
      "firstSeen": "2026-06-02",
      "lastSeen": "2026-10-26",
      "daysRunning": 146,
      "transparencyUrl": null,
      "observedAt": "2026-10-27T14:02:11Z",
      "method": "sampled"
    },
    {
      "advertiser": {
        "name": "RentRival",
        "hostname": "rentrival.example"
      },
      "venue": "linkedin",
      "format": "text",
      "headline": "Renewal notices, sent on time, every time",
      "body": "For property managers with 50 to 500 doors.",
      "cta": "Book a demo",
      "landingUrl": "https://rentrival.example/renewals",
      "mediaUrl": null,
      "firstSeen": "2026-10-08",
      "lastSeen": "2026-10-26",
      "daysRunning": 18,
      "transparencyUrl": null,
      "observedAt": "2026-10-27T14:02:11Z",
      "method": "sampled"
    }
  ],
  "total": 37,
  "after": "ad_k2Lw",
  "cost": {
    "usd": 0,
    "maxUsd": 0.0036,
    "units": 2,
    "misses": 0
  }
}

Verbs

VerbThe question it answersPriceSuccess rate
Ad.findWhich ads are my rivals paying to keep running?0.2¢ a search99.9% of 309,000 calls

The order you call them in

  1. Ad.find: Which ads are my rivals paying to keep running?

Monitors on this Noun

VerbWhat it watches
Ad.findA rival starts a new ad on any site, weekly.

Works with

Contents