BOAMP France Public Tenders Scraper avatar

BOAMP France Public Tenders Scraper

Pricing

Pay per usage

Go to Apify Store
BOAMP France Public Tenders Scraper

BOAMP France Public Tenders Scraper

French public procurement tenders from BOAMP — appels d'offres, MAPA and award results, updated daily. Filter by sector, department, deadline, keywords; get clean JSON with buyer, deadline and direct notice links.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Hermingway

Hermingway

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Veille automatisée des marchés publics français — appels d'offres, MAPA et avis d'attribution, en JSON propre. Automated monitoring of French public procurement — tender notices, MAPA procedures and award results, as clean JSON.

Run it on Apify →


Pourquoi cet Actor ?

Chaque jour ouvré, environ 400 avis de marchés publics sont publiés sur BOAMP — près de 2 000 par semaine, 1,7 million depuis 2015. Les lire à la main est impossible ; les manquer coûte des contrats. Cet Actor interroge la source officielle (DILA / bulletin BOAMP) et rend chaque avis exploitable : acheteur, date limite de remise, objet, département, descripteurs — dans un JSON structuré, prêt pour votre veille, vos alertes ou votre CRM.

Why this Actor?

  • Official data, no scraping fragility — queries the DILA open-data mirror of the BOAMP bulletin. No proxies, no CAPTCHAs, no HTML parsing that breaks when the site redesigns.
  • Fast: a Rust core fetches pages concurrently; a full sweep of the day's notices takes seconds, not minutes. Your compute bill stays tiny.
  • Server-side filtering: département, market type, procedure family and BOAMP descripteur codes are filtered at the source, so you don't pay to download notices you'll throw away.
  • New-only alert mode: schedule daily runs and get only notices you have never seen before — a monitoring feed, not a repeated scrape.

Sample output

{
"idweb": "26-88433",
"objet": "Accord-cadre à bons de commande relatif à l'acquisition de Dvd vidéo pour le réseau des bibliothèques de la Ville de Perpignan",
"nomAcheteur": "Mairie de Perpignan",
"nature": "APPEL_OFFRE",
"natureLibelle": "Avis de marché",
"famille": "FNS",
"familleLibelle": "Marchés entre 90 k€ et seuils européens",
"procedure": "Procédure Ouverte",
"typesMarche": ["FOURNITURES"],
"departements": ["66"],
"descripteurs": ["Cd, DVD"],
"descripteurCodes": ["45"],
"dateParution": "2026-09-11",
"dateLimiteReponse": "2026-10-09T12:00:00+00:00",
"urlAvis": "https://www.boamp.fr/pages/avis/?q=idweb:26-88433"
}

Example input configurations

IT services tenders in Paris, deadline ahead:

{
"nature": ["APPEL_OFFRE"],
"descripteurs": ["163", "186"],
"departements": ["75", "77", "78", "91", "92", "93", "94", "95"],
"deadlineFrom": "2026-09-13"
}

Construction works (Bâtiment, code 33) nationwide, published this week:

{
"nature": ["APPEL_OFFRE"],
"typeMarche": ["TRAVAUX"],
"descripteurs": ["33"],
"dateFrom": "2026-09-07"
}

Daily award-notices alert (new-only mode):

{
"nature": ["ATTRIBUTION"],
"dateFrom": "2026-09-12",
"newOnly": true
}

Everything mentioning "informatique":

{
"query": "informatique",
"maxPages": 20
}

Input fields

FieldTypeMeaning
naturelistNotice type: APPEL_OFFRE (call for tenders), ATTRIBUTION (award), RECTIFICATIF, PRE-INFORMATION, MODIFICATION, ANNULATION, INTENTION_CONCLURE, EX_ANTE_VOLONTAIRE, AUTRE. Default: APPEL_OFFRE + ATTRIBUTION.
famillelistJOUE (EU-threshold), FNS (90 k€ to EU thresholds, national), MAPA (below 90 k€), plus DSP (délégations de service public) and DIVERS.
typeMarchelistTRAVAUX / FOURNITURES / SERVICES.
departementslistTwo-digit codes (75 = Paris). Empty = all France.
descripteurslistBOAMP descripteur codes, filtered server-side. See table below.
querystringServer-side full-text search on the notice.
keywordslistClient-side OR filter on object + descriptors (applied after fetch).
dateFromdateOnly notices published on/after (YYYY-MM-DD).
deadlineFromdateOnly notices with response deadline on/after.
maxPagesintMax API pages (100 notices/page). Default 5.
maxItemsintStop after N notices (0 = no limit).
newOnlyboolEmit only notices never returned in any previous run of this Actor. State persists in the Actor's key-value store. First run returns everything — combine with dateFrom to start clean.

Common descripteur codes

CodeLibellé
33Bâtiment
163Informatique (prestations de services)
162Informatique (matériel)
186Logiciel
197Maîtrise d'oeuvre
196Maintenance
105Electricité (travaux)
116Espaces verts
144Gros oeuvre
239Nettoyage de locaux
138Gardiennage
66Concession (services restauration)

The full official vocabulary (370 codes) is on data.boamp.fr. The Actor also returns each notice's descripteur codes and labels in the output, so you can discover the codes relevant to your sector from real data.

Field dictionary

Output fieldAlways presentMeaning
idwebUnique BOAMP notice ID (e.g. 26-88433). Use for dedup.
objetNotice subject/title.
nomAcheteurBuyer (entity that published the notice).
urlAvisDirect link to the notice on boamp.fr.
dateParutionPublication date.
nature / natureLibelleNotice type code + label.
famille / familleLibelleProcedure family code + label.
departementsmostDépartement(s) of execution.
dateLimiteReponsetender noticesResponse deadline (ISO 8601). Absent on some award notices.
descripteurs / descripteurCodesmostActivity descriptors, labels + codes.
typesMarchemostTRAVAUX / FOURNITURES / SERVICES.
proceduremostProcedure name (e.g. Procédure Ouverte).
titulairesaward noticesWinner(s) of the contract.
criteressometimesAward criteria (e.g. environmental).
dateFinDiffusionmostLast date the notice is published.

Limitations (read before you buy)

  • Sub-90k MAPA coverage is partial. Publication on BOAMP is optional below €90,000 HT, so many small MAPA markets never appear — even though the dataset does carry hundreds of thousands of them. If your market is sub-90k public work, BOAMP cannot be your only source.
  • Buyer-profile-only notices are invisible. Some entities publish exclusively on their own profil acheteur without a BOAMP notice.
  • Field richness varies. Pre-2024 notices carry less structured detail than eForms-era notices; dateLimiteReponse is missing on some award notices.
  • No personal contact data. The Actor returns the buyer organisation, never named individuals — no natural person's name appears in the output.
  • Source: DILA BOAMP open dataset — updated daily by the French government. This Actor is an independent tool and is not affiliated with DILA.

FAQ

Est-ce que l'Actor fonctionne pour la veille quotidienne ? Oui — programmez une exécution quotidienne avec newOnly: true et dateFrom d'hier : vous ne recevez que les nouveaux avis.

Is this free to run? The underlying government dataset is free and public; the Actor charges only Apify platform compute, which is minimal thanks to the Rust core.

Comment récupérer les appels d'offres BOAMP en JSON ? C'est exactement ce que fait cet Actor : chaque avis est rendu en JSON structuré (acheteur, objet, deadline, département, descripteurs) dans le dataset Apify, exportable en CSV/Excel/JSON ou via API.

Does it cover EU-threshold (JOUE) notices? Yes — including notices also published on TED. Note that above-threshold notices appear in both BOAMP and TED; this Actor covers the BOAMP side.

Can I get award results with winners? Yes — set nature: ["ATTRIBUTION"]. Award notices include titulaires when published.

Changelog

  • 2026-09-13 — Added BOAMP descripteur-code server-side filtering, cross-run new-only alert mode, and maxItems early-stop. Rewritten buyer-facing README.
  • 2026-09-12 — Initial release: nature/famille/type-marche/département filters, keyword and full-text search, deadline and date filters, concurrent Rust fetcher.

Acteur indépendant, non affilié au gouvernement français. Independent tool, not affiliated with the French government.