{
  "description": "Collect public Pinterest Pins, profiles, boards, board Pins, search results, and comments with optional detail enrichment. All fields are source-backed and optional.",
  "properties": {
    "boardUrls": {
      "default": [],
      "description": "Public board links or username/board-name paths.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Board URLs",
      "type": "array"
    },
    "commerceOnly": {
      "default": false,
      "description": "Keep only Pins with source-backed product or shopping metadata.",
      "prefill": false,
      "title": "Shoppable Pins only",
      "type": "boolean"
    },
    "enrichDetails": {
      "default": false,
      "description": "When enabled, each pin from search/profile/board results will be enriched with accurate stats (reaction count, follower count, etc.) by fetching its detail page. Slower but more complete data.",
      "prefill": false,
      "title": "Enrich Details",
      "type": "boolean"
    },
    "excludeAds": {
      "default": false,
      "description": "Exclude Pins Pinterest marks as promoted or sponsored.",
      "prefill": false,
      "title": "Exclude promoted Pins",
      "type": "boolean"
    },
    "imageOnly": {
      "default": false,
      "description": "Exclude Pins that Pinterest identifies as video.",
      "prefill": false,
      "title": "Images only",
      "type": "boolean"
    },
    "includeCommentReplies": {
      "default": false,
      "description": "When comments are collected, also fetch depth-one replies for comments that report replies. Adds one request per parent comment.",
      "prefill": false,
      "title": "Include comment replies",
      "type": "boolean"
    },
    "includeComments": {
      "default": false,
      "description": "When enabled, add one real comment/activity row for each collected Pin. Pinterest's public cookieless comment path is used automatically.",
      "prefill": false,
      "title": "Include Pin comments",
      "type": "boolean"
    },
    "keywords": {
      "default": [],
      "description": "One or more words or phrases for search modes.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Search words",
      "type": "array"
    },
    "maxCommentReplies": {
      "default": 10,
      "description": "Upper bound on replies fetched for each top-level comment.",
      "editor": "number",
      "maximum": 200,
      "minimum": 1,
      "prefill": 10,
      "title": "Max replies per comment",
      "type": "integer"
    },
    "maxComments": {
      "default": 10,
      "description": "Maximum public comment/activity rows to add per Pin when comments are enabled.",
      "maximum": 20000,
      "minimum": 1,
      "prefill": 10,
      "title": "Maximum comments per Pin",
      "type": "integer"
    },
    "maxItems": {
      "default": 50,
      "description": "Maximum number of Pins/source records to collect. Comment rows are additional and are capped per Pin by maxComments. Set to 0 for unlimited.",
      "maximum": 20000,
      "minimum": 0,
      "title": "Max Items",
      "type": "integer"
    },
    "maxPages": {
      "default": 0,
      "description": "Maximum pagination pages per search, profile, or board. 0 means continue until Pinterest has no next page.",
      "maximum": 2000,
      "minimum": 0,
      "prefill": 0,
      "title": "Max pages",
      "type": "integer"
    },
    "minCreatorFollowers": {
      "description": "Keep Pins only when Pinterest supplies a creator follower count at or above this value.",
      "maximum": 1000000000,
      "minimum": 0,
      "title": "Minimum creator followers",
      "type": "integer"
    },
    "minSaves": {
      "description": "Keep Pins only when Pinterest supplies at least this many saves.",
      "maximum": 10000000,
      "minimum": 0,
      "title": "Minimum saves",
      "type": "integer"
    },
    "mode": {
      "default": "auto",
      "description": "Choose a collection type. Auto-detect accepts mixed public Pinterest links.",
      "editor": "select",
      "enum": [
        "auto",
        "pinDetail",
        "comments",
        "searchPins",
        "searchVideos",
        "searchUsers",
        "searchBoards",
        "userProfile",
        "userPins",
        "userBoards",
        "boardDetail",
        "boardPins",
        "ideas",
        "search"
      ],
      "enumTitles": [
        "Auto-detect links",
        "Pin details",
        "Comments for Pins",
        "Search Pins",
        "Search video Pins",
        "Search people",
        "Search boards",
        "Profile details",
        "Pins created by a person",
        "Boards owned by a person",
        "Board details",
        "Pins inside a board",
        "Ideas feed (list only)",
        "Search Pins (legacy)"
      ],
      "prefill": "auto",
      "title": "What to collect",
      "type": "string"
    },
    "pinUrls": {
      "default": [],
      "description": "Public Pin links or numeric Pin IDs.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Pin URLs or IDs",
      "type": "array"
    },
    "requireOutboundLink": {
      "default": false,
      "description": "Keep only Pins with a public destination link supplied by Pinterest.",
      "prefill": false,
      "title": "Require destination link",
      "type": "boolean"
    },
    "resolveNumericIds": {
      "default": true,
      "description": "Creator feeds sometimes return encrypted Pin IDs that Pinterest will not open. When enabled, the actor follows the creator's public RSS feed (or the numeric user-pins feed) to recover openable numeric Pin IDs. Disable it to keep only the IDs the feed itself returns.",
      "prefill": true,
      "title": "Resolve numeric Pin IDs from creator RSS",
      "type": "boolean"
    },
    "search": {
      "description": "Keyword to search on Pinterest. Results will be pins matching this query.",
      "editor": "textfield",
      "prefill": "cats",
      "title": "Search Query",
      "type": "string"
    },
    "startUrls": {
      "description": "List of Pinterest URLs to scrape. Supports pin URLs, user profile URLs, board URLs, and search URLs.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Pinterest URLs",
      "type": "array"
    },
    "usernames": {
      "default": [],
      "description": "Usernames, @usernames, or public profile links.",
      "editor": "stringList",
      "items": {
        "type": "string"
      },
      "prefill": [],
      "title": "Pinterest usernames",
      "type": "array"
    },
    "verifiedOnly": {
      "default": false,
      "description": "Keep only rows explicitly marked verified by Pinterest.",
      "prefill": false,
      "title": "Verified accounts only",
      "type": "boolean"
    }
  },
  "required": [],
  "schemaVersion": 1,
  "title": "Pinterest Data Extractor Input",
  "type": "object"
}
