{
  "openapi": "3.0.1",
  "info": {
    "title": "UK Companies House Scraper",
    "description": "Scrape UK companies from Companies House without an API key: number, name, status, type, registered address, SIC codes, incorporation and dissolution dates, accounts and confirmation statement dates, overdue flags, previous names, filings and charges. Bulk filters. Error rows are free.",
    "version": "0.1",
    "x-build-id": "vvqGl8acnaj6vBesA"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapewise~companies-house-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapewise-companies-house-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/scrapewise~companies-house-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapewise-companies-house-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/scrapewise~companies-house-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapewise-companies-house-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": "Company name or keyword",
            "type": "array",
            "description": "Company names or keywords, one per line, for example bakery or Marks and Spencer. Without filters, each term runs the Companies House name search in its own relevance order (up to 1,980 companies per term). With any filter below (SIC code, location, status, type or dates), the term must appear in the company name and the filters apply. Leave empty to search by filters only. Also accepts 'search', 'keywords' and 'companyName'.",
            "items": {
              "type": "string"
            }
          },
          "companyNumbers": {
            "title": "Company numbers or links",
            "type": "array",
            "description": "Specific companies, one per line: a company number (04256886, SC241685, OC300001) or a Companies House page link such as https://find-and-update.company-information.service.gov.uk/company/04256886. Each returns the full company record with accounts and confirmation statement details. Also accepts 'companyUrls' and 'startUrls'.",
            "items": {
              "type": "string"
            }
          },
          "sicCodes": {
            "title": "SIC codes",
            "type": "array",
            "description": "Filter by nature of business with 5-digit SIC 2007 codes, one per line, for example 62020 (IT consultancy) or 56101 (licensed restaurants). A company matches if it has any of them. An invalid code returns a free INVALID_INPUT row. Works with or without search terms.",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "title": "Registered office location",
            "type": "string",
            "description": "Town, county or postcode of the registered office, for example Manchester, Kent or SW1A. Matches the registered office address, not trading addresses. Empty = all of the UK."
          },
          "companyStatus": {
            "title": "Company status",
            "type": "array",
            "description": "Only companies with any of these statuses, one per line: active, dissolved, liquidation, receivership, administration, voluntary-arrangement, converted-closed, insolvency-proceedings, open, closed, removed. Empty = every status.",
            "items": {
              "type": "string"
            }
          },
          "companyType": {
            "title": "Company type",
            "type": "array",
            "description": "Only companies of any of these Companies House type codes, one per line, for example ltd, plc, llp, limited-partnership, oversea-company or community-interest-company. Empty = every type.",
            "items": {
              "type": "string"
            }
          },
          "incorporatedFrom": {
            "title": "Incorporated from",
            "type": "string",
            "description": "Only companies incorporated on or after this date, as YYYY-MM-DD (for example 2026-01-01), or a number of days, for example 7 for the last week. Good for new company leads in a scheduled run."
          },
          "incorporatedTo": {
            "title": "Incorporated to",
            "type": "string",
            "description": "Only companies incorporated on or before this date, as YYYY-MM-DD, for example 2026-03-31. Together with 'Incorporated from' it sets a date range."
          },
          "dissolvedFrom": {
            "title": "Dissolved from",
            "type": "string",
            "description": "Only companies dissolved on or after this date, as YYYY-MM-DD, or a number of days, for example 30 for the last month. Combine with status dissolved."
          },
          "dissolvedTo": {
            "title": "Dissolved to",
            "type": "string",
            "description": "Only companies dissolved on or before this date, as YYYY-MM-DD."
          },
          "nameExcludes": {
            "title": "Name must not contain",
            "type": "string",
            "description": "Leave out companies whose name contains this word, for example holdings. Applied after the filters above. Empty = keep every name."
          },
          "maxResults": {
            "title": "Max companies per search",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after this many companies for each search term, or for the filter set when there is no term. Default 50; 0 = every match. Filtered searches have no ceiling, because large result sets are split by incorporation date automatically. You pay per company delivered, so this caps the cost. 'maxItems' also works.",
            "default": 50
          },
          "includeDetails": {
            "title": "Add accounts, confirmation statement and SIC descriptions",
            "type": "boolean",
            "description": "Off (default). On: opens each company's page and adds the status detail (such as 'proposal to strike off'), last and next accounts dates, confirmation statement dates, overdue flags, SIC descriptions and previous names. Always on for company numbers. Same price per company, no extra event.",
            "default": false
          },
          "includeFilingHistory": {
            "title": "Add latest filings",
            "type": "boolean",
            "description": "Off (default). On: adds the 25 most recent filings of each company (date, form type, description, PDF link). Director and PSC appointment filings are left out. Same price per company, but the run takes longer.",
            "default": false
          },
          "includeCharges": {
            "title": "Add charges (mortgages)",
            "type": "boolean",
            "description": "Off (default). On: adds the count of charges (mortgages) registered, outstanding and satisfied, plus each charge's title, dates, and status. Same price per company.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "The default Apify Proxy works well for Companies House. Change it only to use your own proxies.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}