{
  "openapi": "3.0.1",
  "info": {
    "title": "H-1B LCA Scraper: Sponsors, Wages and Approvals",
    "description": "Scrape H-1B, H-1B1 and E-3 labor condition applications from the Department of Labor. Get offered wage versus prevailing wage, wage level, job and occupation, employer, work site and outcome. Employer and salary statistics, with USCIS approvals and denials. Export to CSV or Excel.",
    "version": "1.0",
    "x-build-id": "BFf5VSl2TPD43NmgD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/parselab~h1b-lca-sponsor-wages-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-parselab-h1b-lca-sponsor-wages-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/parselab~h1b-lca-sponsor-wages-scraper/runs": {
      "post": {
        "operationId": "runs-sync-parselab-h1b-lca-sponsor-wages-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/parselab~h1b-lca-sponsor-wages-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-parselab-h1b-lca-sponsor-wages-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": {
          "maxItems": {
            "title": "Max Items",
            "minimum": 1,
            "maximum": 1000000,
            "type": "integer",
            "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000."
          },
          "mode": {
            "title": "What to collect",
            "enum": [
              "filings",
              "employers",
              "salaries",
              "uscisApprovals"
            ],
            "type": "string",
            "description": "Filings returns one row per labor condition application with wages and prevailing wage. Employers returns one row per sponsoring company with totals, wage statistics and USCIS approvals. Salaries returns wage statistics per occupation. USCIS approvals returns approvals and denials per employer and year.",
            "default": "filings"
          },
          "fiscalYears": {
            "title": "Fiscal years",
            "type": "array",
            "description": "US government fiscal years, for example 2026 and 2025. Leave empty for the latest year. Each year adds about a minute. For USCIS approvals the latest year is 2023.",
            "items": {
              "type": "string"
            }
          },
          "employerNames": {
            "title": "Employer names",
            "type": "array",
            "description": "Part of a company name, for example Google, Infosys or Stanford.",
            "items": {
              "type": "string"
            }
          },
          "employerFeins": {
            "title": "Employer tax numbers (EIN)",
            "type": "array",
            "description": "Federal employer identification numbers, for example 77-0493581. Use them when company names are ambiguous.",
            "items": {
              "type": "string"
            }
          },
          "employerStates": {
            "title": "Employer states",
            "type": "array",
            "description": "Two letter state codes of the company address, for example CA, TX.",
            "items": {
              "type": "string"
            }
          },
          "worksiteStates": {
            "title": "Work location states",
            "type": "array",
            "description": "Two letter state codes where the worker will work.",
            "items": {
              "type": "string"
            }
          },
          "worksiteCities": {
            "title": "Work location cities",
            "type": "array",
            "description": "Part of a city name where the worker will work, for example Austin.",
            "items": {
              "type": "string"
            }
          },
          "jobTitles": {
            "title": "Job titles",
            "type": "array",
            "description": "Words in the job title or occupation name, for example data scientist, nurse or mechanical engineer.",
            "items": {
              "type": "string"
            }
          },
          "socCodes": {
            "title": "Occupation codes (SOC)",
            "type": "array",
            "description": "SOC codes or their start, for example 15-1252 for software developers or 15- for all computer occupations.",
            "items": {
              "type": "string"
            }
          },
          "naicsCodes": {
            "title": "Industry codes (NAICS)",
            "type": "array",
            "description": "NAICS industry codes or their start, for example 5415 for computer services.",
            "items": {
              "type": "string"
            }
          },
          "lawFirms": {
            "title": "Law firms",
            "type": "array",
            "description": "Part of the law firm name that filed the application.",
            "items": {
              "type": "string"
            }
          },
          "caseStatuses": {
            "title": "Case outcomes",
            "type": "array",
            "description": "Keep applications with these outcomes. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "certified",
                "certifiedWithdrawn",
                "denied",
                "withdrawn"
              ]
            }
          },
          "visaClasses": {
            "title": "Visa classes",
            "type": "array",
            "description": "H-1B, H-1B1 Chile, H-1B1 Singapore or E-3 Australian.",
            "items": {
              "type": "string",
              "enum": [
                "H-1B",
                "H-1B1 Chile",
                "H-1B1 Singapore",
                "E-3 Australian"
              ]
            }
          },
          "wageLevels": {
            "title": "Prevailing wage levels",
            "type": "array",
            "description": "Wage level of the position, from I (entry) to IV (most experienced).",
            "items": {
              "type": "string",
              "enum": [
                "I",
                "II",
                "III",
                "IV"
              ]
            }
          },
          "employmentTypes": {
            "title": "Employment types",
            "type": "array",
            "description": "New employment, continued employment, change of previous employment, new concurrent employment, change of employer or amended petition.",
            "items": {
              "type": "string",
              "enum": [
                "new",
                "continued",
                "changeinprevious",
                "concurrent",
                "changeofemployer",
                "amended"
              ]
            }
          },
          "minAnnualWageUsd": {
            "title": "Minimum annual wage (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Offered wage per year. Hourly and monthly wages are converted to a year."
          },
          "maxAnnualWageUsd": {
            "title": "Maximum annual wage (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Offered wage per year."
          },
          "decisionDateFrom": {
            "title": "Decision date from",
            "type": "string",
            "description": "First decision date, in the form 2025-10-01."
          },
          "decisionDateTo": {
            "title": "Decision date until",
            "type": "string",
            "description": "Last decision date."
          },
          "h1bDependentOnly": {
            "title": "Only H-1B dependent employers",
            "type": "boolean",
            "description": "Keep employers that the law marks as H-1B dependent, which have extra rules.",
            "default": false
          },
          "willfulViolatorsOnly": {
            "title": "Only willful violators",
            "type": "boolean",
            "description": "Keep employers found to be willful violators of the program rules.",
            "default": false
          },
          "fullTimeOnly": {
            "title": "Only full time positions",
            "type": "boolean",
            "description": "Keep full time positions.",
            "default": false
          },
          "belowPrevailingOnly": {
            "title": "Only offers below the prevailing wage",
            "type": "boolean",
            "description": "Keep applications where the offered wage is under the prevailing wage of the government.",
            "default": false
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "decisionDate",
              "annualWage",
              "offeredVsPrevailing",
              "positions",
              "employerName"
            ],
            "type": "string",
            "description": "Filings: decision date, annual wage, offer versus prevailing wage, positions or employer. Employers and salaries: wage, positions or number of filings.",
            "default": "decisionDate"
          },
          "groupBy": {
            "title": "Group salaries by",
            "enum": [
              "soc",
              "socAndState",
              "jobTitle"
            ],
            "type": "string",
            "description": "Salaries mode. Occupation code, occupation code and work state, or the exact job title.",
            "default": "soc"
          },
          "minFilings": {
            "title": "Minimum filings per group",
            "minimum": 1,
            "type": "integer",
            "description": "Employers and salaries modes. Hide groups with fewer applications than this."
          },
          "includeUscis": {
            "title": "Add USCIS approvals to employers",
            "type": "boolean",
            "description": "Employers mode. Adds the approvals and denials of the USCIS employer data hub for the latest year.",
            "default": true
          },
          "minApprovals": {
            "title": "Minimum approvals",
            "minimum": 0,
            "type": "integer",
            "description": "USCIS approvals mode. Hide employers with fewer approvals than this in the year."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}