UK Charity Commission Search
Search the official Charity Commission register for England and Wales to retrieve structured data on 170,000+ registered charities. Look up charities by registration number or search by name to access activities, financials, trustees, contact details, area of operation, and registration status -- all via the official Charity Commission API.
Maintenance Pulse
90/100Cost Estimate
How many results do you need?
Pricing
Pay Per Event model. You only pay for what you use.
| Event | Description | Price |
|---|---|---|
| charity-fetched | Charged per charity record retrieved from the Charity Commission. | $0.002 |
Example: 100 events = $0.20 · 1,000 events = $2.00
Documentation
Search the official Charity Commission register for England and Wales to retrieve structured data on 170,000+ registered charities. Look up charities by registration number or search by name to access activities, financials, trustees, contact details, area of operation, and registration status -- all via the official Charity Commission API.
Why use this actor?
- No coding required -- skip building your own Charity Commission API integration. This actor handles authentication, rate limiting, retries, and data normalization out of the box.
- Two flexible search modes -- look up charities directly by registration number for precise results, or search by name when you do not know the number.
- Rich structured output -- get clean JSON with 22 fields per charity, ready for spreadsheets, databases, dashboards, or downstream automation.
- Free API access -- the Charity Commission API key costs nothing to obtain. Combined with Apify's free tier, you can run hundreds of lookups at zero cost.
- Schedule and automate -- set up recurring runs on Apify to monitor charity financials, trustee changes, or registration status over time.
Key features
- Direct charity number lookup -- provide one or more registration numbers (e.g., 1089464, 202918) for instant, precise data retrieval.
- Name-based search -- search the public register by charity name when you do not know the registration number. The actor scrapes the register website to find matching charity numbers, then fetches full details via the API.
- Comprehensive charity profiles -- every result includes name, status, activities description, contact email, phone, website, postal address, registration dates, and company number.
- Financial data -- retrieve the latest income and expenditure figures. Enable "Include Financial History" for multi-year income and spending records.
- Trustee information -- optionally fetch trustee names, chair status, and appointment dates for governance research.
- Area of operation -- see the geographic regions where each charity operates, including parent area classifications.
- Status filtering -- filter results to show only registered charities, only removed charities, or both.
- Built-in rate limiting -- automatic 429 retry logic with 5-second backoff and 300ms delays between charities to respect API limits.
- Dry-run mode -- run without an API key to validate your input configuration before making live API calls.
- API key validation -- the actor verifies your API key on startup and fails fast with a clear error message if the key is invalid.
How to use
Using the Apify Console
- Go to the UK Charity Commission Search actor page on Apify.
- Click Start to open the input form.
- Enter your Charity Commission API Key (get a free one at the developer portal).
- Provide your search criteria -- either enter charity registration numbers in the Charity Numbers field, or type a search term like
cancerin the Search Query field. - Optionally toggle Include Trustees and/or Include Financial History.
- Set the Status Filter and Max Results as needed.
- Click Start and download results from the dataset when the run completes.
Using the Apify API (JavaScript)
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('ryanclinton/uk-charity-commission').call({
apiKey: 'YOUR_CHARITY_COMMISSION_API_KEY',
charityNumbers: ['1089464', '202918'],
includeTrustees: true,
includeFinancials: true,
status: 'registered',
maxResults: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
Using the Apify API (Python)
from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('ryanclinton/uk-charity-commission').call(run_input={
'apiKey': 'YOUR_CHARITY_COMMISSION_API_KEY',
'query': 'cancer research',
'includeTrustees': True,
'includeFinancials': False,
'status': 'registered',
'maxResults': 10,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
for item in items:
print(f"{item['charityName']} -- Income: {item['income']}")
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
apiKey | String (secret) | Yes* | -- | Your Charity Commission API subscription key. Free from the developer portal. |
charityNumbers | String[] | No | -- | List of charity registration numbers to look up directly (e.g., ["1089464", "202918"]). |
query | String | No | -- | Search term to find charities by name on the public register (e.g., cancer, homeless shelter). |
includeTrustees | Boolean | No | false | Fetch trustee names, chair status, and appointment dates for each charity. |
includeFinancials | Boolean | No | false | Fetch multi-year financial history (income and expenditure by period) for each charity. |
status | String | No | "all" | Filter results by registration status: all, registered, or removed. |
maxResults | Integer | No | 25 | Maximum number of charities to return. Range: 1--100. |
*Without an API key, the actor runs in dry-run mode and outputs setup instructions instead of charity data.
Example input JSON:
{
"apiKey": "your-subscription-key-here",
"charityNumbers": ["1089464"],
"query": "cancer",
"includeTrustees": true,
"includeFinancials": true,
"status": "registered",
"maxResults": 25
}
Tips:
- Provide either
charityNumbersorquery(or both). If both are given, the actor combines the results. - If
queryis a number with 5+ digits, the actor treats it as a charity number and adds it to the lookup list. - Setting
maxResultslower speeds up runs, especially whenincludeTrusteesorincludeFinancialsare enabled.
Output
Each charity in the output dataset contains the following structure:
{
"charityNumber": 1089464,
"charityName": "BRITISH RED CROSS SOCIETY",
"registrationDate": "2001-07-20T00:00:00",
"removalDate": null,
"status": "Registered",
"activities": "The British Red Cross helps people in crisis, whoever and wherever they are...",
"contactEmail": "[email protected]",
"contactPhone": "0344 871 1111",
"websiteUrl": "http://www.redcross.org.uk",
"address": "UK Office, 44 Moorfields, London, EC2Y 9AL",
"income": 292400000,
"spending": 274300000,
"financialPeriodEnd": "2023-12-31T00:00:00",
"companyNumber": "RC000459",
"giftAid": "Yes",
"hasLand": true,
"isInsolvent": false,
"inAdministration": false,
"areaOfOperation": [
{
"geographic_area_type": "Country",
"geographic_area_description": "Throughout England And Wales"
}
],
"trustees": [
{
"trustee_name": "Mr David Bernstein CBE",
"trustee_is_chair": true,
"trustee_date_of_appointment": "2019-10-01T00:00:00"
}
],
"financialHistory": [
{
"fin_period_end_date": "2023-12-31T00:00:00",
"fin_period_start_date": "2023-01-01T00:00:00",
"income": 292400000,
"expenditure": 274300000
}
],
"charityCommissionUrl": "https://register-of-charities.charitycommission.gov.uk/charity-details/?regId=1089464&subId=0"
}
Output fields reference:
| Field | Type | Description |
|---|---|---|
charityNumber | Number | Official registration number on the Charity Commission register |
charityName | String | Registered name of the charity |
registrationDate | String/null | Date the charity was registered (ISO 8601) |
removalDate | String/null | Date the charity was removed from the register, if applicable |
status | String | Registration status -- Registered or Removed |
activities | String/null | Description of the charity's activities and purpose |
contactEmail | String/null | Public contact email address |
contactPhone | String/null | Public contact phone number |
websiteUrl | String/null | Official charity website URL |
address | String/null | Formatted postal address |
income | Number/null | Latest reported annual income in GBP |
spending | Number/null | Latest reported annual expenditure in GBP |
financialPeriodEnd | String/null | End date of the latest financial reporting period |
companyNumber | String/null | Companies House registration number, if the charity is also a company |
giftAid | String/null | Whether the charity is registered for Gift Aid with HMRC |
hasLand | Boolean/null | Whether the charity owns or occupies land |
isInsolvent | Boolean/null | Whether the charity is insolvent |
inAdministration | Boolean/null | Whether the charity is in administration |
areaOfOperation | Array/null | Geographic areas where the charity operates |
trustees | Array/null | List of trustees (only when includeTrustees is enabled) |
financialHistory | Array/null | Multi-year financial records (only when includeFinancials is enabled) |
charityCommissionUrl | String | Direct link to the charity's page on the Charity Commission register |
Use cases
- Due diligence and grant making -- verify charity registration status, review financials, and check trustees before awarding grants or entering partnerships.
- Nonprofit sector research -- collect data on charities in a specific sector (health, education, environment) to analyze trends in income, spending, and activity.
- Compliance monitoring -- track insolvency status, administration flags, and registration changes for charities in your supply chain or investment portfolio.
- Journalism and investigations -- cross-reference trustee names across multiple charities, trace financial patterns, and identify connected organizations.
- Charity directory building -- extract contact details, websites, and activity descriptions to build curated directories for specific causes or regions.
- Fundraising intelligence -- analyze charity income trends and financial health to identify potential fundraising partners or competitors.
- Academic research -- gather structured datasets on the charity sector for studies on nonprofit governance, financial sustainability, or geographic distribution.
- Corporate social responsibility -- identify registered charities operating in specific geographic areas to support local community engagement programmes.
- Regulatory analysis -- track charity removals and status changes to understand regulatory enforcement patterns.
- Cross-border nonprofit mapping -- combine with US nonprofit data from ProPublica to compare charity sectors across the UK and US.
API & integration
Python
from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('ryanclinton/uk-charity-commission').call(run_input={
'apiKey': 'YOUR_CC_API_KEY',
'charityNumbers': ['1089464'],
'includeTrustees': True,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
JavaScript
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('ryanclinton/uk-charity-commission').call({
apiKey: 'YOUR_CC_API_KEY',
charityNumbers: ['1089464'],
includeTrustees: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
cURL
curl "https://api.apify.com/v2/acts/ryanclinton~uk-charity-commission/runs" \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_APIFY_TOKEN" \
-d '{
"apiKey": "YOUR_CC_API_KEY",
"charityNumbers": ["1089464"],
"includeTrustees": true
}'
Integrations: Connect this actor to Google Sheets, Slack, Zapier, Make (Integromat), GitHub, or any webhook-compatible service using Apify's built-in integrations. Schedule runs for automated monitoring.
How it works
- Input validation -- the actor reads your input and checks for an API key. Without a key, it outputs a dry-run message with setup instructions.
- API key verification -- the actor makes a test call to the Charity Commission API to confirm the key is valid before proceeding.
- Charity number collection -- if
charityNumbersare provided, they are parsed and added to the lookup list. If aqueryis provided, the actor searches the register website HTML to extract matching charity numbers. - Data retrieval -- for each charity number, the actor calls the
allcharitydetailsAPI endpoint. If that returns no data, it falls back to thecharityoverviewendpoint. It also fetchescharityareaofoperationfor every charity. - Optional enrichment -- if
includeTrusteesis enabled, thecharitytrusteesendpoint is called. IfincludeFinancialsis enabled, thecharityfinancialhistoryendpoint is called. - Status filtering -- results are filtered by the
statusparameter (registered, removed, or all). - Output -- all charity records are pushed to the Apify dataset as structured JSON.
Input (numbers / query)
|
v
+------------------+
| Validate API key |
+------------------+
|
v
+------------------+ +---------------------+
| Direct numbers |---->| Collect charity IDs |
| Name search |---->| |
+------------------+ +---------------------+
|
v
+------------------+
| For each charity |
+------------------+
| | |
v v v
Details Trustees Financials
| | |
v v v
+------------------+
| Filter by status |
+------------------+
|
v
+------------------+
| Push to dataset |
+------------------+
Performance & cost
| Metric | Value |
|---|---|
| Charities per run | 1--100 |
| Avg. time per charity (basic) | ~0.5 seconds |
| Avg. time per charity (with trustees + financials) | ~1.5 seconds |
| Typical run time (25 charities, basic) | ~15 seconds |
| Typical run time (25 charities, full data) | ~45 seconds |
| Memory usage | 256 MB |
| Estimated cost per run (25 charities) | ~$0.001--$0.005 |
| Charity Commission API key cost | Free |
| Apify free tier monthly credits | $5 (hundreds of runs) |
Limitations
- England and Wales only -- the Charity Commission register covers charities in England and Wales. Scottish charities (OSCR) and Northern Irish charities are not included.
- API key required -- a free Charity Commission API key is required for live data. Without it, the actor runs in dry-run mode only.
- Maximum 100 results per run -- the actor caps results at 100 charities per execution. For larger datasets, run the actor multiple times with different charity number batches.
- Name search reliability -- name-based search scrapes the register website HTML, which may change without notice. Direct charity number lookup is always more reliable.
- Rate limiting -- the Charity Commission API enforces rate limits. The actor handles 429 responses with automatic retries, but very large batches may take longer due to backoff delays.
- No full-text activity search -- the name search matches charity names only, not activity descriptions or other fields.
- Data freshness -- data reflects what is currently published on the Charity Commission register. There may be a lag between a charity filing and the register updating.
Responsible use
- Respect the Charity Commission API terms of service -- use your API key responsibly and avoid excessive request volumes that could degrade service for other users.
- Handle personal data appropriately -- trustee names are personal data. Ensure your use of this information complies with UK GDPR and the Data Protection Act 2018.
- Attribute the data source -- when publishing or sharing data obtained through this actor, credit the Charity Commission for England and Wales as the data source.
- Use reasonable request volumes -- the actor includes built-in delays (300ms between charities, 5-second backoff on rate limits) to be respectful to the API. Do not modify or bypass these limits.
- Do not use for harassment -- contact information (email, phone, address) is provided for legitimate research and communication purposes. Do not use it for spam or unsolicited marketing.
FAQ
Do I need an API key to use this actor? Yes, a Charity Commission API key is required for live data retrieval. The key is free -- sign up at https://api-portal.charitycommission.gov.uk/signup. Without a key, the actor runs in dry-run mode and shows instructions for obtaining one.
How do I get a free Charity Commission API key? Visit the Charity Commission developer portal, create an account, and subscribe to the register API. Your subscription key will be available in your portal profile immediately.
Does this cover charities in Scotland or Northern Ireland? No. The Charity Commission for England and Wales only covers charities registered in England and Wales. Scottish charities are regulated by OSCR (Office of the Scottish Charity Regulator), and Northern Irish charities by the Charity Commission for Northern Ireland.
How current is the data? The data comes directly from the live Charity Commission register API, so it reflects the most recently published information. There may be a short lag between a charity filing and the register updating.
Can I search by charity name if I do not know the registration number?
Yes. Enter your search term in the query field. The actor searches the public register website, extracts matching charity numbers, and then fetches full details for each via the API.
What does the Gift Aid field mean?
The Gift Aid field indicates whether the charity is registered with HMRC to claim Gift Aid on eligible donations from UK taxpayers. Values are typically Yes or No.
What is the maximum number of charities I can look up per run?
The actor supports up to 100 charities per run via the maxResults parameter. For larger datasets, run the actor multiple times with different batches of charity numbers.
Why do some fields return null?
Null values mean the data is not available for that charity on the register. Removed charities may have fewer fields populated. Additionally, trustees and financialHistory return null unless you enable includeTrustees and includeFinancials respectively.
Can I combine charity number lookup with a name search?
Yes. If you provide both charityNumbers and a query, the actor combines the results. Duplicate charity numbers are automatically de-duplicated.
How does the status filter work?
Set status to registered to get only active charities, removed to get only charities that have been removed from the register, or all (default) to get both. The filter is applied after data retrieval.
What happens if the API rate limits my requests? The actor automatically detects 429 (rate limited) responses from the Charity Commission API, waits 5 seconds, and retries the request. This is handled transparently -- you do not need to take any action.
Can I use this actor with Zapier, Make, or Google Sheets? Yes. Apify offers built-in integrations with Zapier, Make (Integromat), Google Sheets, Slack, GitHub, and more. You can trigger the actor and pipe results into any of these platforms automatically.
Related actors
| Actor | Description |
|---|---|
| UK Companies House | Search UK registered companies and directors. Use the companyNumber field from charity results to cross-reference. |
| OpenCorporates Search | Search 200M+ companies from 140+ jurisdictions worldwide. |
| ProPublica Nonprofit Explorer | Search US nonprofit organizations and tax filings for cross-border research. |
| UK Food Hygiene Ratings | Search food hygiene ratings for UK businesses and establishments. |
| UK Land Registry | Search UK property sale prices and transaction records. |
| UK Police Crime Data | Search UK police crime records by location for area safety research. |
How it works
Configure
Set your parameters in the Apify Console or pass them via API.
Run
Click Start, trigger via API, webhook, or set up a schedule.
Get results
Download as JSON, CSV, or Excel. Integrate with 1,000+ apps.
Use cases
Sales Teams
Build targeted lead lists with verified contact data.
Marketing
Research competitors and identify outreach opportunities.
Data Teams
Automate data collection pipelines with scheduled runs.
Developers
Integrate via REST API or use as an MCP tool in AI workflows.
Related actors
Bulk Email Verifier
Verify email deliverability at scale. MX record validation, SMTP mailbox checks, disposable and role-based detection, catch-all flagging, and confidence scoring. No external API costs.
GitHub Repository Search
Search GitHub repositories by keyword, language, topic, stars, forks. Sort by stars, forks, or recently updated. Returns metadata, topics, license, owner info, URLs. Free API, optional token for higher limits.
Website Content to Markdown
Convert any website to clean Markdown for RAG pipelines, LLM training, and AI apps. Crawls pages, strips boilerplate, preserves headings, tables, and code blocks. GFM support.
Website Tech Stack Detector
Detect 100+ web technologies on any website. Identifies CMS, frameworks, analytics, marketing tools, chat widgets, CDNs, payment systems, hosting, and more. Batch-analyze multiple sites with version detection and confidence scoring.
Ready to try UK Charity Commission Search?
Start for free on Apify. No credit card required.
Open on Apify Store