TikTok hub

TikTok Ads Library Search API

Keyword or advertiser-name lookups over REST — structured ad rows in the same envelope as the rest of the TikTok tag.

GET /v1/tiktok/ad-library/ads/search

1 credit Failed requests are free

About this endpoint

GET /v1/tiktok/ad-library/ads/search returns matching ads in the shared Social Fetch envelope under data.ads. Pass exactly one of query (keyword) or advertiserName. Advertiser searches also return data.advertiserMatches; pass a match's businessId as advertiserBusinessId, with its name as advertiserName, to search only that advertiser. When data.page.hasMore is true, pass data.page.nextCursor as cursor on the next call. Bill from meta.creditsCharged.

This route is search. For one known ad id or Ads Library / Top Ads detail URL, use GET /v1/tiktok/ad-library/ads. Organic keyword video search is a different path: GET /v1/tiktok/search. Same API key for all of them.

TikTok Ads Library Search API FAQ

What does the TikTok Ads Library Search API return?

A page of matching ads under data.ads, the evaluated keyword under data.query, optional data.advertiserName when you searched by advertiser, data.resolvedAdvertiserName and data.advertiserMatches (the name and businessId of each matching advertiser) for advertiser searches, data.source when the listing source is reported, and pagination under data.page (hasMore, nextCursor, totalResultsEstimate). Each ad includes its format (video or images), every video, imageUrls for photo and carousel ads, its category, advertiserBusinessId and TikTok's review status under moderation. Each response uses the shared Social Fetch envelope with meta.requestId and meta.creditsCharged.

How do I call TikTok Ads Library ads search?

Send GET /v1/tiktok/ad-library/ads/search with x-api-key. Pass query for a keyword search or advertiserName for an advertiser search, not both. Paginate with cursor when data.page.hasMore is true. Full examples are in the API docs.

How much does TikTok Ad Library ads search cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth. Each paginated page is a separate billed request.

Is this the same as getting one TikTok Ad Library ad by id?

No. GET /v1/tiktok/ad-library/ads/search finds ads by keyword or advertiser name. GET /v1/tiktok/ad-library/ads returns a single ad when you already have an ad id or a public Ads Library / Top Ads detail URL.

Should I pass query or advertiserName?

Use query for a keyword search across the public Ads Library. Use advertiserName when you want ads from one advertiser. The route requires exactly one of those two fields. To pin the exact advertiser, also pass advertiserBusinessId from data.advertiserMatches or an ad's advertiserBusinessId; it is only accepted together with advertiserName.

How does pagination work on TikTok Ad Library search?

When data.page.hasMore is true, pass data.page.nextCursor as the cursor query param on the next request. Keep the same query, advertiserName and advertiserBusinessId across pages. Do not treat totalResultsEstimate as an exact count or as the only end-of-results signal.

Do I need a TikTok Ads Manager account to search Ad Library ads?

No. You authenticate to Social Fetch with an API key. The route reads the public TikTok Ads Library; it does not act on behalf of an ads account you manage.