{
  "openapi": "3.0.1",
  "info": {
    "title": "Reed.co.uk Scraper — UK Jobs & Salaries, No Phones",
    "description": "UK job ads from reed.co.uk: title, company, employer or agency, location, salary text with min/max/period, contract type, hours, remote/hybrid, dates, and the full ad if you want. No phones.",
    "version": "0.1",
    "x-build-id": "DUUggYKBBhtpjUqzk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/highbrow_fame~reed-jobs/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-highbrow_fame-reed-jobs",
        "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/highbrow_fame~reed-jobs/runs": {
      "post": {
        "operationId": "runs-sync-highbrow_fame-reed-jobs",
        "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/highbrow_fame~reed-jobs/run-sync": {
      "post": {
        "operationId": "run-sync-highbrow_fame-reed-jobs",
        "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": {
          "searchUrls": {
            "title": "Search links",
            "type": "array",
            "description": "Set up a search on reed.co.uk with all the filters you want and paste the address of the results page. One per line. Company pages (reed.co.uk/jobs/<company>/p…) and sector pages (reed.co.uk/jobs/it-jobs) work too.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Or search here without a link: job titles or keywords (accountant, registered nurse, c# developer). Each keyword is searched in each place below, or in the whole UK when there is no place. The filters below apply.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Places",
            "type": "array",
            "description": "Towns, cities, counties, regions or postcodes in the UK (Leeds, Greater Manchester, Surrey, LS1). A place without keywords gives all its jobs.",
            "items": {
              "type": "string"
            }
          },
          "radius": {
            "title": "Distance",
            "enum": [
              "0",
              "1",
              "3",
              "5",
              "10",
              "15",
              "20",
              "30",
              "50"
            ],
            "type": "string",
            "description": "For the places above: how far around the place, as on reed.co.uk.",
            "default": "10"
          },
          "minSalary": {
            "title": "Min salary (£ a year)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Reed compares hourly and daily rates as their yearly equivalent."
          },
          "maxSalary": {
            "title": "Max salary (£ a year)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional."
          },
          "contractTypes": {
            "title": "Contract type",
            "uniqueItems": true,
            "type": "array",
            "description": "Optional: only jobs of any of these kinds.",
            "items": {
              "type": "string",
              "enum": [
                "permanent",
                "contract",
                "temporary"
              ],
              "enumTitles": [
                "Permanent",
                "Contract",
                "Temporary"
              ]
            }
          },
          "hours": {
            "title": "Hours",
            "enum": [
              "any",
              "full-time",
              "part-time"
            ],
            "type": "string",
            "description": "Optional.",
            "default": "any"
          },
          "workplace": {
            "title": "Remote, hybrid or on-site",
            "enum": [
              "any",
              "remote",
              "hybrid",
              "onSite"
            ],
            "type": "string",
            "description": "Optional.",
            "default": "any"
          },
          "postedWithinDays": {
            "title": "Posted within",
            "enum": [
              "any",
              "1",
              "3",
              "7",
              "14"
            ],
            "type": "string",
            "description": "Optional: only jobs posted (or reposted) recently.",
            "default": "any"
          },
          "postedBy": {
            "title": "Posted by",
            "enum": [
              "any",
              "employer",
              "agency"
            ],
            "type": "string",
            "description": "Optional: direct employers or recruitment agencies only.",
            "default": "any"
          },
          "graduateOnly": {
            "title": "Graduate jobs only",
            "type": "boolean",
            "description": "Optional.",
            "default": false
          },
          "hideTrainingCourses": {
            "title": "Leave out training courses",
            "type": "boolean",
            "description": "Reed lists paid training courses among the jobs (\"Trainee AI Engineer\", \"Coding and Programming Trainee\"). On by default, for search links too.",
            "default": true
          },
          "maxListingsPerSearch": {
            "title": "Max jobs per search",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Stops each search after this many jobs. Reed shows at most the first 10,000 jobs of a search.",
            "default": 200
          },
          "includeDetails": {
            "title": "Open every job for the full ad",
            "type": "boolean",
            "description": "Off by default. Adds the full job description, sector, skills, region, postcode area, contract length, yearly salary and the job reference. One more page per job, so slower (about 3.5 jobs a second). Sentences that name a recruiter are taken out of the ad by rules, which can miss an unusual wording — see the README.",
            "default": false
          },
          "maxConcurrency": {
            "title": "Parallel searches",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many searches to work on at the same time.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Used only when reed turns a request down: the first try goes out directly.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}