Optionalshared: EPSharedResourcesProtected ReadonlybaseEuropean Parliament API base URL.
Protected ReadonlycacheLRU cache for API responses.
Protected ReadonlyenableEnable automatic retry on transient failures.
Protected ReadonlymaxMaximum allowed response body size in bytes.
Protected ReadonlymaxMaximum number of retry attempts.
Protected ReadonlyrateToken bucket rate limiter.
Protected ReadonlytimeoutRequest timeout in milliseconds.
PrivatebuildPrivateMaps getMEPs params to EP API query parameters.
Clears all entries from the LRU cache.
PrivatefetchPrivatefilterProtectedgetProtectedExecutes a cached, rate-limited GET request to the EP API.
Expected response type (extends Record<string, unknown>)
API endpoint path (relative to baseURL)
Optionalparams: Record<string, unknown>Optional query parameters
OptionalminimumTimeoutMs: numberOptional per-request minimum timeout in milliseconds.
When provided, the effective timeout is Math.max(minimumTimeoutMs, this.timeoutMs),
so the global timeout (set via --timeout or EP_REQUEST_TIMEOUT_MS) can still
extend it beyond the per-endpoint minimum.
Use for known slow EP API endpoints such as procedures/feed and events/feed.
Promise resolving to the typed API response
Returns cache statistics for monitoring and debugging.
{ size, maxSize, hitRate, hits, misses }
Returns all currently active MEPs for today's date.
Unlike getMEPs(), this uses GET /meps/show-current which returns
api:country-of-representation and api:political-group in responses.
Optional country and group filters are applied client-side after fetch.
EP API Endpoint: GET /meps/show-current
Optional filters and pagination
Optionalcountry?: stringISO 3166-1 alpha-2 country code for client-side filtering
Optionalgroup?: stringPolitical group identifier for client-side filtering
Optionallimit?: numberMaximum results to return (default 50)
Optionaloffset?: numberPagination offset (default 0)
Returns homonym MEPs for the current parliamentary term.
EP API Endpoint: GET /meps/show-homonyms
Returns all incoming MEPs for the current parliamentary term.
EP API Endpoint: GET /meps/show-incoming
Returns a single MEP declaration by document ID.
EP API Endpoint: GET /meps-declarations/{doc-id}
Returns MEP declarations of financial interests.
EP API Endpoint: GET /meps-declarations
Retrieves recently updated MEP declarations via the feed endpoint.
EP API Endpoint: GET /meps-declarations/feed
Retrieves detailed information about a specific MEP.
Supports numeric ID ("124936"), person URI ("person/124936"), or MEP-prefixed ID ("MEP-124936").
MEP identifier in any supported format
Detailed MEP information
Retrieves Members of the European Parliament with filtering and pagination.
Country, group, committee, active status, limit, offset
Paginated MEP list
Retrieves recently updated MEPs via the feed endpoint.
EP API Endpoint: GET /meps/feed
Returns all outgoing MEPs for the current parliamentary term.
EP API Endpoint: GET /meps/show-outgoing
PrivatepaginateBuild paginated result from filtered MEPs.
PrivatetransformPrivatetransformPrivatetransform
Sub-client for MEP-related European Parliament API endpoints.
Handles all MEP data fetching: active lists, individual profiles, incoming/outgoing/homonym lists, and financial declarations.