{
  "openapi": "3.0.1",
  "info": {
    "title": "Brazil Resale Scraper: Enjoei Roupas e Sapatos, Preços e Vendas",
    "description": "Scrape Enjoei roupas, sapatos e bolsas usados: filter by brand, size, price and discount, add seller stats, likes and full details, and monitor price drops, new listings and sold items. No login. Export to Excel, CSV or Google Sheets. Pay per listing, empty runs cost nothing.",
    "version": "0.2",
    "x-build-id": "XNYCnuOmP3ZrH7AOw"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/getascraper~enjoei-marketplace-intelligence-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-getascraper-enjoei-marketplace-intelligence-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/getascraper~enjoei-marketplace-intelligence-scraper/runs": {
      "post": {
        "operationId": "runs-sync-getascraper-enjoei-marketplace-intelligence-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/getascraper~enjoei-marketplace-intelligence-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-getascraper-enjoei-marketplace-intelligence-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": {
          "startUrls": {
            "title": "Enjoei Links",
            "type": "array",
            "description": "Paste Enjoei links: a search or category page with filters already applied, a seller page (enjoei.com.br/@name) or a single product page. Filters in a pasted search link are honored. Leave empty to use the search terms and sellers below.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "searchQueries": {
            "title": "Search Terms",
            "type": "array",
            "description": "Words to search for on Enjoei, one per row, for example a brand, a garment or a model. Clear the prefilled word when you only want the links or sellers.",
            "default": [
              "vestido"
            ],
            "items": {
              "type": "string"
            }
          },
          "sellers": {
            "title": "Seller Pages",
            "type": "array",
            "description": "Seller handles or links, such as @maria-1a2b3c or https://www.enjoei.com.br/@maria-1a2b3c. Every available listing of the seller is read, and the filters below apply to them.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "department": {
            "title": "Department",
            "enum": [
              "any",
              "mocas",
              "rapazes",
              "kids",
              "casa",
              "info-eletro",
              "etc-tal"
            ],
            "type": "string",
            "description": "Top-level Enjoei section to search in.",
            "default": "any"
          },
          "subCategories": {
            "title": "Categories",
            "type": "array",
            "description": "Category codes as used in Enjoei links, for example mocas-roupas-vestidos or rapazes-calcados-tenis. Several codes are combined with OR.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "brands": {
            "title": "Brands",
            "type": "array",
            "description": "Brand codes as used in Enjoei links, for example nike, zara, farm or c-e-a. Several brands are combined with OR.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sizes": {
            "title": "Sizes",
            "type": "array",
            "description": "Size codes covering clothes, trousers and shoes, for example p, m, g, 38, 40 or unico. Several sizes are combined with OR.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "condition": {
            "title": "Condition",
            "enum": [
              "any",
              "used",
              "new"
            ],
            "type": "string",
            "description": "Show only used items, only new items, or both.",
            "default": "any"
          },
          "minPrice": {
            "title": "Minimum Price (BRL)",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Lowest price in Brazilian reais. Leave empty for no lower limit."
          },
          "maxPrice": {
            "title": "Maximum Price (BRL)",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Highest price in Brazilian reais. Leave empty for no upper limit."
          },
          "minDiscountPercent": {
            "title": "Minimum Discount",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only listings marked down by at least this percentage from their original price. Use it to find bargains."
          },
          "maxDiscountPercent": {
            "title": "Maximum Discount",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only listings marked down by at most this percentage. Leave empty for no limit."
          },
          "publishedWithinDays": {
            "title": "Published Within",
            "minimum": 0,
            "maximum": 365,
            "type": "integer",
            "description": "Only listings published or republished in the last N days. Use 1 for new arrivals of the day. Leave empty for any age."
          },
          "sortBy": {
            "title": "Sort By",
            "enum": [
              "relevance",
              "lowest_price",
              "highest_price",
              "biggest_discount"
            ],
            "type": "string",
            "description": "Order of the results. Relevance is Enjoei's default ranking.",
            "default": "relevance"
          },
          "sellerKind": {
            "title": "Seller Type",
            "enum": [
              "any",
              "pro",
              "celebrity"
            ],
            "type": "string",
            "description": "Restrict to official Enjoei Pro stores or celebrity closets. The default shows every seller.",
            "default": "any"
          },
          "sellerLevel": {
            "title": "Seller Reputation",
            "enum": [
              "any",
              "new",
              "bad",
              "medium",
              "good",
              "super"
            ],
            "type": "string",
            "description": "Restrict to sellers at one Enjoei reputation level, for example only new sellers or only top (super) sellers.",
            "default": "any"
          },
          "sellerStates": {
            "title": "Seller States",
            "type": "array",
            "description": "Keep only listings whose seller is in these Brazilian states. Needs one extra lookup per seller, so runs are a little slower.",
            "items": {
              "type": "string",
              "enum": [
                "AC",
                "AL",
                "AP",
                "AM",
                "BA",
                "CE",
                "DF",
                "ES",
                "GO",
                "MA",
                "MT",
                "MS",
                "MG",
                "PA",
                "PB",
                "PR",
                "PE",
                "PI",
                "RJ",
                "RN",
                "RS",
                "RO",
                "RR",
                "SC",
                "SP",
                "SE",
                "TO"
              ],
              "enumTitles": [
                "AC - Acre",
                "AL - Alagoas",
                "AP - Amapá",
                "AM - Amazonas",
                "BA - Bahia",
                "CE - Ceará",
                "DF - Distrito Federal",
                "ES - Espírito Santo",
                "GO - Goiás",
                "MA - Maranhão",
                "MT - Mato Grosso",
                "MS - Mato Grosso do Sul",
                "MG - Minas Gerais",
                "PA - Pará",
                "PB - Paraíba",
                "PR - Paraná",
                "PE - Pernambuco",
                "PI - Piauí",
                "RJ - Rio de Janeiro",
                "RN - Rio Grande do Norte",
                "RS - Rio Grande do Sul",
                "RO - Rondônia",
                "RR - Roraima",
                "SC - Santa Catarina",
                "SP - São Paulo",
                "SE - Sergipe",
                "TO - Tocantins"
              ]
            },
            "default": []
          },
          "includeDetails": {
            "title": "Include Full Details",
            "type": "boolean",
            "description": "Adds the full description, every photo, category path, installments, status, quantity, weight and comment count to each listing. Slower, because each listing needs extra lookups.",
            "default": false
          },
          "includeSellerStats": {
            "title": "Include Seller Stats",
            "type": "boolean",
            "description": "Adds the seller's city and state, join date, active and sold listing counts, followers, rating and average shipping time to each listing.",
            "default": false
          },
          "summaryRows": {
            "title": "Seller and Brand Summary Rows",
            "enum": [
              "none",
              "seller",
              "brand",
              "both"
            ],
            "type": "string",
            "description": "Also output one summary row per seller or brand, built only from the listings collected in this run: listing count, average, lowest and highest price, and average discount. Summary rows are free.",
            "default": "none"
          },
          "maxItems": {
            "title": "Maximum Listings",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Total number of listings to collect across all sources. Free Apify plans are limited to 25 per run.",
            "default": 10
          },
          "maxItemsPerSeller": {
            "title": "Maximum Listings Per Seller",
            "minimum": 0,
            "maximum": 2000,
            "type": "integer",
            "description": "Keep at most this many listings from any single seller, for a more varied result. Use 0 for no limit.",
            "default": 0
          },
          "runMode": {
            "title": "Run Mode",
            "enum": [
              "snapshot",
              "monitor"
            ],
            "type": "string",
            "description": "Snapshot returns the matching listings. Monitor remembers earlier runs under the monitor name and returns only what changed: new listings, price drops, price rises, updates, and listings confirmed sold or removed.",
            "default": "snapshot"
          },
          "monitorName": {
            "title": "Monitor Name",
            "type": "string",
            "description": "Name of this watch list. Runs with the same name share their memory, so use one name per search or seller set. Only used in monitor mode.",
            "default": "default"
          },
          "emitUnchanged": {
            "title": "Include Unchanged Listings",
            "type": "boolean",
            "description": "In monitor mode, also output listings that did not change since the last run. Off by default so you only pay for changes.",
            "default": false
          },
          "checkRemoved": {
            "title": "Check Sold and Removed",
            "type": "boolean",
            "description": "In monitor mode, look up listings seen before but not found now, and report them as SOLD or REMOVED only when Enjoei confirms it. Up to 100 lookups per run.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "How requests reach Enjoei. The default works for most runs; if Enjoei blocks the first route, the Actor retries once through Brazilian residential proxies when your plan allows it.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}