{
  "openapi": "3.0.1",
  "info": {
    "title": "UK Companies House Bulk Scraper",
    "description": "Companies House API alternative. Bulk download & export 5M+ UK companies to CSV/JSON. Filter by SIC code, location, status. No API key.",
    "version": "0.0",
    "x-build-id": "JhgwZV7K9R0diN8qv"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/logiover~uk-companies-house-bulk-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-logiover-uk-companies-house-bulk-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~uk-companies-house-bulk-scraper/runs": {
      "post": {
        "operationId": "runs-sync-logiover-uk-companies-house-bulk-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~uk-companies-house-bulk-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-logiover-uk-companies-house-bulk-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": {
          "snapshotMonth": {
            "title": "Snapshot month (YYYY-MM)",
            "type": "string",
            "description": "Which monthly snapshot to use. Leave blank to use the latest available. Companies House publishes a new snapshot around the 1st of each month.",
            "default": ""
          },
          "sicCodePrefixes": {
            "title": "SIC code prefixes",
            "type": "array",
            "description": "Filter by Standard Industrial Classification (SIC) code prefix. E.g. [\"62\"] for all IT companies, [\"58\"] for publishing, [\"70\"] for management consulting. Multiple prefixes are OR-ed. See https://resources.companieshouse.gov.uk/sic/ for the full list.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sicKeywords": {
            "title": "SIC keywords",
            "type": "array",
            "description": "Filter by free-text substring inside the SIC description (case-insensitive). E.g. [\"software\", \"consulting\"]. Multiple keywords are OR-ed.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "nameContains": {
            "title": "Company name contains",
            "type": "string",
            "description": "Substring filter on company name (case-insensitive). E.g. \"TECH\" matches \"FINTECH LTD\", \"TECHWAVE LIMITED\", etc.",
            "default": ""
          },
          "companyStatuses": {
            "title": "Company statuses",
            "type": "array",
            "description": "Which company statuses to include (pick one or more). Most users want only \"Active\" companies for lead-gen. Leave empty to include every status.",
            "items": {
              "type": "string",
              "enum": [
                "Active",
                "Active - Proposal to Strike off",
                "Liquidation",
                "Voluntary Arrangement",
                "In Administration",
                "In Administration/Administrative Receiver",
                "Administration Order",
                "Administrative Receiver",
                "Receiver Manager / Administrative Receiver",
                "Receivership",
                "Live but Receiver Manager on at least one charge",
                "ADMINISTRATIVE RECEIVER",
                "RECEIVERSHIP",
                "Voluntary Arrangement / Administrative Receiver"
              ],
              "enumTitles": [
                "Active",
                "Active - Proposal to Strike off",
                "Liquidation",
                "Voluntary Arrangement",
                "In Administration",
                "In Administration / Administrative Receiver",
                "Administration Order",
                "Administrative Receiver",
                "Receiver Manager / Administrative Receiver",
                "Receivership",
                "Live but Receiver Manager on at least one charge",
                "ADMINISTRATIVE RECEIVER (legacy casing)",
                "RECEIVERSHIP (legacy casing)",
                "Voluntary Arrangement / Administrative Receiver"
              ]
            },
            "default": [
              "Active"
            ]
          },
          "companyCategories": {
            "title": "Company categories",
            "type": "array",
            "description": "Company type / legal form (pick one or more). Leave empty for all categories.",
            "items": {
              "type": "string",
              "enum": [
                "Private Limited Company",
                "Public Limited Company",
                "PRI/LTD BY GUAR/NSC (Private, limited by guarantee, no share capital)",
                "PRI/LBG/NSC (Private, Limited by guarantee, no share capital, use of 'Limited' exemption)",
                "Limited Liability Partnership",
                "Limited Partnership",
                "Scottish Limited Partnership",
                "PRIV LTD SECT. 30 (Private limited company, section 30 of the Companies Act)",
                "Private Unlimited",
                "Private Unlimited Company",
                "Old Public Company",
                "Company Converted/Closed",
                "Investment Company with Variable Capital",
                "Industrial and Provident Society",
                "Registered Society",
                "Community Interest Company",
                "Charitable Incorporated Organisation",
                "Scottish Charitable Incorporated Organisation",
                "Royal Charter Company",
                "Protected Cell Company",
                "Further Education and Sixth Form College Corps",
                "European Public Limited-Liability Company (SE)",
                "United Kingdom Economic Interest Grouping",
                "United Kingdom Societas",
                "Other company type"
              ],
              "enumTitles": [
                "Private Limited Company",
                "Public Limited Company (PLC)",
                "Private company limited by guarantee, no share capital",
                "Private company limited by guarantee, NSC ('Limited' exemption)",
                "Limited Liability Partnership (LLP)",
                "Limited Partnership",
                "Scottish Limited Partnership",
                "Private limited, Companies Act section 30",
                "Private Unlimited",
                "Private Unlimited Company",
                "Old Public Company",
                "Company Converted / Closed",
                "Investment Company with Variable Capital (ICVC)",
                "Industrial and Provident Society",
                "Registered Society",
                "Community Interest Company (CIC)",
                "Charitable Incorporated Organisation (CIO)",
                "Scottish Charitable Incorporated Organisation (SCIO)",
                "Royal Charter Company",
                "Protected Cell Company",
                "Further Education / Sixth Form College Corp",
                "European Public Limited-Liability Company (SE)",
                "UK Economic Interest Grouping",
                "United Kingdom Societas",
                "Other company type"
              ]
            },
            "default": []
          },
          "postCodePrefixes": {
            "title": "Post-code prefixes",
            "type": "array",
            "description": "UK postcode prefix match. E.g. [\"SW1\", \"EC1\"] matches central London. [\"M\"] matches all Manchester postcodes. [\"E1\"] matches East London.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "postTowns": {
            "title": "Post towns",
            "type": "array",
            "description": "Exact match on the post town (case-insensitive). E.g. [\"LONDON\", \"MANCHESTER\"].",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "counties": {
            "title": "Counties",
            "type": "array",
            "description": "Substring match on county. E.g. [\"GREATER LONDON\", \"WEST MIDLANDS\"].",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Registered country of the address (pick one or more). Matched as a case-insensitive substring, so it also catches minor spelling variants. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "ENGLAND",
                "WALES",
                "SCOTLAND",
                "NORTHERN IRELAND",
                "UNITED KINGDOM",
                "GREAT BRITAIN"
              ],
              "enumTitles": [
                "England",
                "Wales",
                "Scotland",
                "Northern Ireland",
                "United Kingdom",
                "Great Britain"
              ]
            },
            "default": []
          },
          "incorporatedSince": {
            "title": "Incorporated on or after (YYYY-MM-DD)",
            "type": "string",
            "description": "Only include companies incorporated on or after this date. Useful for finding fresh/new companies. E.g. \"2024-01-01\" for companies less than ~16 months old.",
            "default": ""
          },
          "incorporatedBefore": {
            "title": "Incorporated on or before (YYYY-MM-DD)",
            "type": "string",
            "description": "Only include companies incorporated on or before this date. Useful for finding established companies.",
            "default": ""
          },
          "maxResults": {
            "title": "Maximum results to save",
            "minimum": 0,
            "maximum": 5000000,
            "type": "integer",
            "description": "Hard cap on saved rows. The scraper will still scan the full snapshot but stop pushing to the dataset once this number is reached. Set to a high value (e.g. 100000) if you want everything that matches your filters."
          },
          "logEveryNRows": {
            "title": "Progress log frequency (rows)",
            "minimum": 1000,
            "maximum": 1000000,
            "type": "integer",
            "description": "Print a progress line every N CSV rows. Lower = more verbose. The bulk snapshot has ~5M rows.",
            "default": 100000
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}