Skip to main content
GET
/
v1
/
tiktok
/
ads
/
search
Search the TikTok Ad Library
curl --request GET \
  --url https://scrapebadger.com/v1/tiktok/ads/search \
  --header 'x-api-key: <api-key>'
{
  "ads": [
    {
      "id": "172000000000000",
      "name": "Acme GmbH",
      "audit_status": "approved",
      "type": "video",
      "first_shown_date": 1699999999000,
      "last_shown_date": 1700999999000,
      "videos": [
        {
          "video_url": "https://library.tiktok.com/ad-video.mp4",
          "cover_img": "https://library.tiktok.com/ad-cover.jpeg"
        }
      ]
    }
  ],
  "pagination": {
    "has_more": true,
    "total": 240,
    "search_id": "20231114...",
    "offset": 0
  },
  "region": "DE"
}
The TikTok Ad Library is EU-only (EU Digital Services Act ad transparency). Use an EU region such as DE, FR, IE, or NL. Pass advertiser_id to scope to a single advertiser, or query for a keyword search.
Each request costs 5 credits. Failed requests are not charged.

Authorizations

x-api-key
string
header
required

Query Parameters

query
string
default:""

Keyword to search ads by. Ignored when advertiser_id is set.

advertiser_id
string
default:""

Advertiser business id(s) to scope the search to a specific advertiser.

region
string
default:DE

EU region code — the Ad Library is EU-only (e.g. DE, FR, IE, NL).

days
integer
default:30

Look-back window in days for ads shown.

Required range: 1 <= x <= 365
sort
string
default:last_shown_date,desc

Sort order, ',' (e.g. last_shown_date,desc).

offset
integer
default:0

Result offset for pagination.

Required range: x >= 0
search_id
string
default:""

Opaque search id from a prior page's pagination.search_id, to chain pages.

count
integer
default:20

Maximum number of items to return (1-50).

Required range: 1 <= x <= 50

Response

200 - application/json

Ad Library results

pagination
object
required

Pagination metadata for Ad Library search.

region
string
required
ads
object[]