# Search ad creatives on Meta, Google and TikTok

Search public ad creatives from Meta and Google (including YouTube) in the Adspy.sh library: a keyword in ad copy, transcripts, visual analysis, hooks or brand. Takes query, scope, brand key and more, all optional. Served by Adspy.sh.

Search public ad creatives from Meta and Google (including YouTube) in the Adspy.sh library: a keyword in ad copy, transcripts, visual analysis, hooks or brand names; brand, platform, format, status, language, AI tags or minimum days active; newest, oldest or longest running first. The query is one exact phrase, matched case-insensitively inside a single field (no stemming, synonyms or operators): send one to three distinctive words, not a sentence. Each result carries the copy, media links, dates, days active, tags and existing transcript. Filters apply before ordering; offset pages are live, not snapshots. A search that reaches its time limit returns the matches found so far, in order, with coverage saying how far it searched; narrow it with a brand, format or language to complete it. Agentik price: $0.002 per Adspy credit, billed exactly from the credits Adspy settles for this call (1 per creative, +3 for analysis, 60 per X-Ray, 400 per new brand fetch); creatives this workspace retrieved in the last 30 days, X-Rays from the last 24 hours, reused fetches and missing items cost nothing. Reserves up to $0.002 per result (at most 50), the unused part refunded.

- Tool ID: `adspy/search-creatives`
- Name in the catalog: Adspy.sh: Search ad creatives (Meta and Google, including YouTube)
- Provider: [Adspy.sh](/providers/adspy.md)
- Capability: [Competitor ad search](/tools/ad-intelligence/creative-search.md)
- Price: usage based, the maximum is shown before a run
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

Billed at the cost the provider reports for the call, never above $0.1. Your agent sees the maximum before running.


```json
{
  "model": "reported",
  "costPath": "",
  "costTerms": [
    {
      "path": "billing.credits",
      "usd": 0.002
    }
  ],
  "requireCost": true,
  "maxUsdDefault": 0.04,
  "maxUsdCap": 0.1,
  "multipliers": [
    {
      "setUsd": 0
    },
    {
      "addUsdPer": {
        "field": "limit",
        "usd": 0.002,
        "max": 50,
        "default": 20
      }
    }
  ],
  "headroom": 1
}
```

Pricing source: [https://www.adspy.sh/agentik/catalog.json](https://www.adspy.sh/agentik/catalog.json). Adspy publishes the Agentik price grid 2026-10-05-v1 with its partner catalog; Adspy charges Agentik nothing..

Price verification date: 2026-10-08.

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 160,
      "description": "One exact phrase, matched case-insensitively inside a single field (at most 160 characters). Send one to three distinctive words."
    },
    "scope": {
      "default": "all",
      "type": "string",
      "enum": [
        "all",
        "adCopy",
        "contentTranscript",
        "visualAnalysis",
        "allKeywords",
        "hooks"
      ]
    },
    "brandKey": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256,
      "pattern": "^[^\\s\\x00-\\x1f]+$"
    },
    "brandKeys": {
      "maxItems": 100,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 256,
        "pattern": "^[^\\s\\x00-\\x1f]+$"
      }
    },
    "platform": {
      "type": "string",
      "enum": [
        "all",
        "meta",
        "google"
      ]
    },
    "format": {
      "type": "string",
      "enum": [
        "all",
        "image",
        "video",
        "carousel"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "all",
        "active",
        "inactive"
      ]
    },
    "sort": {
      "default": "newest",
      "type": "string",
      "enum": [
        "newest",
        "oldest",
        "longest"
      ]
    },
    "tags": {
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 160
      }
    },
    "language": {
      "type": "string",
      "maxLength": 30
    },
    "minDaysActive": {
      "type": "integer",
      "minimum": 0,
      "maximum": 36500
    },
    "offset": {
      "default": 0,
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "limit": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "additionalProperties": false
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "adspy/search-creatives",
  "input": {
    "query": "protein",
    "limit": 3
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

Attribution: Ad research by Adspy.sh (adspy.sh), from public ad libraries..

[Provider documentation](https://www.adspy.sh)

[REST inspection](https://api.agentik.cc/v1/tools/adspy/search-creatives) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/adspy/search-creatives) · [Agent index](/llms.txt)
