{
  "openapi": "3.0.1",
  "info": {
    "title": "UK Companies House Search & Company Data",
    "description": "Search UK companies by name, number, SIC code, incorporation date, status or location in the official Companies House API. Status, SIC labels, address, accounts and confirmation due dates, filings, PSC, charges and officers in one schema for KYB, due diligence and leads.",
    "version": "0.1",
    "x-build-id": "5Zsc1XUZAQUOC74F6"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/rod_analytics~uk-companies-house/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-rod_analytics-uk-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/rod_analytics~uk-companies-house/runs": {
      "post": {
        "operationId": "runs-sync-rod_analytics-uk-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/rod_analytics~uk-companies-house/run-sync": {
      "post": {
        "operationId": "run-sync-rod_analytics-uk-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": {
          "apiKey": {
            "title": "Companies House API key",
            "type": "string",
            "description": "Your free Companies House REST API key. Get one in about 2 minutes: register at https://developer.company-information.service.gov.uk/, create an application (Live), click \"Create new key\", choose REST, leave IP and domain restrictions empty. The key is stored encrypted and never logged. Without a key only company-number lookups run, with basic data from the public Companies House URI service."
          },
          "searchQueries": {
            "title": "Search by company name",
            "type": "array",
            "description": "Company names or keywords, e.g. \"tesco\" or \"acme software\". Uses the Companies House search index (needs an API key). Each query returns up to \"Max results per search\" companies.",
            "items": {
              "type": "string"
            }
          },
          "maxResultsPerSearch": {
            "title": "Max results per search",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum companies saved per name search. The Companies House index returns at most about 1,000 hits per query.",
            "default": 20
          },
          "onlyActive": {
            "title": "Name search: active companies only",
            "type": "boolean",
            "description": "Restrict name search results to active companies.",
            "default": false
          },
          "companyNumbers": {
            "title": "Look up by company number",
            "type": "array",
            "description": "UK company numbers, e.g. 00445790 (Tesco PLC), SC045551, OC300001. Short numbers are padded to 8 characters. Works without an API key in basic keyless mode.",
            "items": {
              "type": "string"
            }
          },
          "advancedNameIncludes": {
            "title": "Company name includes",
            "type": "string",
            "description": "Advanced search: name must contain this text."
          },
          "advancedNameExcludes": {
            "title": "Company name excludes",
            "type": "string",
            "description": "Advanced search: name must not contain this text. Only used together with another filter."
          },
          "advancedSicCodes": {
            "title": "SIC codes",
            "type": "array",
            "description": "SIC 2007 codes, e.g. 62012 (business and domestic software development), 56101 (licensed restaurants). Any match counts.",
            "items": {
              "type": "string"
            }
          },
          "advancedIncorporatedFrom": {
            "title": "Incorporated from",
            "type": "string",
            "description": "Earliest incorporation date, YYYY-MM-DD."
          },
          "advancedIncorporatedTo": {
            "title": "Incorporated to",
            "type": "string",
            "description": "Latest incorporation date, YYYY-MM-DD."
          },
          "advancedDissolvedFrom": {
            "title": "Dissolved from",
            "type": "string",
            "description": "Earliest dissolution date, YYYY-MM-DD."
          },
          "advancedDissolvedTo": {
            "title": "Dissolved to",
            "type": "string",
            "description": "Latest dissolution date, YYYY-MM-DD."
          },
          "advancedStatus": {
            "title": "Company status",
            "type": "array",
            "description": "Only companies with one of these statuses.",
            "items": {
              "type": "string",
              "enum": [
                "active",
                "dissolved",
                "liquidation",
                "receivership",
                "administration",
                "voluntary-arrangement",
                "converted-closed",
                "insolvency-proceedings",
                "registered",
                "removed",
                "open",
                "closed"
              ],
              "enumTitles": [
                "Active",
                "Dissolved",
                "Liquidation",
                "Receiver Action",
                "In Administration",
                "Voluntary Arrangement",
                "Converted / Closed",
                "Insolvency Proceedings",
                "Registered",
                "Removed",
                "Open",
                "Closed"
              ]
            }
          },
          "advancedCompanyType": {
            "title": "Company type",
            "type": "array",
            "description": "Only companies of these types.",
            "items": {
              "type": "string",
              "enum": [
                "ltd",
                "plc",
                "llp",
                "limited-partnership",
                "private-unlimited",
                "private-unlimited-nsc",
                "private-limited-guarant-nsc",
                "private-limited-guarant-nsc-limited-exemption",
                "private-limited-shares-section-30-exemption",
                "charitable-incorporated-organisation",
                "scottish-charitable-incorporated-organisation",
                "registered-society-non-jurisdictional",
                "oversea-company",
                "uk-establishment",
                "registered-overseas-entity",
                "royal-charter",
                "scottish-partnership",
                "other"
              ],
              "enumTitles": [
                "Private limited company",
                "Public limited company",
                "Limited liability partnership",
                "Limited partnership",
                "Private unlimited company",
                "Private unlimited company without share capital",
                "Private limited by guarantee without share capital",
                "Private Limited Company by guarantee without share capital, use of 'Limited' exemption",
                "Private Limited Company, use of 'Limited' exemption",
                "Charitable incorporated organisation",
                "Scottish charitable incorporated organisation",
                "Registered society",
                "Overseas company",
                "UK establishment company",
                "Overseas entity",
                "Royal charter company",
                "Scottish qualifying partnership",
                "Other company type"
              ]
            }
          },
          "advancedLocation": {
            "title": "Location",
            "type": "string",
            "description": "Town, county or postcode in the registered office address, e.g. \"Manchester\" or \"EC1A\"."
          },
          "maxResultsAdvanced": {
            "title": "Max advanced search results",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum companies saved from the advanced search.",
            "default": 100
          },
          "fetchFullProfile": {
            "title": "Fetch full company profile for search results",
            "type": "boolean",
            "description": "Search results only carry name, status, type, dates and address. With this on, each result is completed with SIC codes, accounts and confirmation statement due dates, insolvency and charges flags (one extra request per company). Turn off for fast, cheap name lists.",
            "default": true
          },
          "includePsc": {
            "title": "Add persons with significant control (PSC)",
            "type": "boolean",
            "description": "Beneficial owners: name, kind, natures of control, notified and ceased dates. For individuals only nationality is added, never address or date of birth. Extra charge per company.",
            "default": false
          },
          "includeFilings": {
            "title": "Add filing history",
            "type": "boolean",
            "description": "Latest filings with date, category, type, readable description and document link. Extra charge per company.",
            "default": false
          },
          "maxFilings": {
            "title": "Max filings per company",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Most recent filings first.",
            "default": 25
          },
          "filingCategories": {
            "title": "Filing categories",
            "type": "array",
            "description": "Only these filing categories. Empty means all.",
            "items": {
              "type": "string",
              "enum": [
                "accounts",
                "address",
                "annual-return",
                "capital",
                "change-of-name",
                "confirmation-statement",
                "incorporation",
                "liquidation",
                "miscellaneous",
                "mortgage",
                "officers",
                "resolution",
                "persons-with-significant-control"
              ],
              "enumTitles": [
                "Accounts",
                "Address",
                "Annual return",
                "Capital",
                "Change of name",
                "Confirmation statement",
                "Incorporation",
                "Liquidation",
                "Miscellaneous",
                "Mortgage",
                "Officers",
                "Resolution",
                "Persons with significant control"
              ]
            }
          },
          "includeCharges": {
            "title": "Add charges (mortgages)",
            "type": "boolean",
            "description": "Registered charges with status, dates, persons entitled and particulars, plus a summary of outstanding and satisfied charges. Extra charge per company.",
            "default": false
          },
          "maxCharges": {
            "title": "Max charges per company",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum charges listed per company.",
            "default": 25
          },
          "includeOfficers": {
            "title": "Add officers (personal data, off by default)",
            "type": "boolean",
            "description": "Directors, secretaries and LLP members. GDPR: officers are natural persons, so only name, role, appointment date and nationality are returned. Home addresses, birth dates and occupations are never copied. You become a data controller for this data under UK GDPR. Extra charge per company.",
            "default": false
          },
          "includeResignedOfficers": {
            "title": "Include resigned officers",
            "type": "boolean",
            "description": "By default only current officers are kept.",
            "default": false
          },
          "maxOfficers": {
            "title": "Max officers per company",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Maximum officer records read per company (current and resigned).",
            "default": 50
          },
          "requestsPer5Minutes": {
            "title": "Max API requests per 5 minutes",
            "minimum": 10,
            "maximum": 10000,
            "type": "integer",
            "description": "Companies House allows 600 requests per 5 minutes per key. The default leaves headroom. Lower it if other apps use the same key. Raise it only if Companies House granted you a higher limit.",
            "default": 550
          },
          "includeRaw": {
            "title": "Include raw company profile",
            "type": "boolean",
            "description": "Keep the original company profile JSON in the raw field. Officer and PSC raw data is never kept.",
            "default": false
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}