Pinterest-advertenties
Search Pinterest ads with the same filters as the in-app Pinterest Ads dashboard. Use the canonical /api/v1/pinterest-ads path (the dashboard /api/pinterest-ads route is session-oriented).
GET
/api/v1/pinterest-adsSearch Pinterest ads. Engagement names are platform-specific: likes = saves, shares = repins.
Send
X-API-Key on every request.Query parameters
trefwoordstringoptionalFree-text search. Comma-separated terms are alternatives.
zoekwoordstringoptionalField scope for the keyword.
landenstringoptionalAll or comma-separated country codes.
sorterenstringoptionalsortdirectionstringoptional
Verzoek
curl -sS \
-H "X-API-Key: $WH_API_KEY" \
"{origin}/api/v1/pinterest-ads?keyword=skincare&searchkeyword=All&countries=US&sorting=datefound&sortdirection=desc"const res = await fetch(`${ORIGIN}/api/v1/pinterest-ads?keyword=skincare&searchkeyword=All&countries=US&sorting=datefound&sortdirection=desc`, {
method: 'GET',
headers: {
'X-API-Key': process.env.WH_API_KEY,
},
});
const data = await res.json();import os, requests
res = requests.get(
f"{ORIGIN}/api/v1/pinterest-ads?keyword=skincare&searchkeyword=All&countries=US&sorting=datefound&sortdirection=desc",
headers={"X-API-Key": os.environ["WH_API_KEY"]},
)
data = res.json()Response
{
"data": [
{
"id": "8471028374650192",
"page_name": "Glow Beauty Co.",
"ad_text": "The serum everyone's pinning",
"media_type": "image",
"likes": 12400,
"shares": 880,
"landing_url": "https://glowbeauty.com/serum"
}
],
"scroll": null,
"total": 240,
"nextscrapetime": 1710000000
}{
"success": false,
"error": "Unauthorized"
}{
"success": false,
"error": "WinningHunter Standard subscription required"
}Each data item is a normalized Pinterest ad record matching the in-app cards (creative metadata, landing page/product fields, engagement, and saved/hidden flags for the key owner).
All query parameters
The endpoint accepts the same query keys as the in-app Pinterest Ads dashboard.
| Parameter | Notes |
|---|---|
trefwoord |
Free-text search. Comma-separated terms are treated as alternatives. |
zoekwoord |
Field scope: Alle, landingspagina, storeurl, paginanaam, advertentietekst, or productnaam. |
pageid / pageidfromurl |
Restrict results to one Pinterest promoter/page id. |
product / productid |
Restrict results to one Shopify product id referenced by the ad. |
nischen |
Alle or comma-separated niche values. |
landen |
Alle or comma-separated country codes matched against Pinterest targeting countries. |
talen / taal |
Alle or comma-separated language codes. |
gender |
Audience gender value where available. |
website / technologieën |
Store technology filters, for example Shopify-related values from the dashboard. |
mediatype |
video's, video, images, or afbeelding. |
pagetype |
product, producten, collection, or collecties. |
minlikes, maxlikes |
Pinterest saves range. |
mincomments, maxcomments |
Comment count range. |
minshares, maxshares |
Pinterest repins range. |
mintraffic, maxtraffic |
Monthly store traffic range when store data is available. |
minprice, maxprice |
Product price range when Shopify product data is available. |
from, to |
Ad start/creation date range. |
fromlastseen, tolastseen |
Last-seen date range. |
product_from, product_to |
Product or collection creation date range. |
mindays, maxdays |
Days-running range based on the ad start date. |
sorteren / sorteren |
gevonden op, opmerkingen, vindt leuk, shares, reactions, laatst gezien, or daysrunning. |
sortdirection |
asc of beschrijving; defaults to beschrijving. |
adscorefilter / adscore |
winning, schaalbaarheid, or testing; filters after scoring and returns up to 20 matches. |
Notes
- Pinterest uses platform-specific engagement names.
vindt leukmaps to saves, andsharesmaps to repins. - The programmatic endpoint does not use dashboard trial behavior and does not increment free Pinterest dashboard credits. It only uses monthly API credits.
- For the full API overview, see WinningHunter API Documentation.