{
  "openapi": "3.0.1",
  "info": {
    "title": "Party City Scraper",
    "description": "Scrape party supplies, balloons, costumes, and seasonal decor from partycity.com. Browse by category, search by keyword, or look up specific products. Get price, sale price, brand, and variant options like color/size/theme. No login, no proxy required.",
    "version": "1.0",
    "x-build-id": "ULjT8tGZ3INqEbZQy"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~party-city-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-party-city-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/crawlerbros~party-city-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-party-city-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/crawlerbros~party-city-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-party-city-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": {
          "mode": {
            "title": "Mode",
            "enum": [
              "byCategory",
              "search",
              "byHandles",
              "listCollections"
            ],
            "type": "string",
            "description": "`byCategory` browses a category with full pagination. `search` runs Party City's in-store search (top 10 most relevant matches). `byHandles` looks up specific products by handle or URL. `listCollections` returns every live collection/category on the storefront (title, description, image, product count) for discovery.",
            "default": "byCategory"
          },
          "category": {
            "title": "Category (mode = byCategory)",
            "enum": [
              "birthday",
              "kids-birthday",
              "preschooler-birthday",
              "milestone-birthday",
              "1st-birthday-party-supplies-decorations",
              "sweet-16-party-supplies-decorations",
              "happy-birthday-party-supplies",
              "birthday-party-kits",
              "balloons",
              "balloon-bouquets-for-birthdays-celebrations",
              "birthday-balloons-for-every-celebration",
              "barbie-party-supplies-decorations",
              "batman-party-supplies-decorations",
              "dc-comic-party-supplies",
              "disney-princess-party-supplies",
              "dragon-party-supplies-decorations",
              "frozen-party-supplies",
              "gamer-party-supplies-video-game-birthday-decorations",
              "harry-potter-party-supplies-decorations",
              "marvel-party-supplies",
              "spider-man-party-supplies-decorations",
              "star-wars-party-supplies-decorations",
              "superman-party-supplies-decorations",
              "toy-story-party-supplies",
              "bluey-party-supplies-decorations",
              "construction-party-supplies-decorations",
              "dinosaur-theme-party",
              "hot-wheels-party-supplies-decorations",
              "mickey-mouse-party-supplies-decorations",
              "minnie-mouse-birthday-party-supplies-decorations",
              "stitch-party-supplies-decorations",
              "winnie-the-pooh-party-supplies",
              "party-supplies",
              "tableware",
              "party-cups-for-every-celebration",
              "party-napkins-disposable-napkins",
              "party-plates-for-every-celebration",
              "party-table-covers-tablecloths",
              "decorations",
              "party-favors",
              "gifts-collectables",
              "special-occasion",
              "graduation",
              "gender-reveal",
              "baby-shower",
              "bachelorette",
              "wedding-bridal-shower",
              "wedding-anniversary",
              "retirement",
              "100-days-of-school",
              "same-day-delivery-party-supplies",
              "halloween-costumes",
              "kid-costumes",
              "baby-costumes",
              "adult-halloween-costumes",
              "dog-pet-costumes",
              "costume-themes",
              "costume-accessories"
            ],
            "type": "string",
            "description": "A Party City category to browse. Covers birthday themes, balloons, tableware, decorations, costumes, and special occasions.",
            "default": "birthday"
          },
          "categoryHandle": {
            "title": "Custom category handle (optional override)",
            "type": "string",
            "description": "Advanced: any Party City collection handle not in the dropdown above (the last segment of `partycity.com/collections/<handle>`). Overrides `category` when set."
          },
          "searchQuery": {
            "title": "Search query (mode = search)",
            "type": "string",
            "description": "Free-text keyword search, e.g. `birthday candle`, `pinata`, `balloon arch`. Returns Party City's top 10 most relevant matches (a platform limit on predictive search)."
          },
          "productHandles": {
            "title": "Product handles or URLs (mode = byHandles)",
            "type": "array",
            "description": "Exact product handles (e.g. `colorful-collage-paper-plate-8ct`) or full product URLs. Looked up individually.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sortBy": {
            "title": "Sort by (mode = byCategory)",
            "enum": [
              "best-selling",
              "manual",
              "price-ascending",
              "price-descending",
              "title-ascending",
              "title-descending",
              "created-ascending",
              "created-descending"
            ],
            "type": "string",
            "description": "Sort order applied to category browse results.",
            "default": "best-selling"
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Hard cap on the number of products (or collections, for mode=listCollections) returned (1-10000).",
            "default": 20
          },
          "imageQuality": {
            "title": "Image URL quality",
            "enum": [
              "small",
              "medium",
              "large",
              "grande",
              "1024x1024",
              "2048x2048",
              "master"
            ],
            "type": "string",
            "description": "Shopify CDN serves multiple image sizes. `master` returns the original.",
            "default": "master"
          },
          "minPrice": {
            "title": "Min price (USD)",
            "minimum": 0,
            "maximum": 100000,
            "type": "number",
            "description": "Drop products whose lowest price is below this threshold."
          },
          "maxPrice": {
            "title": "Max price (USD)",
            "minimum": 0,
            "maximum": 100000,
            "type": "number",
            "description": "Drop products whose lowest price is above this threshold."
          },
          "onSaleOnly": {
            "title": "On-sale products only",
            "type": "boolean",
            "description": "Only emit products with an active discount (compare-at price higher than the current price).",
            "default": false
          },
          "minDiscountPercent": {
            "title": "Min discount %",
            "minimum": 0,
            "maximum": 99,
            "type": "integer",
            "description": "Only emit products discounted by at least this percentage."
          },
          "brandContains": {
            "title": "Brand contains",
            "type": "string",
            "description": "Only emit products whose brand name contains this substring (case-insensitive)."
          },
          "productTypeContains": {
            "title": "Product type contains",
            "type": "string",
            "description": "Only emit products whose Shopify product type contains this substring."
          },
          "productTypeEquals": {
            "title": "Product type (exact match)",
            "enum": [
              "",
              "Animated Props",
              "Apparel",
              "Arts & Crafts",
              "Awards, Medals, Trophies",
              "Backdrops & Scene Setters",
              "Baking Supplies",
              "Balloons",
              "Banners & Signs",
              "Birthday Candles",
              "Bowls",
              "Cake Toppers & Picks",
              "Chocolates",
              "Cleaning & Disposal Supplies",
              "Confetti & Streamers",
              "Coolers & Beverage Tubs",
              "Costume Accessories",
              "Costumes",
              "Cutlery",
              "Decorating Kits",
              "Decorations",
              "Drinkware",
              "Favor Bags & Containers",
              "Favor Kits",
              "Favors",
              "Fog & Bubble Machines",
              "Games",
              "Gift Bags",
              "Gift Boxes",
              "Gift Tags & Labels",
              "Gift Wrap & Tissue Paper",
              "Gloves",
              "Glow Sticks & Accessories",
              "Hanging Decorations",
              "Hats",
              "Headband",
              "Home Decor",
              "Inflatable Decorations",
              "Invitations, Announcements, & Greeting Cards",
              "Keepsakes & Gifts",
              "Lights",
              "Makeup & Face Paint",
              "Napkins",
              "Outdoor Games",
              "Party Kits",
              "Party Supplies",
              "Pet Toys & Accessories",
              "Photo Booth Props",
              "Piñatas",
              "Plates",
              "Props & Standees",
              "Serveware",
              "Serving Trays & Bowls",
              "Skirt",
              "Snacks & Treats",
              "Straws",
              "T-Shirt",
              "Tablecovers",
              "Tabletop Decorations",
              "Toys",
              "Wigs",
              "Yard Decorations & Signs"
            ],
            "type": "string",
            "description": "Only emit products whose Shopify product type exactly matches this value. Covers every product type observed across Party City's full catalog. Leave as \"Any\" to disable, or use `productTypeContains` for a substring match instead.",
            "default": ""
          },
          "titleContains": {
            "title": "Title contains",
            "type": "string",
            "description": "Only emit products whose title contains this substring (case-insensitive)."
          },
          "tagAnyOf": {
            "title": "Tag allowlist (any of)",
            "type": "array",
            "description": "Only emit products whose tags contain at least one of these (case-insensitive substring match).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "tagNoneOf": {
            "title": "Tag blocklist",
            "type": "array",
            "description": "Drop products whose tags contain any of these substrings.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "skuContains": {
            "title": "SKU contains",
            "type": "string",
            "description": "Only emit products with a SKU containing this substring."
          },
          "includeUnavailable": {
            "title": "Include out-of-stock products",
            "type": "boolean",
            "description": "When false (default), drop products that are entirely out of stock.",
            "default": false
          },
          "useApifyProxy": {
            "title": "Use Apify proxy",
            "type": "boolean",
            "description": "Route requests through Apify proxy from the start. Party City usually works from datacenter IPs without proxy — the actor automatically falls back to Apify proxy on the first failure regardless of this setting.",
            "default": false
          },
          "requestDelaySecs": {
            "title": "Delay between page fetches (seconds)",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Pause between successive page fetches. Lower = faster, higher = more polite.",
            "default": 1
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}