A Python client for the Companies House API
Project description
Companies House API Library
A Python client for interacting with the Companies House API.
Installation
This library is available on PyPI and can be installed with pip:
pip install companies-house-api-lib
Usage
To use the client, you need to have a Companies House API key. You can get one from the Companies House developer portal.
Once you have your key, you can either pass it to the client directly or set it as an environment variable named COMPANIES_HOUSE_API_KEY.
from companieshouse import CompaniesHouseClient
# Option 1: Pass the key directly
client = CompaniesHouseClient(api_key="YOUR_API_KEY")
# Option 2: Use an environment variable
# export COMPANIES_HOUSE_API_KEY="YOUR_API_KEY"
client = CompaniesHouseClient()
# Search for companies
search_results = client.search_companies("python")
print(search_results)
# Get a company profile
if search_results.get("items"):
company_number = search_results["items"][0]["company_number"]
company_profile = client.get_company_profile(company_number)
print(company_profile)
Testing
A test file (test_library.py) is included in this repository. To run the tests, you will need to have your Companies House API key set as an environment variable.
export COMPANIES_HOUSE_API_KEY="YOUR_API_KEY"
python test_library.py
Available API Calls
Here is a list of the available API calls in this library:
search_all(query): Searches for all records in the Companies House API.search_companies(query): Searches for companies.get_company_profile(company_number): Gets the profile of a company.get_company_officers(company_number): Gets the company officers.get_company_filing_history(filing_history_url): Gets the company filing history.get_company_registered_office_address(company_number): Gets the company office address.get_company_registers(company_number): Gets the company registers details.get_company_charges(company_number): Gets the company charges details.get_company_insolvency(company_number): Gets the company insolvancy details.get_company_exemptions(company_number): Gets the company exemptions details.get_corporate_officer_disqualifications(officer_id): Gets the corporate officer disqualifications.get_natural_officer_disqualifications(officer_id): Gets the natural officer disqualifications.get_office_appointments(officer_id): Gets the officer appointments.get_company_uk_establishments(company_number): Gets the company insolvancy details.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file companies_house_api_lib-0.3.tar.gz.
File metadata
- Download URL: companies_house_api_lib-0.3.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
79d630bdb7b3a84b69f0e94bbb9aa828798fa4657858d8bf48ab6f34b858d4d6
|
|
| MD5 |
e98299f2a510a27bb938327f46afb1e4
|
|
| BLAKE2b-256 |
e5bb21d9d1ef24477faec936851e8c95425e3b7961f8bc5968ea3647a3c6d899
|
File details
Details for the file companies_house_api_lib-0.3-py3-none-any.whl.
File metadata
- Download URL: companies_house_api_lib-0.3-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09dd2b5e3b6547608890b1a0dd7b82ff616197e5be99f8f9a87566f608224959
|
|
| MD5 |
34a21db616b9d352cdb0c45f2e49e372
|
|
| BLAKE2b-256 |
a8eef08484460e1569342205d6e5784e47997e08d7d42066037b637ca53f048e
|