# gankdat > UK planning applications; UK procurement notices; UK contract awards (Contracts Finder); UK sanctions designations; EU procurement notices (TED); US federal exclusions (SAM.gov); UK corporate insolvency notices; UK new company incorporations; UK food hygiene ratings (FSA); UK licensed visa sponsors (Home Office); Charities in England & Wales (Charity Commission); Regulated care locations in England (CQC); Schools and colleges in England (GIAS + Ofsted); NHS organisations in England (ODS register); UK trade mark applications published for opposition (Trade Marks Journal); Licensed gambling operators in Great Britain (Gambling Commission register); UK company lookup (Companies House) — as clean JSON, one schema, refreshed daily from official > government feeds; no scraping. Built for developers and AI agents. Native > MCP server + x402 pay-per-request. Licence and personal-data posture are > stated per dataset in https://gankdat.com/terms (OGL v3 sources; Blind Mode where > stated; sanctions data served as published, minimized, for compliance use). Base URL: https://gankdat.com Machine-readable spec: https://gankdat.com/openapi.json ## Auth & pricing - Free key: sign in at https://gankdat.com/account (email magic link) and create a key → 250 requests/month, no card. Agents without a key can pay per request via x402 (see below) — no signup. - Agents can sign the user up without a browser: POST https://gankdat.com/v1/auth/agent-signup {"email":"…","client_name":"…"} (or the MCP tool request_api_key) emails the user a one-click approval link with a short code; show them the code, then POST https://gankdat.com/v1/auth/agent-signup/claim {"request_id","claim_secret"} (or claim_api_key) every 15 s until status is "approved" — it returns the key once. No key needed for these two calls. - MCP clients that follow a 401 challenge (Claude, Cursor, ChatGPT) sign the user in with OAuth instead: https://gankdat.com/.well-known/oauth-protected-resource/mcp names the issuer (CIMD + PKCE, no client secret); the connect_account tool, or a spent preview budget, triggers it. Tokens bill the account like a key. - Send the key as `Authorization: Bearer fapi_...` on every data request. - 1 credit = 1 request; paid plans from £5/mo (billed GBP/USD/EUR by location); usage at GET /v1/usage (free). - Every response: {"ok":true,"data":[...],"meta":{...}} or {"ok":false,"error":{"code","message","docs_url"}}. ## Datasets - GET https://gankdat.com/v1/data — list sources and their filter params (public). - GET https://gankdat.com/v1/data/uk-planning — Planning applications from the official planning.data.gov.uk feed, normalized to one schema. Blind Mode: no applicant personal data. Filters: reference, authority, decision_date_after, decision_date_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-tenders — Public procurement notices from the official Find a Tender OCDS feed, flattened to one queryable schema. Blind Mode: no contact or personal data. Filters: buyer, status, procurement_method, cpv_codes, value_amount_min, value_amount_max, published_at_after, published_at_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-contract-awards — Who won which UK public-sector contract, for how much: award notices from the official Contracts Finder OCDS feed flattened to one row per award and supplier — buyer, supplier and its company number, award value and date, contract period, CPV codes, category and procurement method. Rolling window of the last two weeks of awards, refreshed daily. Organisation-level data only. Filters: buyer, supplier, supplier_company_number, category, procurement_method, cpv_codes, award_value_amount_min, award_value_amount_max, award_date_after, award_date_before, published_at_after, published_at_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-sanctions — Every designation on the official UK Sanctions List (FCDO) — individuals, entities, and ships, with regimes, aliases, and dates — normalized for supplier due diligence. Served as published by government for compliance purposes; dates of birth, identity documents, and contact details are dropped at ingest. Filters: unique_id, name, regime, designation_type, designation_source, countries, date_designated_after, date_designated_before, last_updated_after, last_updated_before, page, per_page, q. - GET https://gankdat.com/v1/data/eu-ted — Contract notices and awards from TED (Tenders Electronic Daily), the official EU procurement journal — buyer, country, CPV codes, values, and deadlines across all member states, normalized for bid intelligence. Blind Mode: only organisation-level fields are ingested. Filters: buyer, buyer_country, notice_type, procedure_type, contract_nature, cpv_codes, places_of_performance, value_amount_min, value_amount_max, published_at_after, published_at_before, deadline_at_after, deadline_at_before, page, per_page, q. - GET https://gankdat.com/v1/data/sam-exclusions — Every active exclusion (debarment) on the official US SAM.gov list — individuals, firms, special entities, and vessels barred from federal awards, with agency, program, and dates — normalized for supplier due diligence. Served as published by the US government for compliance purposes; all addresses, identifiers (SSN/TIN/NPI), and free-text comments are dropped at ingest. Filters: name, classification, exclusion_type, exclusion_program, excluding_agency, excluding_agency_name, uei_sam, cage_code, activation_date_after, activation_date_before, termination_date_after, termination_date_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-insolvency — The latest corporate insolvency notices from The Gazette (official UK public record) — winding-up petitions and orders, administrator, receiver and liquidator appointments, moratoria, and creditor notices, company-level facts only. Blind Mode: person fields and notice text in the source are never ingested. Filters: company, notice_type, notice_code, published_at_after, published_at_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-companies — The newest companies on the UK register, from the official Companies House API — name, number, type, SIC codes, incorporation date, and registered-office area, refreshed daily. Blind Mode: company-level fields only; officer and PSC data are never ingested, and address lines are dropped in favour of locality/postcode. Filters: company, company_number, status, company_type, sic_codes, locality, postal_code, incorporated_on_after, incorporated_on_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-food-hygiene — Every food business rated under the UK Food Hygiene Rating Scheme (England, Wales, Northern Ireland; Scotland FHIS) from the official Food Standards Agency open-data file — business name, type, trading address and area, local authority, rating value and date, hygiene/structural/confidence sub-scores, new-rating-pending flag and coordinates, keyed by the stable FHRSID. Refreshed daily. Operator comments are dropped at ingest; rating artwork is not served. Filters: business_name, business_type, postcode, outward_code, local_authority, local_authority_code, rating_value, scheme_type, rating_date_after, rating_date_before, hygiene_score_min, hygiene_score_max, structural_score_min, structural_score_max, confidence_score_min, confidence_score_max, new_rating_pending, page, per_page, q. - GET https://gankdat.com/v1/data/uk-sponsors — Every organisation on the Home Office register of licensed sponsors for Worker and Temporary Worker visa routes — organisation name, town and county, sponsor type, licence rating, and the immigration route (Skilled Worker, Global Business Mobility, Creative Worker, and more). One row per organisation and route, from the official GOV.UK publication, refreshed on every republication (most working days). Organisation-level data only. Filters: organisation, town, county, sponsor_type, rating, route, page, per_page, q. - GET https://gankdat.com/v1/data/uk-charities — Every registered and removed charity on the Charity Commission register for England and Wales — name, charity and organisation numbers, type, registration status and dates, reporting status, latest income and expenditure, postcode area, company number, website, insolvency/administration/CIO flags, and the charity's own activities summary. From the official daily public extract; contact address lines, phone, email and trustee names are never ingested. Filters: name, registered_charity_number, organisation_number, charity_type, registration_status, reporting_status, postcode, outward_code, company_number, date_of_registration_after, date_of_registration_before, date_of_removal_after, date_of_removal_before, latest_income_min, latest_income_max, insolvent, in_administration, is_cio, gift_aid, website_present, page, per_page, q. - GET https://gankdat.com/v1/data/uk-care-locations — Every health and social care location regulated by the Care Quality Commission in England — hospitals, care homes, GP practices, dentists, homecare agencies, hospices, ambulance services — with service types, specialisms, provider, address and area, local authority, region, and the date of the latest CQC check. From the official weekly CQC care directory, keyed by the stable CQC location id. Phone numbers are dropped at ingest; registered-manager names are never ingested. Filters: name, provider_name, provider_id, service_types, specialisms, local_authority, region, postcode, outward_code, latest_check_date_after, latest_check_date_before, website_present, page, per_page, q. - GET https://gankdat.com/v1/data/uk-schools — Every school, academy, college and nursery on the Department for Education register (Get Information About Schools) — URN, name, type and phase, open/closed status, local authority and region, address and postcode, website, capacity and pupils on roll, age range, and the academy trust — joined by URN to the latest published Ofsted inspection outcome and inspection date. From the official daily GIAS extract and Ofsted’s monthly inspection management information. Head-teacher names and telephone numbers are dropped at ingest; the governors extract is never ingested. Filters: name, urn, establishment_type, phase, status, local_authority, region, town, postcode, outward_code, trust_name, ofsted_rating, pupils_min, pupils_max, website_present, ofsted_last_inspection_after, ofsted_last_inspection_before, open_date_after, open_date_before, page, per_page, q. - GET https://gankdat.com/v1/data/nhs-ods — Every GP practice, NHS trust and trust site, pharmacy, dental practice and independent-sector healthcare provider on the NHS Organisation Data Service register for England — ODS code, name, organisation type, active/closed status, NHS England region and integrated care board codes, address and postcode, open and close dates, parent organisation (commissioner or trust) and, for GP practices, the prescribing setting. From the official nightly ODS extracts, keyed by the stable ODS code. Telephone numbers are dropped at ingest; the practitioner files (named GPs and dentists) are never ingested. Filters: ods_code, name, org_type, status, national_grouping, health_geography, town, postcode, outward_code, parent_code, prescribing_setting, open_date_after, open_date_before, close_date_after, close_date_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-trademark-journal — Every UK trade mark application and international registration designating the UK accepted and published in the Intellectual Property Office’s weekly Trade Marks Journal — application number, mark text and type, Nice classes and goods/services, applicant organisation and country, representative firm, filing and priority dates, journal issue, publication date and the two-month opposition deadline. Rolling 52 weekly issues (about a year); the change feed lists each week’s new publications. Applicant names are kept only for organisations; addresses reduced to country; mark images never stored. Filters: application_number, journal_number, mark_text, mark_type, classes, class_count_min, class_count_max, goods_services, applicant, applicant_type, applicant_country, representative, origin, section, publication_date_after, publication_date_before, opposition_deadline_after, opposition_deadline_before, filing_date_after, filing_date_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-gambling-operators — Every operating licence on the Gambling Commission register for Great Britain — remote and non-remote betting, casino, bingo, gaming-machine, lottery and gambling-software licences with status, activities, start and end dates and the operator's trading names — plus the website domains registered against each operator and every licensed premises (betting shops, casinos, bingo halls, arcades) with activity, licensing authority and address. One row per licence, domain or premises (record_type), keyed by the stable licence number or premises key. From the Commission's daily public register files; personal licences held by individuals are never ingested. Filters: record_type, account_number, operator_name, licence_number, status, is_active, licence_type, activities, trading_names, domain_name, local_authority, city, postcode, outward_code, start_date_after, start_date_before, end_date_after, end_date_before, page, per_page, q. - GET https://gankdat.com/v1/data/uk-company-profiles — One UK company by number or name, live from the official Companies House API: profile, status, type, SIC codes, registered-office area, accounts and confirmation-statement dates and overdue flags, charges, the latest filing events and corporate persons with significant control. Blind Mode: officers and individual PSCs are never ingested — filing events carry the category code, not the name. Cached 24 h. One record per request, named by company_number or company (e.g. ?company_number=00000006). Filters: company_number, company, page, per_page, q. ## Change feeds (what changed since a date) Register datasets diff themselves against the previous day's refresh, so an agent polls the delta instead of re-reading a whole register — no competitor publishes official-source deltas. Rows added, removed or changed, newest first, 90-day history, 1 credit per page: a daily diff of every register fits the free tier. - GET https://gankdat.com/v1/changes/sam-exclusions — US federal exclusions (SAM.gov) - GET https://gankdat.com/v1/changes/uk-food-hygiene — UK food hygiene ratings (FSA) - GET https://gankdat.com/v1/changes/uk-sponsors — UK licensed visa sponsors (Home Office) - GET https://gankdat.com/v1/changes/uk-charities — Charities in England & Wales (Charity Commission) - GET https://gankdat.com/v1/changes/uk-care-locations — Regulated care locations in England (CQC) - GET https://gankdat.com/v1/changes/uk-schools — Schools and colleges in England (GIAS + Ofsted) - GET https://gankdat.com/v1/changes/nhs-ods — NHS organisations in England (ODS register) - GET https://gankdat.com/v1/changes/uk-trademark-journal — UK trade mark applications published for opposition (Trade Marks Journal) - GET https://gankdat.com/v1/changes/uk-gambling-operators — Licensed gambling operators in Great Britain (Gambling Commission register) - Keyless Atom feeds of the same rows (last 7 days): https://gankdat.com/feeds/.xml — every feed is listed at https://gankdat.com/feeds and as one OPML file at https://gankdat.com/feeds/opml. Params: since (YYYY-MM-DD, default 7 days ago), change (added|removed|changed), page, per_page, plus the dataset's own filters and q applied to the changed record (a watch in one call, e.g. /v1/changes/uk-trademark-journal?classes=09&q=). - MCP tool: get_changes (source, since, change, filter). Activity per day is shown on each dataset's /stats page. ## For AI agents - MCP server (Streamable HTTP): https://gankdat.com/mcp — anonymous initialize, tools/list and the two sign-up tools; data tools use the same bearer key. Tools: list_sources, get_usage, request_api_key, claim_api_key, get_changes, query_uk_planning, query_uk_tenders, query_uk_contract_awards, query_uk_sanctions, query_eu_ted, query_sam_exclusions, query_uk_insolvency, query_uk_companies, query_uk_food_hygiene, query_uk_sponsors, query_uk_charities, query_uk_care_locations, query_uk_schools, query_nhs_ods, query_uk_trademark_journal, query_uk_gambling_operators, query_uk_company_profiles. Structured JSON results with credits_remaining in meta. - x402 v2 pay-per-request (no account, USDC on Base; discovery metadata for the x402 Bazaar): GET /x402/data/{source} → HTTP 402 whose PAYMENT-REQUIRED header carries the price, the query schema and an output example → pay → retry with PAYMENT-SIGNATURE. ~$0.005/request. GET /x402/changes/{source} is the same lane for what changed since a date (registers with a change feed; $0.01/request). ## Docs - Human docs: https://gankdat.com/docs - Dataset statistics (citable, computed daily): https://gankdat.com/stats — one page per dataset at /stats/{slug} - Quickstart: get a key, then curl -H "Authorization: Bearer fapi_..." "https://gankdat.com/v1/data/uk-planning?per_page=3"