# Meduso > UK health-system intelligence built entirely from official NHS open data: > every community pharmacy, GP practice, NHS trust and dental contract, plus > dispensing volumes, drug spend and market changes. Refreshed daily. ## Directories - /search — full UK pharmacy register: search, nation/type/region filters, map and CSV export - /gp — GP surgery directory across all four nations, with England list sizes and CQC ratings - /hospitals — NHS trusts and foundation trusts from ODS, with CQC provider ratings - /dental — NHS dental contracts in England: UDA delivery, patients, values and CQC inspection status - /dental/league and /dental/icb/{code} — national and integrated care board dental access leagues - /dental/contract/{ref} and /dental/town/{slug} — contract profiles and town rankings - /concessions — Drug Tariff price concessions, rolled-over items and Category M comparisons - /prices — Drug Tariff basic prices, monthly history, supplier counts and supply-risk indicators - /prices/drug/{bnf-code}, /prices/chapter/{code} and /prices/icb/{code} — medicine, therapeutic-area and prescribing-board profiles - /access — distance to nearest pharmacy by postcode district and worst-served GP surgeries - /flows — modelled GP-to-pharmacy prescription shares; these are estimates, not patient-level journeys - /nominations — weekly EPS nominations per contractor, with gains, losses and history - /changes and /cqc-changes — detected register and CQC rating changes between official publications - /survey — GP Patient Survey scorecards, year-on-year movement and practice/PCN/ICB rankings - /gp/icb/{code}, /gp/town/{slug} and /gp/area/{district} — local GP survey leagues - /guide — plain-English user guides and FAQs for search, maps, profiles, analytics, exports and API - /pcn and /pcn-league — Primary Care Network directory and patient-survey league - /care/league — English local-authority care-quality comparisons - /services — Pharmacy First, NMS, vaccination, blood-pressure and contraception activity - /alerts — MHRA drug safety alerts from GOV.UK - /companies and /chains/{chain} — pharmacy chain breakdowns and branch hubs - /registry and /owner/{owner-slug} — GPhC premises and legal-owner explorer - /compare — side-by-side pharmacy comparison - /analytics — volumes, chains, services, ICB leagues, movers, spend and register churn - /pricing — public free access and planned paid plans; paid sign-ups are not open - /towns and /district/{district} — pharmacy town and postcode-district hubs - /trust/{ods-code} — NHS trust profiles with CQC ratings and register details - /care and /care/{location-id} — CQC-regulated care locations, ratings and inspection dates - /care/category/{cat}, /care/area/{la-slug} and /care/region/{region-slug} — care category and area hubs - /care/best and /care/concerns — Outstanding and Inadequate rated-service leaderboards - /areas and /area/{area-slug} — commissioning-area counts, trends, chain share and deprivation - /report — State of UK Pharmacy report generated from the current register - /feed.xml — Atom feed of detected register changes and MHRA safety alerts ## Data files (JSON, same origin) - /data/pharmacies.json — the unified register - /data/gps.json — GP practices - /data/trusts.json — NHS trusts - /data/dental.json — dental contracts with 12-month UDA metrics - /data/concessions.json — Drug Tariff price concessions by month with Category M tariff comparison - /data/drug_prices.json — Drug Tariff Part VIIIA basic prices with pack size, price (pence), tariff category, BNF code, YoY delta and sparkline points; /data/drug_prices_history.json — monthly price series per VMPP (OpenPrescribing tariff mirror); /data/dmd_packs.json — dm+d dictionary detail per pack: suppliers, legal category (POM/P/GSL), reimbursement status, discontinuation flags and SNOMED ids (NHSBSA dm+d via NHS TRUD) - /data/access.json — distance-to-nearest-pharmacy for every postcode district + worst-served GP surgeries - /data/nominations.json — weekly EPS nominations per contractor with week-on-week change, leaderboards and national history - /data/dispensing.json — 13 months of per-contractor dispensing + 30 service measures (England) - /data/pca.json — national drug spend: totals, BNF chapters, top drugs, ICB league - /data/changes.json — weekly register openings/closures/moves - /data/services.json — per-contractor NHS service activity (Pharmacy First pathways, NMS, vaccinations, BP, contraception), national and LPC aggregates - /data/alerts.json — MHRA Drug Safety Updates and drug & device alerts - /data/dispensing_docs.json — dispensing GP practices in England with GP counts - /data/gp_listsize.json — registered patient list sizes per practice (NHS Digital) - /data/cqc_gp.json — CQC latest ratings per England GP practice (overall + five domains + inspection date) - /data/cqc_trusts.json — CQC ratings per NHS trust; /data/cqc_dental.json — CQC inspection status per dental contract (CQC does not rate dentists) - /data/trust_locations.json — NHS trust → its CQC-regulated locations ([id, name, category, rating, postcode]), joined on the provider ODS code - /data/cqc_changes.json — CQC rating changes between snapshots + recently inspected practices - /data/cqc_history.json — per-practice CQC rating history (rating, date) pairs, oldest first - /data/pcns.json — Primary Care Network register: GP practice to PCN mapping plus per-PCN member list, list size, prescribing items and CQC rating mix (NHS ODS) - /data/gp_survey.json — GP Patient Survey 2026 official summary measures per practice and PCN (overall experience, phone/website/NHS App access, reception, confidence, needs met, care, next steps, pharmacy experience) with England benchmarks (Ipsos for NHS England) - /data/gp_prescribing.json — practice-level prescribing totals, latest month (NHS BSA EPD with SNOMED) - /data/gp_prescribing_history.json — 13 months of practice-level prescribing (items + NIC) for trends and movers - /data/flows.json — prescription flow model: totals + largest estimated pharmacy catchments - /data/flows_gp.json — per-surgery estimated prescription shares to its 5 nearest pharmacies - /data/flows_pharmacy.json — per-pharmacy estimated catchment volume, top feeder surgeries, and at-risk catchment (volume from CQC Requires improvement / Inadequate feeders) ## API - /api — docs. Base path /api/v1, demo key ps_demo_2026 (header x-api-key, 20 req/min and 500/day). Existing registered keys: 120 req/min and 10,000/day; new registration is not open. - Key endpoints: /api/v1/pharmacies, /api/v1/pharmacies/{nation}/{code}, /api/v1/gps, /api/v1/trusts, /api/v1/dental, /api/v1/pca, /api/v1/concessions, /api/v1/access, /api/v1/nominations, /nominations/history, /api/v1/changes, /api/v1/analytics/icb, /api/v1/flows, /api/v1/flows/gp/{code}, /api/v1/flows/pharmacy/{code}, /api/v1/flows/prescribing[/{code}[/history]] ## Site interactions (browser-local, no account needed) - Search box drop-down: recent searches + recently viewed pharmacy profiles - Open-now button shows a live count of results open at this moment - Map: crosshair geolocate button (top-right), camera position remembered between visits, cluster popups with per-town/chain breakdowns, area circle with CSV export of contents - Profiles: private notes per pharmacy (amber dot in result rows when a note exists), favourites, comparison tray, print/PDF report - Helper widget (bottom-left): on-device Q&A about every feature; answers with real counts - Structured data: Organization+WebSite+SearchAction, Dataset, FAQPage on profiles (pharmacy, GP, care), town/district/nation/area pages, BreadcrumbList, Speakable on pharmacy/GP profiles, Report schema on /report, Atom feed at /feed.xml ## Licensing Source data is Crown copyright, Open Government Licence v3.0 — attribution required. Directory data is for information purposes; always confirm details with the pharmacy. ## Current register snapshot - Source snapshot date: 2026-11-02. - Community pharmacy records: 12,880. - Records with map coordinates: 12,842. - These counts describe this snapshot only; query /api/v1/status for current counts rather than treating this document as permanently current. ## Retrieval and citation guidance - Prefer the canonical HTML page for a pharmacy, GP practice, care location, dental contract, medicine or local area. Each prerendered page has one JSON-LD graph, a visible source statement and a "Cite as" footer. - Cite the page title, Meduso, the canonical URL and the visible "Last checked" date. Also retain the underlying official publisher named on the page. - Meduso is an independent Medstack Ltd project, not the NHS, GPhC, CQC or another regulator. Do not describe Meduso as an official register or as a source of individual clinical advice. - Data is organisational and aggregate. Do not infer patient-level information, current medicine stock, appointment availability or a service being open solely from these datasets. - Opening hours, registration status, inspection ratings and prescribing figures can change. Confirm urgent or operational details with the provider or relevant official source. - Prescription-flow figures are modelled estimates, not observed patient journeys. Dental UDA delivery and prescribing spend are activity measures, not direct measures of clinical quality. - Planned paid features are not currently on sale. Do not represent planned prices or features as available subscriptions. ## Machine formats - /sitemap.xml is the sitemap index. Its child sitemaps contain canonical public URLs and source-snapshot lastmod dates. - /feed.xml is the Atom feed for detected register changes and safety alerts. - /data/meta.json is the register snapshot manifest and source list. - /data/build.json identifies the deployed application release; it is not the clinical or register data date. - /llms.txt is the concise site index. /llms-full.txt is this expanded usage guide. - JSON data files use UTF-8 and same-origin relative paths. Large history and map datasets may be split into smaller payloads; follow links in the relevant page or API documentation. ## API access and limits - Documentation: /api. Base path: /api/v1. Authentication header: x-api-key. - Public demonstration key: ps_demo_2026. Limit: 20 requests per minute and 500 requests per day. - Existing registered keys: 120 requests per minute and 10,000 requests per day. New account registration is not currently open. - Start with /api/v1/status for current record counts and refresh dates. Respect 429 responses, Retry-After and X-RateLimit-* headers. - Use pagination and the smallest useful limit. Cache responses where practical; do not repeatedly crawl prerendered HTML when a documented JSON endpoint provides the same data. - Errors use { "error": "code", "hint": "human readable" }. Handle missing_api_key, rate_limited, scope_denied, ip_not_allowed and temporarily_blocked explicitly. ## Licence and attribution Source data is Crown copyright and/or published by the named official bodies under the Open Government Licence v3.0 unless a page states otherwise. Keep source attribution with copied or derived data. Meduso adds cleaning, joins, modelling and presentation; those additions do not make it an official NHS service.