{
  "openapi": "3.0.1",
  "info": {
    "title": "UK Companies House Scraper: Officers, PSC, Charges",
    "description": "Get UK Companies House profiles with officers, the people or companies that control it, charge counts and accounts category in one row from the live register. Look up by company number, register URL, name or a filter. Each company is billed once, from $1.50 per 1,000. No login, no API key.",
    "version": "0.1",
    "x-build-id": "XSbxIFBFdfr0XWDIP"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/pradio~companies-house/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-pradio-companies-house",
        "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/pradio~companies-house/runs": {
      "post": {
        "operationId": "runs-sync-pradio-companies-house",
        "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/pradio~companies-house/run-sync": {
      "post": {
        "operationId": "run-sync-pradio-companies-house",
        "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": {
          "companyNumbers": {
            "title": "Company numbers",
            "type": "array",
            "description": "Company numbers, one per entry: 07109264 (England and Wales), SC123456 (Scotland), NI123456 (Northern Ireland), OC123456 (an England and Wales LLP). The box opens with two example companies, one the register incorporated and one it registered: a run reads and bills each once at the per-company price, so clear them for only your own.",
            "items": {
              "type": "string"
            }
          },
          "companyNumbersFileUrl": {
            "title": "Link to a file of company numbers",
            "type": "string",
            "description": "A link to your file of numbers, a text or CSV file or a shared Google Sheet, that anyone with the link can open; up to 5 MB, one number per line."
          },
          "searchQueries": {
            "title": "Search Queries",
            "type": "array",
            "description": "Names, phrases or keywords for the register's own search; each term brings back up to 50 companies by default. A company number typed here is not a company: it matches every company carrying it, so one company goes in Company numbers, above. A company you know by its name needs no number: put its name in Name contains, below, as well, and the run reads only the companies whose name carries those words.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Company page or search page URLs, one URL per row in the form; in the Console, paste the URL into this box. Over the API, each entry is one object with the URL in a url field, like {\"url\": \"...\"}. A bare URL string is refused by the platform before the run starts, so no row comes back.",
            "items": {
              "type": "object"
            }
          },
          "maxItems": {
            "title": "Most companies in one run",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "The most companies one run reads, up to 5,000; leave it empty and 5,000 is the limit for the whole run, across every term, number and URL. Set it and one search term may read up to that many too."
          },
          "maxCompaniesPerSearchQuery": {
            "title": "Most companies per search term",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "The most companies one search term adds. Leave it empty and each term stops at 50; set the run's cap above and each term follows that instead, so a run cap of 500 lets one term return up to 500. Set it only to stop one term earlier than the others."
          },
          "sicCodes": {
            "title": "Industry codes",
            "type": "array",
            "description": "Only if you know the company's SIC code (Standard Industrial Classification, five digits), e.g. 56101 for restaurants. A word is not a code: the run answers with a free row naming what you typed, and no company comes back.",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "title": "Registered office location",
            "type": "string",
            "description": "Text the registered office address must contain: a town such as Leeds or a postcode start such as EC2A."
          },
          "companyNameIncludes": {
            "title": "Name contains",
            "type": "string",
            "description": "Whole words only, every one of them: type bakery ltd and you keep only names carrying both words."
          },
          "companyNameExcludes": {
            "title": "Name does not contain",
            "type": "string",
            "description": "Whole words only, and any one of them: type holdings dormant and every company whose name carries either word is left out."
          },
          "companyStatus": {
            "title": "Company status",
            "type": "array",
            "description": "Only these statuses, on the filter search and on your search terms; empty means any. A company with another status is left out, and its term gets a row of its own that costs nothing. Each row carries the status in the register's own words.",
            "items": {
              "type": "string",
              "enum": [
                "active",
                "dissolved",
                "open",
                "closed",
                "converted-closed",
                "removed",
                "receivership",
                "liquidation",
                "administration",
                "insolvency-proceedings",
                "voluntary-arrangement"
              ],
              "enumTitles": [
                "Active",
                "Dissolved",
                "Open",
                "Closed",
                "Converted or closed",
                "Removed",
                "Receivership",
                "Liquidation",
                "Administration",
                "Insolvency proceedings",
                "Voluntary arrangement"
              ]
            }
          },
          "companyTypes": {
            "title": "Company types",
            "type": "array",
            "description": "The register's category for a company's legal form: Private limited company (LTD), Public limited company (PLC), Limited liability partnership (LLP); leave it empty for any type. SE is Societas Europaea, the European company form.",
            "items": {
              "type": "string",
              "enum": [
                "ltd",
                "plc",
                "llp",
                "assurance-company",
                "charitable-incorporated-organisation",
                "converted-or-closed",
                "eeig",
                "european-public-limited-liability-company-se",
                "further-education-or-sixth-form-college-corporation",
                "industrial-and-provident-society",
                "icvc",
                "limited-partnership",
                "old-public-company",
                "oversea-company",
                "registered-overseas-entity",
                "private-limited-guarant-nsc",
                "private-limited-guarant-nsc-limited-exemption",
                "private-limited-shares-section-30-exemption",
                "private-unlimited",
                "private-unlimited-nsc",
                "protected-cell-company",
                "registered-society-non-jurisdictional",
                "royal-charter",
                "scottish-charitable-incorporated-organisation",
                "scottish-partnership",
                "uk-establishment",
                "unregistered-company",
                "community-interest-company",
                "private-fund-limited-partnership"
              ],
              "enumTitles": [
                "Private limited company",
                "Public limited company",
                "Limited liability partnership",
                "Assurance company",
                "Charitable incorporated organisation",
                "Converted or closed",
                "European Economic Interest Grouping (EEIG)",
                "European public limited liability company (SE, Societas Europaea)",
                "Further education or sixth form college corporation",
                "Industrial and provident society",
                "Investment company with variable capital",
                "Limited partnership",
                "Old public company",
                "Overseas company",
                "Overseas entity",
                "Private limited by guarantee without share capital",
                "Private limited by guarantee, 'Limited' exemption",
                "Private limited company, 'Limited' exemption",
                "Private unlimited company",
                "Private unlimited company without share capital",
                "Protected cell company",
                "Registered society",
                "Royal charter company",
                "Scottish charitable incorporated organisation",
                "Scottish qualifying partnership",
                "UK establishment company",
                "Unregistered company",
                "Community interest company (subtype)",
                "Private fund limited partnership (subtype)"
              ]
            }
          },
          "incorporatedFrom": {
            "title": "Incorporated from",
            "type": "string",
            "description": "Only companies incorporated on or after this date, as YYYY-MM-DD."
          },
          "incorporatedTo": {
            "title": "Incorporated to",
            "type": "string",
            "description": "Only companies incorporated on or before this date, as YYYY-MM-DD."
          },
          "dissolvedFrom": {
            "title": "Dissolved from",
            "type": "string",
            "description": "Only companies dissolved on or after this date, as YYYY-MM-DD."
          },
          "dissolvedTo": {
            "title": "Dissolved to",
            "type": "string",
            "description": "Only companies dissolved on or before this date, as YYYY-MM-DD."
          },
          "onlyNew": {
            "title": "Only new since the last run",
            "type": "boolean",
            "description": "Skip the companies an earlier run with the same filters or the same term returned; change the filters or the term and they come back as new. Useful on a schedule.",
            "default": false
          },
          "prevDatasetId": {
            "title": "Compare with a previous run",
            "type": "string",
            "description": "The dataset of an earlier run: each row then says new, unchanged or changed against that run's row for the same company, and names what moved. No row is dropped. Leave empty for a plain run."
          },
          "includeFilingHistory": {
            "title": "Include filing history",
            "type": "boolean",
            "description": "Add each company's latest filings: the date, the form type (the document the company filed) and the register's words for it; the 5 latest come back.",
            "default": false
          },
          "filingHistoryLimit": {
            "title": "Filings per company",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "How many of the latest filings each company gets, from 1 to 100; leave it empty and the 5 latest come back. It counts only when Include filing history, just above, is switched on.",
            "default": 5
          },
          "includeCharges": {
            "title": "Include charges",
            "type": "boolean",
            "description": "Add each charge the register lists (a mortgage or other security the company has given): its code or title, the dates, its status and the people entitled to it.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy settings",
            "type": "object",
            "description": "Apify proxy settings; when set, every register read goes through one proxy session for the whole run, which changes the address the register sees and not the answer it gives."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}