{
  "openapi": "3.0.1",
  "info": {
    "title": "Reed Jobs Scraper · UK Vacancies, Salaries & Employers",
    "description": "Reed Jobs Scraper to extract UK job listings and vacancies from Reed.co.uk. Filter by keyword, location, salary, contract type, remote work, and date posted. Export clean UK job market data.",
    "version": "1.0",
    "x-build-id": "C1ESLvNEAVmFrPeLN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/reapx~reed-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-reapx-reed-jobs-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/reapx~reed-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-reapx-reed-jobs-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/reapx~reed-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-reapx-reed-jobs-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": {
          "what": {
            "title": "Job keyword",
            "type": "string",
            "description": "Job title or skill, exactly as you would type it into Reed's own search box. Leave empty to search every vacancy on the site."
          },
          "where": {
            "title": "Location",
            "type": "string",
            "description": "UK town, city, county or region. Reed matches its own location vocabulary, so \"london\", \"greater-manchester\" and \"west-midlands\" all work.<br><br>Leave this field empty to skip this filter."
          },
          "maxJobs": {
            "title": "Max jobs",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Hard cap on how many vacancies the run returns. This is also your cost cap: you are charged once per job returned.<br><br>The higher the number, the longer the run takes and the more you are charged, because you pay per row returned."
          },
          "postedWithinDays": {
            "title": "Posted within",
            "enum": [
              "1",
              "3",
              "7",
              "14"
            ],
            "type": "string",
            "description": "How recently the vacancy was posted. Reed supports exactly these four windows; any other value is ignored by the site and would silently return everything, so only these are offered.<br><br>Options: <code>1</code>, <code>3</code>, <code>7</code>, <code>14</code>."
          },
          "minSalaryGbp": {
            "title": "Minimum salary (£/year)",
            "minimum": 0,
            "type": "integer",
            "description": "Only vacancies advertising at least this annual salary. Postings quoted hourly, daily or monthly are excluded, because they are not comparable to an annual figure."
          },
          "maxSalaryGbp": {
            "title": "Maximum salary (£/year)",
            "minimum": 0,
            "type": "integer",
            "description": "Only vacancies advertising at most this annual salary.<br><br>The higher the number, the longer the run takes and the more you are charged, because you pay per row returned."
          },
          "onlyWithSalary": {
            "title": "Only jobs that advertise a salary",
            "type": "boolean",
            "description": "Drop vacancies with no published pay. Reed marks some postings with a filter band rather than real pay; those are treated as having no salary."
          },
          "jobType": {
            "title": "Contract type",
            "enum": [
              "Permanent",
              "Contract",
              "Temporary"
            ],
            "type": "string",
            "description": "Limit to one kind of engagement. Part time is not a contract type on Reed; use the part-time filter below instead.<br><br>Options: <code>Permanent</code>, <code>Contract</code>, <code>Temporary</code>."
          },
          "onlyPartTime": {
            "title": "Part-time only",
            "type": "boolean",
            "description": "Keep only vacancies Reed marks as part time. This is independent of contract type, so a part-time permanent role and a part-time contract both qualify."
          },
          "onlyRemote": {
            "title": "Remote and hybrid only",
            "type": "boolean",
            "description": "Drop vacancies Reed marks as on-site only."
          },
          "excludeAgencies": {
            "title": "Direct employers only",
            "type": "boolean",
            "description": "Exclude recruitment agency listings and keep only vacancies posted by the hiring employer."
          },
          "employer": {
            "title": "Employer name contains",
            "type": "string",
            "description": "Keep only vacancies whose employer name contains this text, matched case-insensitively.<br><br>Leave this field empty to skip this filter."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}