Search the Meta ad library by keyword
meta-ad-library.meta-ads.library.searchSearch publicly running Facebook and Instagram ads by keyword
- Price
- free제공업체 원가
- Success rate
- —성공률 데이터가 아직 없습니다성공률 데이터가 아직 없습니다
- Latency p50
- ——
- Last verified
- —Not verified yet
GEThttps://toolswitch.dev/v1/tools/meta-ad-library.meta-ads.library.searchPreview- Uses platform quota
- Synchronous response
- Reads public data
파라미터
give it either search_terms or search_page_ids — a call with neither returns an error, not the whole library. ad_snapshot_url is the human-viewable render of the creative and needs the access token appended to load. Results are ads Meta has KEPT: commercial ads leave the library some time after they stop running, so this is a live-ish view, not an archive
| 파라미터 | 유형 | 필수 | 설명 | 예시 |
|---|---|---|---|---|
| 쿼리 파라미터 | ||||
after | 문자열 | 선택 | paging.cursors.after from the previous response | |
limit | 정수 | 선택 | page size; 25 by default, a few hundred is the practical ceiling before Meta starts timing out | 25 |
fields | 문자열 | 필수 | comma-separated; nothing but id comes back by default | id,page_id,page_name,ad_creative_bodies,ad_creative_link_titles,ad_creative_link_captions,ad_snapshot_url,ad_delivery_start_time,ad_delivery_stop_time,publisher_platforms,languages,estimated_audience_size |
ad_type | 문자열 | 선택 | ALL (default) | POLITICAL_AND_ISSUE_ADS | HOUSING_ADS | EMPLOYMENT_ADS | FINANCIAL_PRODUCTS_AND_SERVICES_ADS | ALL |
languages | 배열 | 선택 | ISO 639-1 codes (plus CMN, YUE) | ["en"] |
media_type | 문자열 | 선택 | ALL | IMAGE | MEME | VIDEO | NONE | VIDEO |
search_type | 문자열 | 선택 | KEYWORD_UNORDERED (default, all words in any order) | KEYWORD_EXACT_PHRASE | KEYWORD_UNORDERED |
search_terms | 문자열 | 선택 | max 100 characters; matched against the ad's text. Required in practice unless you filter by search_page_ids instead | project management software |
ad_active_status | 문자열 | 선택 | ACTIVE (default) | INACTIVE | ALL — ALL is what you want for creative research, since a competitor's best-performing ad may have finished | ALL |
publisher_platforms | 배열 | 선택 | FACEBOOK | INSTAGRAM | AUDIENCE_NETWORK | MESSENGER | WHATSAPP | OCULUS | THREADS | ["INSTAGRAM"] |
ad_delivery_date_max | 문자열 | 선택 | YYYY-MM-DD | |
ad_delivery_date_min | 문자열 | 선택 | YYYY-MM-DD; ads that were delivering on or after this date | 2026-06-01 |
ad_reached_countries | 배열 | 필수 | REQUIRED on every ads_archive call. JSON array of ISO country codes, URL-encoded — ["US"] — or ALL | ["US"] |
estimated_audience_size_min | 정수 | 선택 | one of the fixed buckets 100 | 1000 | 5000 | 10000 | 50000 | 100000 | 500000 | 1000000 | |
- 쿼리 파라미터
after문자열선택paging.cursors.after from the previous response
limit정수선택page size; 25 by default, a few hundred is the practical ceiling before Meta starts timing out
예시:
25fields문자열필수comma-separated; nothing but id comes back by default
예시:
id,page_id,page_name,ad_creative_bodies,ad_creative_link_titles,ad_creative_link_captions,ad_snapshot_url,ad_delivery_start_time,ad_delivery_stop_time,publisher_platforms,languages,estimated_audience_sizead_type문자열선택ALL (default) | POLITICAL_AND_ISSUE_ADS | HOUSING_ADS | EMPLOYMENT_ADS | FINANCIAL_PRODUCTS_AND_SERVICES_ADS
예시:
ALLlanguages배열선택ISO 639-1 codes (plus CMN, YUE)
예시:
["en"]media_type문자열선택ALL | IMAGE | MEME | VIDEO | NONE
예시:
VIDEOsearch_type문자열선택KEYWORD_UNORDERED (default, all words in any order) | KEYWORD_EXACT_PHRASE
예시:
KEYWORD_UNORDEREDsearch_terms문자열선택max 100 characters; matched against the ad's text. Required in practice unless you filter by search_page_ids instead
예시:
project management softwaread_active_status문자열선택ACTIVE (default) | INACTIVE | ALL — ALL is what you want for creative research, since a competitor's best-performing ad may have finished
예시:
ALLpublisher_platforms배열선택FACEBOOK | INSTAGRAM | AUDIENCE_NETWORK | MESSENGER | WHATSAPP | OCULUS | THREADS
예시:
["INSTAGRAM"]ad_delivery_date_max문자열선택YYYY-MM-DD
ad_delivery_date_min문자열선택YYYY-MM-DD; ads that were delivering on or after this date
예시:
2026-06-01ad_reached_countries배열필수REQUIRED on every ads_archive call. JSON array of ISO country codes, URL-encoded — ["US"] — or ALL
예시:
["US"]estimated_audience_size_min정수선택one of the fixed buckets 100 | 1000 | 5000 | 10000 | 50000 | 100000 | 500000 | 1000000
코드 예제
$TOOLSWITCH_KEY를 콘솔에서 생성한 키로 바꾸세요.
curl -X GET 'https://toolswitch.dev/v1/tools/meta-ad-library.meta-ads.library.search' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY"import os
import requests
response = requests.request(
"GET",
"https://toolswitch.dev/v1/tools/meta-ad-library.meta-ads.library.search",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/meta-ad-library.meta-ads.library.search", {
method: "GET",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
},
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());게이트웨이 API는 미리보기 버전이며 URL과 인증 방식이 변경될 수 있습니다. 예제 매개변수는 샘플 데이터입니다. 호출 요금은 free이며 서비스 수수료가 포함되어 있습니다.