Discover/Europa API
live

Europa APIedpb.europa.eu

Fetch European Data Protection Board consistency-finding opinions with titles, dates, topics, member states, and PDF links via a single structured API endpoint.

Endpoint health
verified 1d ago
get_opinions
1/1 passing latest checkself-healing
Endpoints
1
Updated
16d ago

What is the Europa API?

The EDPB Opinions API exposes structured data from the European Data Protection Board's consistency findings page through one endpoint, get_opinions, returning up to the full catalog of published opinions with 7 fields per record: title, URL, date, publication type, topics, member states, and a direct PDF download link. It handles pagination automatically so you can retrieve the complete opinions listing or a controlled slice of pages.

Try it
Starting page number (0-indexed).
Number of upstream pages to fetch. 0 fetches all available pages.
api.parse.bot/scraper/460b5f31-803f-47fc-bf6e-b18d634d7b46/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/460b5f31-803f-47fc-bf6e-b18d634d7b46/get_opinions?page=0&limit=1&page_limit=1' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace edpb-europa-eu-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: EDPB Opinions API — fetch and inspect EU data protection board opinions."""
from parse_apis.EDPB_Opinions_API import EDPB, Opinion, UpstreamError

client = EDPB()

# List opinions from one upstream page, cap at 5 items for quick inspection.
for opinion in client.opinions.list(page_limit=1, limit=5):
    print(opinion.title, "|", opinion.date, "|", opinion.publication_type)

# Drill into the first opinion to inspect its topics.
first = client.opinions.list(page_limit=1, limit=1).first()
if first:
    print(first.title)
    print("Topics:", first.topics)
    print("URL:", first.url)
    print("PDF:", first.pdf_link)

# Typed error handling around a call with a high page offset.
try:
    for op in client.opinions.list(page=99, page_limit=1, limit=3):
        print(op.title, op.date)
except UpstreamError as exc:
    print(f"Upstream issue: {exc}")

print("exercised: opinions.list (with page_limit, page, limit), .first(), field access, UpstreamError catch")
All endpoints · 1 totalmissing one? ·

Fetch EDPB opinions with their publication type, topics, dates, and detail page URLs. Paginates through the EDPB documents listing filtered to compliance instruments (opinions). By default fetches all pages; use the page_limit parameter to restrict the number of pages fetched. Each opinion includes title, URL, date, publication type list, and topics list. Member states and PDF links are not available on the listing page and are returned as empty list and null respectively.

Input
ParamTypeDescription
pageintegerStarting page number (0-indexed).
page_limitintegerNumber of upstream pages to fetch. 0 fetches all available pages.
Response
{
  "type": "object",
  "fields": {
    "total": "integer - total number of opinions returned across all fetched pages",
    "opinions": "array of opinion objects with title, url, date, publication_type, topics, member_states, and pdf_link"
  },
  "sample": {
    "data": {
      "total": 10,
      "opinions": [
        {
          "url": "https://www.edpb.europa.eu/documents/opinion-of-the-board-art-64/opinion-192026-on-the-draft-decision-of-the-dutch-supervisory_en",
          "date": "08 June 2026",
          "title": "Opinion 19/2026 on the draft decision of the Dutch Supervisory Authority regarding the Processor Binding Corporate Rules of the Rubrik Group",
          "topics": [
            "Binding Corporate Rules",
            "Tools for transfers and derogations"
          ],
          "pdf_link": null,
          "member_states": [],
          "publication_type": [
            "Opinion of the Board (Art. 64)"
          ]
        }
      ]
    },
    "status": "success"
  }
}

About the Europa API

What the API Returns

The get_opinions endpoint retrieves the full list of EDPB opinions published on the consistency findings page. Each opinion object in the opinions array carries a title, a url to the opinion's detail page, an ISO-formatted date, a publication_type label (e.g. Opinion), a topics array covering GDPR subject matter, a member_states array listing the supervisory authorities involved, and a pdf_link for the official document download. The top-level total field reports how many opinion records were returned across all fetched pages.

Pagination and Filtering

get_opinions accepts two optional parameters. The page integer (0-indexed) sets the starting page of the EDPB listing. The limit integer controls how many consecutive pages are fetched; passing 0 instructs the endpoint to fetch all available pages. This lets you implement incremental updates by starting from page 0 with a small limit, or pull the complete archive in one call by omitting both parameters.

Data Scope

Coverage maps directly to what the EDPB publishes under its Opinions consistency-findings section. Topics and member states are returned as arrays, reflecting that a single opinion may span multiple GDPR subject areas and involve more than one EU supervisory authority. PDF links point directly to the official EDPB-hosted documents, making it straightforward to build document-retrieval pipelines on top of the API.

Reliability & maintenanceVerified

The Europa API is a managed, monitored endpoint for edpb.europa.eu — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when edpb.europa.eu changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official edpb.europa.eu API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
1d ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Monitor newly published EDPB opinions and trigger alerts when a specific member_states entry (e.g. Germany, France) appears.
  • Build a searchable index of GDPR consistency opinions filtered by topics such as data transfers or legitimate interest.
  • Aggregate pdf_link URLs to bulk-download official EDPB opinion documents for offline legal research.
  • Track opinion publication frequency over time using the date field to identify regulatory trend spikes.
  • Populate a compliance dashboard that surfaces the latest EDPB opinions relevant to a particular EU supervisory authority.
  • Feed title and topics data into an NLP pipeline to classify regulatory guidance by GDPR article scope.
  • Cross-reference member_states across opinions to map how often each national DPA is cited in EDPB consistency findings.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does the EDPB have an official developer API for its opinions or consistency findings?+
No. The EDPB does not publish a public REST or data API for its opinions listing. The structured data it provides is only available through its web pages.
What does `get_opinions` return for each record, and can I filter by topic or member state?+
Each record includes title, url, date, publication_type, topics (array), member_states (array), and pdf_link. The endpoint does not accept server-side filter parameters for topic or member state; filtering must be applied client-side after fetching the data.
How fresh is the opinion data, and does the API reflect newly published opinions immediately?+
The endpoint reflects whatever is currently listed on the EDPB consistency findings page. The EDPB publishes opinions on an irregular schedule, so freshness depends on when you call the endpoint relative to a new publication. There is no webhook or push mechanism — you need to poll periodically to catch new entries.
Does the API cover other EDPB document types such as Guidelines, Recommendations, or Binding Decisions?+
Not currently. The API covers only the Opinions section of the EDPB consistency findings page, returning publication_type, topics, member_states, date, and pdf_link for those records. You can fork this API on Parse and revise it to add endpoints targeting other EDPB document sections like Guidelines or Recommendations.
Is the full text of each opinion available through the API?+
The API returns a pdf_link pointing to the official document and a url to the opinion detail page, but it does not extract or return the full text content of the opinion itself. The API covers metadata and document links. You can fork it on Parse and revise it to add a detail endpoint that retrieves body text from the individual opinion page.
Page content last updated . Spec covers 1 endpoint from edpb.europa.eu.
Related APIs in Government PublicSee all →
eur-lex.europa.eu API
Access and explore the complete collection of European Union laws, regulations, and Official Journal publications through a comprehensive database that lets you search documents, retrieve full texts, summaries, and metadata, and track legislative procedures and national implementations. Find exactly what you need with detailed search capabilities and get detailed information about how EU laws are transposed into national legislation.
example-eu-regulatory-site.com API
Track GDPR fines and penalties issued across EU authorities, search by company or violation type, and analyze enforcement trends with detailed penalty information and regulatory statistics. Monitor compliance risks by accessing real-time data on fine amounts, violating companies, and specific breach details from official enforcement records.
eu-startups.com API
Access the EU-Startups investor database, startup directory, job board, and news articles. Search and filter investors by type and country, browse startups, and retrieve detailed profiles.
europages.fr API
Search for European suppliers and products, retrieve detailed company information and catalogs, and discover business listings across thousands of manufacturers and distributors on Europages. Find the right B2B partners by filtering suppliers, accessing company profiles, and browsing their product offerings all in one place.
boe.es API
Access Spain's official government publications to retrieve daily legislative summaries, browse consolidated laws, and view detailed legal documents with their full text and metadata. Stay informed about new regulations and find specific legislation through comprehensive search and retrieval of official state gazette content.
artificialintelligenceact.eu API
Access and search the complete EU AI Act legislation, including specific articles, recitals, annexes, and chapters, while viewing implementation timelines and related regulatory details. Quickly find relevant legal sections through keyword search or browse the full text organized by structure.
examplecourt.gov API
Search and retrieve court judgments, case details, and legal metadata from a national court reporting portal, with support for advanced filtering by court and case category. Access complete case information including full text and browse paginated results to find relevant legal precedents.
diariodarepublica.pt API
Search and retrieve official Portuguese legislation, decrees, and resolutions published in the Diário da República, organized by publication series and date. Browse acts from both Serie I and Serie II to stay updated on the latest government publications and legal announcements.