{
  "openapi": "3.0.1",
  "info": {
    "title": "Dice Scraper — Tech Jobs, Salaries, Skills & Hiring Companies",
    "description": "Dice.com jobs scraper: export US tech jobs with salary ranges, contract types (W2, 1099, Corp-to-Corp), skills, full descriptions and the hiring company's website, size and industry. Search or export all ~110,000 jobs. No login. Not affiliated with Dice.",
    "version": "1.0",
    "x-build-id": "ofaFmEKjU9srSly4j"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/logiover~dice-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-logiover-dice-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/logiover~dice-scraper/runs": {
      "post": {
        "operationId": "runs-sync-logiover-dice-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/logiover~dice-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-logiover-dice-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": {
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Keywords, job titles or skills to search, e.g. \"data engineer\", \"python\", \"salesforce developer\". Each term is one Dice search. Leave empty (with no locations or companies) to export every job on Dice.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Optional. US city (\"Austin, TX\"), state (\"Texas\" or \"TX\"), ZIP code (\"94105\") or \"Remote\" for remote-only jobs. Every search term is combined with every location. Empty = nationwide.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "radiusMiles": {
            "title": "Radius (miles)",
            "minimum": 1,
            "maximum": 300,
            "type": "integer",
            "description": "Search radius around a city or ZIP code, 1–300 miles (Dice's own range). Ignored for states and \"Remote\".",
            "default": 30
          },
          "includeRemoteJobs": {
            "title": "Include remote jobs in location searches",
            "type": "boolean",
            "description": "Dice's default: a search for \"Austin, TX\" also lists remote jobs that can be done from anywhere. Turn off to keep only jobs located in the area.",
            "default": true
          },
          "employmentTypes": {
            "title": "Employment type",
            "uniqueItems": true,
            "type": "array",
            "description": "Any of: full-time, part-time, contract (W2 / 1099) or third party (Corp-to-Corp, C2C). Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "FULLTIME",
                "PARTTIME",
                "CONTRACTS",
                "THIRD_PARTY"
              ],
              "enumTitles": [
                "Full-time",
                "Part-time",
                "Contract (W2 / 1099)",
                "Third party (Corp-to-Corp, C2C)"
              ]
            },
            "default": []
          },
          "workplaceTypes": {
            "title": "Workplace",
            "uniqueItems": true,
            "type": "array",
            "description": "On-site, remote or hybrid. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "On-Site",
                "Remote",
                "Hybrid"
              ],
              "enumTitles": [
                "On-site",
                "Remote",
                "Hybrid"
              ]
            },
            "default": []
          },
          "employerTypes": {
            "title": "Employer type",
            "uniqueItems": true,
            "type": "array",
            "description": "Direct hire (the employer posts the job), recruiter (staffing agency) or other. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "Direct Hire",
                "Recruiter",
                "Other"
              ],
              "enumTitles": [
                "Direct hire (employer)",
                "Recruiter / staffing agency",
                "Other"
              ]
            },
            "default": []
          },
          "postedWithin": {
            "title": "Posted within",
            "enum": [
              "any",
              "1",
              "3",
              "7",
              "14",
              "30"
            ],
            "type": "string",
            "description": "Only jobs posted in this window. 1, 3 and 7 days use Dice's own filter; 14 and 30 days sort by date and stop at the cut-off.",
            "default": "any"
          },
          "easyApplyOnly": {
            "title": "Easy Apply only",
            "type": "boolean",
            "description": "Only jobs you can apply to on Dice in one click.",
            "default": false
          },
          "willingToSponsorOnly": {
            "title": "Visa sponsorship only",
            "type": "boolean",
            "description": "Only jobs whose employer marked \"willing to sponsor\".",
            "default": false
          },
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "Optional. Company names as shown on Dice, e.g. \"Apex Systems\", \"Capital One\", \"Booz Allen Hamilton\". Each company is its own search (combined with the terms and locations). Names are matched the way Dice spells them; if Dice cannot filter a company, its name is searched and only that company's jobs are kept.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Dice URLs",
            "type": "array",
            "description": "Optional. Paste Dice search pages (https://www.dice.com/jobs?q=...&location=...) with any filters, or job pages (https://www.dice.com/job-detail/...). If you only give URLs, only the URLs are scraped.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "newest",
              "relevance"
            ],
            "type": "string",
            "description": "Newest first (best for monitoring and big exports) or Dice's relevance ranking.",
            "default": "newest"
          },
          "maxItems": {
            "title": "Max results",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Stop after this many unique jobs across all searches. 0 = no limit (every matching job; all of Dice is ~110,000 jobs). One Dice search returns at most 10,000 results — above that the scraper splits the search automatically.",
            "default": 1000
          },
          "includeDetails": {
            "title": "Include full job details",
            "type": "boolean",
            "description": "Reads each job page: full description (text and HTML), skills list, contract types (W2 / 1099 / Corp-to-Corp), employer's position id, apply type (on Dice or on the employer's site), ZIP code and expiry date. Turn off for the fastest bulk export (search data only: ~1,000 jobs per second).",
            "default": true
          },
          "includeCompanyDetails": {
            "title": "Include company profile",
            "type": "boolean",
            "description": "Adds the hiring company's website, size, founding year, headquarters, industries, company type (employer or staffing agency), description and tech stack from its Dice company profile. Fetched once per company, 50 companies per request — almost no extra time.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Used only as a fallback. The scraper talks to Dice over a direct connection first (no proxy cost); if Dice refuses it, it switches to Apify datacenter proxies and then to this proxy.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}