{
  "openapi": "3.0.1",
  "info": {
    "title": "Ofsted Reports Data Scraper",
    "description": "[💰 $8.0 / 1K] Extract Ofsted inspection reports and ratings for England's schools, nurseries, childminders, colleges, and children's social care providers. Get provider name, URN, address, latest judgement, sub-grades, inspection dates, and report PDF links.",
    "version": "1.0",
    "x-build-id": "Ov39IhnR4sRCzYX4v"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/solidcode~ofsted-reports-data-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-solidcode-ofsted-reports-data-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~ofsted-reports-data-scraper/runs": {
      "post": {
        "operationId": "runs-sync-solidcode-ofsted-reports-data-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~ofsted-reports-data-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-solidcode-ofsted-reports-data-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": {
          "searchQueries": {
            "title": "Names, URNs, or keywords",
            "type": "array",
            "description": "One or more provider names, unique reference numbers (URN), or keywords to search on Ofsted, such as 'St Mary's Primary School', 'Busy Bees Nursery', or a URN like '123456'. Each entry runs its own search and results are merged and de-duplicated. Leave empty if you only want to use the filters or URLs below.",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "title": "Location or postcode",
            "type": "string",
            "description": "Town, city, county, or postcode to search near, such as 'Manchester', 'Kent', or 'M1 4BT'. Matches what you would type into Ofsted's location box. Applied to every search term above. Leave empty to search all of England."
          },
          "startUrls": {
            "title": "Ofsted URLs",
            "type": "array",
            "description": "Optional. Paste full Ofsted provider pages (e.g. https://reports.ofsted.gov.uk/provider/21/140696) or Ofsted search-result URLs. Any filters already applied on a search URL are respected. You can mix URLs with the search above.",
            "items": {
              "type": "string"
            }
          },
          "providerType": {
            "title": "Provider type",
            "uniqueItems": true,
            "type": "array",
            "description": "Only include these kinds of providers. Each choice matches Ofsted's own top-level categories, and picking several returns the union of them. Leave empty to include every type of Ofsted-registered provider.",
            "items": {
              "type": "string",
              "enum": [
                "education",
                "further-education",
                "childcare",
                "social-care",
                "other"
              ],
              "enumTitles": [
                "Schools, colleges & training (all education)",
                "Further education & skills only (colleges)",
                "Childcare & early years (nurseries, childminders)",
                "Children's social care (homes, fostering, adoption)",
                "Other organisations"
              ]
            }
          },
          "rating": {
            "title": "Latest overall rating",
            "uniqueItems": true,
            "type": "array",
            "description": "Only include providers whose most recent overall Ofsted judgement is one of these. Note that filtering by rating excludes providers that do not carry a single overall grade (for example many childcare providers and schools inspected under the newest framework). Leave empty to include every rating.",
            "items": {
              "type": "string",
              "enum": [
                "outstanding",
                "good",
                "requires-improvement",
                "inadequate"
              ],
              "enumTitles": [
                "Outstanding",
                "Good",
                "Requires improvement",
                "Inadequate"
              ]
            }
          },
          "latestReportDateStart": {
            "title": "Latest report on or after",
            "type": "string",
            "description": "Only include providers whose most recent report was published on or after this date. Leave empty for no earliest limit."
          },
          "latestReportDateEnd": {
            "title": "Latest report on or before",
            "type": "string",
            "description": "Only include providers whose most recent report was published on or before this date. Leave empty for no latest limit."
          },
          "includeInspectionHistory": {
            "title": "Include full inspection history",
            "type": "boolean",
            "description": "Off by default for faster, cheaper runs. Each provider record already includes its latest inspection judgement, dates, and report link. Turn this on to also include a list of that provider's earlier inspections (dates, types, ratings, and report PDF links) — useful for tracking how a provider's rating has changed over time.",
            "default": false
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 0,
            "type": "integer",
            "description": "Cap on the total number of providers returned across all searches and URLs. Defaults to 100 for a quick first run; raise it for larger pulls. Set to 0 to collect as many as possible. Results are read a page of 10 at a time and the current page always finishes, so a small cap can return up to 9 providers more than requested.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}