{
  "openapi": "3.0.1",
  "info": {
    "title": "RepVue Scraper",
    "description": "From 💰 $0.7 per 1K. Extract verified sales-employer reviews, ratings, and compensation data from RepVue.com. Paste company URLs or filter the RepVue directory by industry and company size. Returns one row per company plus optional rows for each verified review (with a recordType discriminator).",
    "version": "1.0",
    "x-build-id": "EovkGfqKXmdhEbG6c"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/solidcode~repvue-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-solidcode-repvue-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/solidcode~repvue-scraper/runs": {
      "post": {
        "operationId": "runs-sync-solidcode-repvue-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/solidcode~repvue-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-solidcode-repvue-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": "RepVue URLs or Company Slugs",
            "type": "array",
            "description": "Paste one or more RepVue inputs. Accepts full company URLs (https://www.repvue.com/companies/Salesforce), bare company slugs (Salesforce, Gong, Outreach), or directory URLs (https://www.repvue.com/companies?industry=saas). Mix any types in one list.",
            "items": {
              "type": "string"
            }
          },
          "industries": {
            "title": "Industries",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional industry filter for directory mode. Drives a directory crawl when no specific company URLs are given. Values match RepVue's canonical directory facet list.",
            "items": {
              "type": "string",
              "enum": [
                "Construction",
                "Direct-to-Consumer",
                "Education",
                "Finance",
                "Healthcare and Hospitals",
                "Information Technology and Services",
                "Internet",
                "Leisure / Hospitality",
                "Manufacturing",
                "Media and Publishing",
                "Medical Devices",
                "Natural Resources / Mining",
                "Pharma and Biotech",
                "Professional / Business Services",
                "Real Estate",
                "Retail / Automotive",
                "Software",
                "Staffing and Recruiting",
                "Telecom",
                "Transportation",
                "Wholesale"
              ],
              "enumTitles": [
                "Construction",
                "Direct-to-Consumer",
                "Education",
                "Finance",
                "Healthcare and Hospitals",
                "Information Technology and Services",
                "Internet",
                "Leisure / Hospitality",
                "Manufacturing",
                "Media and Publishing",
                "Medical Devices",
                "Natural Resources / Mining",
                "Pharma and Biotech",
                "Professional / Business Services",
                "Real Estate",
                "Retail / Automotive",
                "Software",
                "Staffing and Recruiting",
                "Telecom",
                "Transportation",
                "Wholesale"
              ]
            },
            "default": []
          },
          "companySizes": {
            "title": "Company Size",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional employee-size band filter for directory mode. Combine with Industries to scope a directory crawl. Ignored when every entry in URLs above resolves to a specific company.",
            "items": {
              "type": "string",
              "enum": [
                "1-50",
                "51-250",
                "251-1,000",
                "1,001-10,000",
                "10,001+"
              ],
              "enumTitles": [
                "1–50 employees",
                "51–250 employees",
                "251–1,000 employees",
                "1,001–10,000 employees",
                "10,001+ employees"
              ]
            },
            "default": []
          },
          "includeReviews": {
            "title": "Include Verified Reviews",
            "type": "boolean",
            "description": "Embed each company's verified sales-rep reviews as separate rows in the dataset. Turn off for a quick market scan that returns only the company-card row (rating, review count, compensation summary) — much faster and cheaper.",
            "default": true
          },
          "includeCompensation": {
            "title": "Include Compensation Data",
            "type": "boolean",
            "description": "Include compensation fields (avg OTE, base, variable, quota attainment) on each company row, plus a per-role compensation breakdown. Turn off only if you want the lightest possible payload.",
            "default": true
          },
          "reviewsSince": {
            "title": "Earliest Review Date",
            "type": "string",
            "description": "Only include reviews created on or after this date. Accepts a calendar date (2025-04-01), an ISO timestamp (2025-04-01T12:00:00Z), or a relative value like '30d', '6 months', '1 year'. Leave empty for no filter. Ignored when 'Include Verified Reviews' is off."
          },
          "maxReviewsPerCompany": {
            "title": "Max Reviews Per Company",
            "minimum": 0,
            "type": "integer",
            "description": "Cap on reviews captured per company (most recent first). Each review is a separate output row. Set to 0 for no cap (an internal upper limit of 2,000 still applies to prevent runaway pagination on companies with thousands of reviews). Ignored when 'Include Verified Reviews' is off.",
            "default": 50
          },
          "maxResults": {
            "title": "Max Results (Total)",
            "minimum": 0,
            "type": "integer",
            "description": "Hard cap on total rows in the output dataset across every company (companies + reviews combined). Default 100 — increase for bigger runs, or set to 0 for no cap (an internal upper limit of 100,000 still applies; directory discovery is capped at 50,000 companies, which covers the entire current RepVue directory). The actor stops requesting new pages once this number is reached but keeps the full final page even if it slightly overshoots.",
            "default": 100
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}