Discover/hatvp.fr API
live

hatvp.fr APIhatvp.fr

Access HATVP declarations of interests, assets, and the French lobbyist registry. Search by name, mandate type, department, or browse aggregated statistics.

Endpoints
8
Updated
10d ago
Try it
Filter by official's name (matches against first and last name).
Maximum number of results to return.
General search across name, first name, and title/position.
Filter by official's title or position (e.g. 'Député', 'Sénateur').
Pagination offset (number of results to skip).
Filter by department code (e.g. '75' for Paris, '13' for Bouches-du-Rhône).
Filter by mandate type (e.g. 'depute', 'senateur', 'president', 'gouvernement', 'commune',
api.parse.bot/scraper/3c4be371-aa76-4641-af45-4e5d0719ded1/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/3c4be371-aa76-4641-af45-4e5d0719ded1/search_declarations?limit=3&query=Macron' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 8 totalclick to expand

Search for public official declarations by name, title, or department. Returns matching officials from the HATVP open data CSV with their metadata. Supports pagination via offset and limit.

Input
ParamTypeDescription
namestringFilter by official's name (matches against first and last name).
limitintegerMaximum number of results to return.
querystringGeneral search across name, first name, and title/position.
titlestringFilter by official's title or position (e.g. 'Député', 'Sénateur').
offsetintegerPagination offset (number of results to skip).
departmentstringFilter by department code (e.g. '75' for Paris, '13' for Bouches-du-Rhône).
type_mandatstringFilter by mandate type (e.g. 'depute', 'senateur', 'president', 'gouvernement', 'commune', 'region', 'departement', 'epci', 'europe', 'ctsp', 'autre').
Response
{
  "type": "object",
  "fields": {
    "limit": "integer max results returned",
    "total": "integer total number of matching declarations",
    "offset": "integer pagination offset",
    "results": "array of declaration objects with fields: civilite, prenom, nom, type_mandat, qualite, type_document, departement, date_publication, date_depot, nom_fichier, open_data, statut_publication"
  },
  "sample": {
    "data": {
      "limit": 3,
      "total": 2,
      "offset": 0,
      "results": [
        {
          "nom": "MACRON",
          "prenom": "Emmanuel",
          "qualite": "Président de la République",
          "civilite": "M.",
          "open_data": "",
          "url_photo": "",
          "classement": "macronaaaemmanuel5835",
          "date_depot": "2022-03-01",
          "id_origine": "",
          "departement": "",
          "nom_fichier": "macron-emmanuel-dia20721-president.pdf",
          "type_mandat": "president",
          "url_dossier": "/pages_nominatives/macron-emmanuel",
          "type_document": "dia",
          "date_publication": "2022-05-16",
          "statut_publication": "Livrée"
        }
      ]
    },
    "status": "success"
  }
}

About the hatvp.fr API

This API exposes 8 endpoints covering the French High Authority for Transparency in Public Life (HATVP) dataset, including declarations of interests, patrimony filings, and the lobbyist registry. Use search_declarations to find officials by name, title, or department code, then fetch full structured declaration data — financial participations, real estate holdings, consulting activities, and more — via get_declaration_detail or the patrimony-specific get_patrimony_declaration endpoint.

Declaration Search and Filtering

search_declarations queries the HATVP open data across fields including civilite, prenom, nom, type_mandat, qualite, type_document, departement, and date_publication. It accepts filters for official name, title (e.g. Député, Sénateur), department code, and mandate type (depute, senateur, president, gouvernement, commune, region). All results are paginated via offset and limit. For use-case-specific browsing, search_by_function and search_by_geographic_zone offer the same paginated result shape filtered to a single function type or French department code (e.g. 75 for Paris, 971 for Guadeloupe).

Declaration Detail Endpoints

Once you have an xml_filename from a search result's open_data field, get_declaration_detail returns the full structured declaration: mandatElectifDto (elected mandates), activConsultantDto (consulting roles), activProfCinqDerniereDto (professional activities over the last five years), participationDirigeantDto (management participations), and participationFinanciereDto (financial participations). DSP (patrimony) declarations are better handled by get_patrimony_declaration, which returns asset-specific sections: immeubleDto (real estate), comptesBancaireDto (bank accounts), valeursMobilieresDto (securities), vehiculeDto, assuranceVieDto, and passifDto (liabilities). The interests-only view is available via get_interests_declaration.

Lobbyist Registry

list_lobbyists queries the HATVP register of interest representatives. Each result object includes denomination, identifiantNational, categorieOrganisation, adresse, codePostal, plus details on directors, collaborators, clients, affiliations, and activity sectors. The endpoint accepts a free-text query parameter that matches across organization name, sector, directors, and collaborators, with offset/limit pagination.

Statistics

get_statistics returns aggregate counts with no required inputs. The response breaks down total declarations by by_type_mandat (mandate type), by_departement (department code), and by_statut_publication (publication status). Useful for understanding dataset coverage before issuing targeted searches.

Common use cases
  • Map all elected officials in a given French department by combining search_by_geographic_zone with department codes.
  • Build a conflict-of-interest tracker by pulling activConsultantDto and participationFinanciereDto fields from get_declaration_detail.
  • Analyze real estate and securities portfolios of public officials using immeubleDto and valeursMobilieresDto from get_patrimony_declaration.
  • Enumerate registered lobbyists in a specific sector using the query parameter in list_lobbyists.
  • Generate per-mandate-type breakdowns of published declarations with get_statistics to inform journalism or research dashboards.
  • Cross-reference an official's professional history over five years via activProfCinqDerniereDto in the interests declaration endpoint.
  • Filter all government ministers' declarations using type_mandat=gouvernement in search_declarations for cabinet-level transparency monitoring.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 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 HATVP provide an official developer API?+
HATVP publishes open data files (CSV and XML) at data.gouv.fr and on its own portal, but it does not provide a structured REST API with queryable endpoints. This Parse API exposes those datasets through filterable, paginated endpoints.
Which declaration types have detailed XML data available, and which don't?+
get_declaration_detail, get_patrimony_declaration, and get_interests_declaration all require an xml_filename from the open_data field of a search result. Not every declaration record includes this field — only those for which HATVP has published a structured XML file have it populated. Officials without an XML open data entry can be found via search but their detailed field-level content is not accessible through these endpoints.
Can I retrieve historical or archived declarations from earlier mandate periods?+
The API reflects the declarations currently published in the HATVP open data. Historical filing archives or older versions of declarations that are no longer in the active dataset are not currently covered. You can fork the API on Parse and revise it to target archived HATVP data sources if those are available.
What does `get_statistics` return, and does it support filtering by year?+
get_statistics takes no input parameters and returns three aggregate breakdowns: total declaration count, counts by mandate type (by_type_mandat), counts by department (by_departement), and counts by publication status (by_statut_publication). Year-based filtering is not currently supported. You can fork the API on Parse and revise it to add time-range filtering if your use case requires trend analysis over time.
Does the lobbyist endpoint include financial spending figures reported to HATVP?+
The list_lobbyists endpoint returns organizational metadata — name, national identifier, category, address, directors, collaborators, clients, and activity sectors. Declared lobbying expenditure amounts are not currently included in the response fields. You can fork the API on Parse and revise it to add spending data if HATVP's registry exposes those figures in a parseable form.
Page content last updated . Spec covers 8 endpoints from hatvp.fr.
Related APIs in Government PublicSee all →
identify.plantnet.org API
Identify and explore plant species by searching through Pl@ntNet's comprehensive botanical database to access detailed information like taxonomic families, genera, species descriptions, photos, and community observations. Track plant distributions, view contribution trends, and discover expert contributors within the platform's collaborative plant identification community.
data.lime.bike API
Access real-time availability data for Lime bikes and scooters, including station locations, vehicle status, system alerts, and geofencing zones across multiple cities. Monitor micromobility inventory and service information to find nearby vehicles or plan your trips effectively.
accessdata.fda.gov API
Search and retrieve comprehensive FDA premarket approval information for medical devices, including approval status, supplements, applicant details, and advisory committee data. Get instant access to specific PMA records with all relevant approval information in one place.
eprocurement.gov API
Monitor India's public procurement opportunities by accessing active tenders, bids closing today, global tenders, high-value contracts, and cancelled tenders from the Central Public Procurement Portal. Search tender details, browse participating organizations, and track real-time procurement statistics to stay informed on government contracting opportunities.
cmegroup.com API
Get CME Group market data including FedWatch interest-rate probabilities, futures quotes and settlements, volume/open interest history, and options expirations and near-the-money option chains.
alienvault.com API
Search and analyze global threat intelligence data including indicators of compromise, threat pulses, and adversary profiles from the Open Threat Exchange community. Monitor recent security alerts and access detailed information about threats and adversaries to strengthen your cybersecurity defenses.
api.nasa.gov API
Access NASA's suite of open data APIs — including the Astronomy Picture of the Day, Near Earth Object tracking, DONKI space weather events, EPIC Earth imagery, Mars weather, the NASA Image and Video Library, the Exoplanet Archive, and EONET natural events.
mahatenders.gov.in API
Access Maharashtra government tenders from mahatenders.gov.in, browsing them by closing date or by organization with full tender details and pagination support. Find and review procurement opportunities across different government departments in one place.
HATVP API – French Public Official Declarations · Parse