{
  "openapi": "3.0.1",
  "info": {
    "title": "Pinterest Trends Scraper & API - Keyword Research, Trending",
    "description": "Pinterest Trends scraper and API, no login: Pinterest keyword research with weekly interest, forecast and audience, the fastest-growing, top monthly, top yearly and seasonal searches by interest, age and gender, shopping trends and moments in 31 regions. Trend monitor with Slack alerts. MCP server.",
    "version": "0.1",
    "x-build-id": "rDTWq6Yw2Gxhrbbsy"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/akhil_rajesh~pinterest-trends-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-akhil_rajesh-pinterest-trends-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/akhil_rajesh~pinterest-trends-scraper/runs": {
      "post": {
        "operationId": "runs-sync-akhil_rajesh-pinterest-trends-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/akhil_rajesh~pinterest-trends-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-akhil_rajesh-pinterest-trends-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "pinterestRegions": {
            "title": "Regions",
            "type": "array",
            "description": "Pinterest Trends' regions, as trends.pinterest.com lists them: 26 in its menu, and India, Indonesia and Saudi Arabia for the search lists and keyword research. A country Pinterest groups with others (Australia, Ireland, Sweden) reads its group. Empty: the United States.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "US",
                "GB+IE",
                "CA",
                "IT+ES+PT+GR+MT",
                "IT",
                "ES",
                "DE+AT+CH",
                "DE",
                "FR",
                "SE+DK+FI+NO",
                "NL+BE+LU",
                "PL+RO+HU+SK+CZ",
                "MX+AR+CO+CL",
                "CO",
                "AR",
                "MX",
                "BR",
                "AU+NZ",
                "MY",
                "PH",
                "TH",
                "EG",
                "TR",
                "KR",
                "CR+DO+EC+GT+PE",
                "CY+CZ+GR+HU+MT+PL+RO+SK",
                "IN",
                "ID",
                "SA",
                "AE+SA+KW+QA+OM+BH+EG+IQ+DZ",
                "IL+NG+PK+ZA+TR+MA+IN"
              ],
              "enumTitles": [
                "United States",
                "Great Britain and Ireland",
                "Canada",
                "Southern Europe",
                "Italy",
                "Spain",
                "Germanic countries",
                "Germany",
                "France",
                "Nordic countries",
                "Benelux",
                "Eastern Europe",
                "Hispanic LatAm",
                "Colombia",
                "Argentina",
                "Mexico",
                "Brazil",
                "Australasia",
                "Malaysia",
                "Philippines",
                "Thailand",
                "Egypt",
                "Turkey",
                "Korea",
                "Latin America & Caribbean",
                "Eastern Europe & Mediterranean",
                "India",
                "Indonesia",
                "Saudi Arabia",
                "Middle East and North Africa",
                "Israel, Nigeria, Pakistan, South Africa, Turkey, Morocco and India"
              ]
            }
          },
          "pinterestLists": {
            "title": "Lists",
            "type": "array",
            "description": "Which of Pinterest Trends' lists to read. Empty: the home page's five (growing searches, trends in the spotlight, shopping trends, editors' picks, moments), or none when you look up keywords. The search lists (growing, top monthly, top yearly, seasonal) are those of Pinterest's Trends tool, up to 100 searches each, with search volume, weekly, monthly and yearly change, weekly interest and an image, and take the filters below. Trends in the spotlight and editors' picks come with their related searches, the interests they're popular in and example pins; shopping trends with clicks to shops by week (and Pinterest's forecast for the United States); moments with their phase and dates. Pinterest shows the spotlight, shopping trends and editors' picks for the United States, Canada, and Great Britain and Ireland only.",
            "items": {
              "type": "string",
              "enum": [
                "searchTrends",
                "topMonthly",
                "topYearly",
                "seasonal",
                "spotlight",
                "shopping",
                "editorsPicks",
                "moments"
              ],
              "enumTitles": [
                "Growing searches (fastest-growing)",
                "Top monthly searches",
                "Top yearly searches",
                "Seasonal searches",
                "Trends in the spotlight",
                "Shopping trends",
                "Editors' picks",
                "Moments"
              ]
            }
          },
          "resultsPerList": {
            "title": "Results per list",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Entries per list in each region, from the top. Empty: 20 per search list (up to 100: Pinterest's most), and every entry of the others (about 5 spotlight trends, 10 shopping trends, 6 editors' picks and 13 moments for the United States). With Only changes: changes per list, the rest come with the next run."
          },
          "trendsContaining": {
            "title": "Trends containing",
            "type": "array",
            "description": "Only entries whose name or related searches hold one of these words or phrases (whole words, any case): 'wedding', 'fall nails'. The search lists ask Pinterest for them too (its 'Include keywords'), so up to 100 matching searches come back per list.",
            "items": {
              "type": "string"
            }
          },
          "trendsNotContaining": {
            "title": "Leave out trends containing",
            "type": "array",
            "description": "Leave out entries whose name or related searches hold one of these words or phrases.",
            "items": {
              "type": "string"
            }
          },
          "interests": {
            "title": "Interests",
            "type": "array",
            "description": "Only searches popular in these interests. Empty: every interest.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "Fashion",
                "Men's Fashion",
                "Kids' Fashion",
                "Beauty",
                "Health",
                "Design",
                "Wedding",
                "Travel",
                "Gardening",
                "Finance",
                "Vehicles",
                "Architecture",
                "Food and Drinks",
                "Sport",
                "Parenting",
                "Education",
                "Animals",
                "DIY and Crafts",
                "Home Decor",
                "Event Planning",
                "Quotes",
                "Entertainment",
                "Electronics",
                "Art"
              ],
              "enumTitles": [
                "Fashion",
                "Men's Fashion",
                "Kids' Fashion",
                "Beauty",
                "Health",
                "Design",
                "Wedding",
                "Travel",
                "Gardening",
                "Finance",
                "Vehicles",
                "Architecture",
                "Food and Drinks",
                "Sport",
                "Parenting",
                "Education",
                "Animals",
                "DIY and Crafts",
                "Home Decor",
                "Event Planning",
                "Quotes",
                "Entertainment",
                "Electronics",
                "Art"
              ]
            }
          },
          "ageGroups": {
            "title": "Age groups",
            "type": "array",
            "description": "Only searches by people of these ages. Empty: everyone.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "18-24",
                "18-20",
                "21-24",
                "25-34",
                "35-44",
                "45-49",
                "50-54",
                "55-64",
                "65+"
              ],
              "enumTitles": [
                "18-24 (18-20 and 21-24)",
                "18-20",
                "21-24",
                "25-34",
                "35-44",
                "45-49",
                "50-54",
                "55-64",
                "65+"
              ]
            }
          },
          "genders": {
            "title": "Genders",
            "type": "array",
            "description": "Only searches by these genders. Empty: everyone.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "female",
                "male",
                "unspecified"
              ],
              "enumTitles": [
                "Female",
                "Male",
                "Unspecified"
              ]
            }
          },
          "endDate": {
            "title": "Lists as of",
            "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])",
            "type": "string",
            "description": "The search lists as they stood in the week to this day, up to a year back (Pinterest keeps a year). Empty: the latest lists."
          },
          "moments": {
            "title": "Moments",
            "type": "array",
            "description": "Seasonal searches for these moments. Each region has its own: the list is the United States' 13; Germany adds Oktoberfest, Karneval and Ramadan, Great Britain and Ireland Prom and Lunar New Year (type the name). A moment a region doesn't have is named and left out. Empty: Pinterest's own pick, the moments coming up.",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "thanksgiving",
                "valentines day",
                "independence day",
                "memorial day",
                "new years eve",
                "easter",
                "st patricks day",
                "fathers day",
                "hanukkah",
                "summer",
                "christmas",
                "mothers day",
                "halloween"
              ],
              "enumTitles": [
                "Thanksgiving",
                "Valentine's Day",
                "Independence Day",
                "Memorial Day",
                "New Year's Eve",
                "Easter",
                "St Patrick's Day",
                "Father's Day",
                "Hanukkah",
                "Summer",
                "Christmas",
                "Mother's Day",
                "Halloween"
              ]
            }
          },
          "sortBy": {
            "title": "Sort search lists by",
            "type": "string",
            "description": "The order of the search lists' entries: Pinterest's (the default), search volume, or weekly, monthly or yearly change, the largest first (breakouts, which Pinterest shows without a figure, before them). Sorting reads Pinterest's 100 and keeps the top of them.",
            "default": "pinterest"
          },
          "minWeeklyChangePercent": {
            "title": "Minimum weekly change",
            "minimum": -100,
            "type": "number",
            "description": "Only searches up at least this much week on week (a breakout passes)."
          },
          "minMonthlyChangePercent": {
            "title": "Minimum monthly change",
            "minimum": -100,
            "type": "number",
            "description": "Only searches up at least this much month on month."
          },
          "minYearlyChangePercent": {
            "title": "Minimum yearly change",
            "minimum": -100,
            "type": "number",
            "description": "Only searches up at least this much year on year."
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Keywords to research: weekly search interest (0-100) with its average, peak, growth and direction (rising, steady, falling, new, past peak), weekly, monthly and yearly change, Pinterest's 13-week forecast (United States), searchers by age and gender, and related searches. A keyword Pinterest has no searches for is a free row.",
            "items": {
              "type": "string"
            }
          },
          "keywordHistoryDays": {
            "title": "Keyword history",
            "enum": [
              "90",
              "180",
              "365",
              "730"
            ],
            "type": "string",
            "description": "How far back each keyword's weekly interest goes.",
            "default": "365"
          },
          "includeForecast": {
            "title": "Forecast",
            "type": "boolean",
            "description": "Pinterest's 13-week forecast of each keyword's interest, with its range (the United States only; Pinterest has none for some keywords).",
            "default": true
          },
          "compareKeywords": {
            "title": "Compare the keywords",
            "type": "boolean",
            "description": "Put up to 20 keywords on one 0-100 scale, as Pinterest's comparison does, instead of each on its own.",
            "default": false
          },
          "includeAudience": {
            "title": "Audience",
            "type": "boolean",
            "description": "Each keyword's searchers by age group and gender (shares in %).",
            "default": true
          },
          "includeRelatedTerms": {
            "title": "Related searches",
            "type": "boolean",
            "description": "Pinterest's related searches for each keyword (one more request a keyword).",
            "default": true
          },
          "trendsUrls": {
            "title": "Pinterest Trends links",
            "type": "array",
            "description": "Paste links from trends.pinterest.com: each adds its region, its keywords and its filters. Links are read, never opened.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Most charged rows a run returns, shared between the regions, lists and keywords. With Only changes: most changes; the rest come with the next run.",
            "default": 1000
          },
          "onlyChanges": {
            "title": "Only changes since the last run",
            "type": "boolean",
            "description": "Monitor: each run returns only what's new since the last run with the same settings: new entries on Pinterest's lists and moments taking off (moving to rising or peak). Keyword rows always come back, with a change in direction marked. The first run saves what's listed as the baseline and returns it as firstRun. Schedule it (every day, every week)."
          },
          "changeTypes": {
            "title": "Changes to report",
            "type": "array",
            "description": "With Only changes. Empty: all three.",
            "items": {
              "type": "string",
              "enum": [
                "newOnPinterest",
                "momentRising",
                "directionChanged"
              ],
              "enumTitles": [
                "New on a Pinterest list",
                "A Pinterest moment taking off",
                "A keyword's direction changed"
              ]
            }
          },
          "alertWebhookUrl": {
            "title": "Alert webhook URL",
            "type": "string",
            "description": "Post each run's changes to Slack, Discord or Microsoft Teams (their incoming-webhook URL), or to any HTTPS endpoint that takes JSON (Zapier, Make, n8n). Switches on Only changes. The first run posts a short 'alerts are set up' message."
          },
          "telegramBotToken": {
            "title": "Telegram bot token (alerts to Telegram)",
            "type": "string",
            "description": "Post each run's changes to a Telegram chat through your own bot: its token from @BotFather (123456789:AAH...). Add the bot to the chat (to a channel as an admin that can post). Switches on Only changes."
          },
          "telegramChatId": {
            "title": "Telegram chat id",
            "type": "string",
            "description": "Where the bot posts: a public channel or group (@mychannel), or a chat id (-1001234567890 for a private group or channel; your own id for a direct message, from @userinfobot)."
          },
          "alertChangeTypes": {
            "title": "Alert on",
            "type": "array",
            "description": "Which changes to post (up to 50 a run, the most important first; all are in the dataset). Empty: all three.",
            "items": {
              "type": "string",
              "enum": [
                "newOnPinterest",
                "momentRising",
                "directionChanged"
              ],
              "enumTitles": [
                "New on a Pinterest list",
                "A Pinterest moment taking off",
                "A keyword's direction changed"
              ]
            }
          },
          "historyName": {
            "title": "History name",
            "type": "string",
            "description": "Keep a separate history for this monitor (a-z, 0-9 and hyphens). Leave empty to share the default one: histories are kept per search and settings anyway."
          },
          "proxy": {
            "title": "Proxy",
            "type": "object",
            "description": "Not needed: Pinterest Trends answers Apify's servers directly. You can use your own proxies or Apify's datacenter proxies; residential proxies aren't available in this Actor."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}