Developers · Free API
Free UK Parliament API
A free, read-only JSON API for the UK House of Commons — MP voting records, MPs and parties, Commons divisions (recorded votes), and Early Day Motions. Query how MPs voted, who sits for which constituency, and how each party splits — from official UK Parliament open data, no API key required. Free to use in your apps, research, and articles; all we ask is a credit and a link back (see terms).
Basics
Base URL. https://ayesandnoes.co.uk/api/v1
Format. JSON over HTTPS. GET only. No key required. CORS is open, so you can call it directly from a browser.
Versioning. The path is versioned (/api/v1). Breaking changes ship under a new version; v1 stays stable.
Every response carries a standard header — dataset, api_version, licence, source, attribution — and links each record back to its page on this site.
Fair use. Please cache responses (they carry Cache-Control headers) and keep request rates reasonable. Generous per-IP rate limits apply; if you need higher volume, get in touch.
OpenAPI spec. Machine-readable contract at /api/v1/openapi.json — generate a typed client SDK, import into Postman/Insomnia, or point an AI agent at it.
Endpoints
GET /api/v1/mps
Current MPs. Filters: party (slug), constituency (slug), q (name search), limit (max 200), offset.
GET /api/v1/mps/{id-or-slug}
One MP by Parliament member id or slug — with a voting summary (recorded votes, ayes, noes, rebellions, tellerships) and tenure.
GET /api/v1/parties/{slug}
One party — seat count, colours, and its current MPs.
GET /api/v1/divisions
Commons divisions (recorded votes), newest first. Filters: from/to (YYYY-MM-DD), topic (slug), category, limit, offset.
GET /api/v1/divisions/{id}
One division by Parliament division id — result, summary, motion text, topics, and a per-party aye/no breakdown.
GET /api/v1/edms
Early Day Motions, newest first. Filters: from/to (YYYY-MM-DD), limit, offset.
GET /api/v1/edms/{id}
One Early Day Motion — full text, primary sponsor, topics, and its signatories.
Terms & attribution
The underlying data is Parliamentary information licensed under the Open Parliament Licence v3.0.
If you use this API, please credit "Ayes & Noes" and link back to ayesandnoes.co.uk. It's free — the link is how we keep it that way.
No warranty: the data is provided as-is from official sources. Spotted a problem? Email [email protected].
Frequently asked questions
Is there a free UK Parliament API?
Yes. Ayes & Noes provides a free, read-only JSON API for the UK House of Commons — MPs, parties, divisions (recorded votes) and Early Day Motions. No API key is required and CORS is open, so you can call it straight from a browser.
How do I get an MP's voting record?
Call GET /api/v1/mps/{id} with a Parliament member id or slug. The response includes recorded votes, ayes, noes, rebellions and tellerships. List every current MP at /api/v1/mps.
What UK Parliament data does the API cover?
Current MPs and parties (with live Commons seat counts), Commons divisions with per-party aye/no breakdowns, and Early Day Motions with their signatories — all derived from official UK Parliament open data.
Do I need an API key, and is there a rate limit?
No key is needed for the free tier. A generous per-IP rate limit applies to keep the service fair; contact us if you need higher volume.
Can I use the data on my own site or app?
Yes. It's Open Parliament Licence v3.0 data, free for apps, research and journalism. Please credit "Ayes & Noes" and link back to ayesandnoes.co.uk.