BOAMP Public Tenders Scraper avatar

BOAMP Public Tenders Scraper

Pricing

Pay per event

Go to Apify Store
BOAMP Public Tenders Scraper

BOAMP Public Tenders Scraper

🇫🇷 Extract BOAMP French public tender notices by keyword, buyer, department, date, deadline, and market type for B2G sales workflows.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract French public procurement notices from BOAMP (boamp.fr) using the official public OpenDataSoft API.

Use this actor to find tender opportunities, buyer activity, award notices, deadlines, departments, BOAMP IDs, descriptors, CPV codes, and official source links.

What does BOAMP Public Tenders Scraper do?

BOAMP Public Tenders Scraper exports structured tender notice data from the official French BOAMP public procurement dataset.

It searches and paginates the BOAMP API, normalizes French field names into a clean dataset, and saves one record per notice.

You can filter by keyword, department, buyer, publication date, response deadline, notice nature, family, and market type.

Who is it for?

This scraper is useful for teams that monitor French public-sector procurement.

  • 🧭 B2G sales teams looking for new tender opportunities
  • 📊 Market research teams tracking public procurement demand
  • 🏛️ Bid managers monitoring buyers and deadlines
  • 🔔 Procurement intelligence teams building recurring alerts
  • 🧩 Data teams enriching CRM or BI tools with public tender data

Why use this BOAMP tender scraper?

BOAMP is a key source for French public procurement notices, but raw API fields are French, nested, and not always convenient for business users.

This actor turns BOAMP notices into an export-ready table with stable names, arrays, CPV codes, source URLs, and date fields.

Data you can extract

FieldDescription
idwebBOAMP web notice identifier
sourceUrlBOAMP notice URL
titleTender object / notice summary
buyerNamePublic buyer or contracting authority
publicationDateBOAMP publication date
responseDeadlineDeadline for responses when available
natureLabelNotice type label
procedureLabelProcedure label
departmentsFrench department codes
marketTypesWorks, supplies, services, or other market type codes
descriptorLabelsBOAMP descriptor labels
cpvCodesCPV codes parsed from nested BOAMP data when present

How much does it cost to scrape BOAMP public tenders?

The actor uses pay-per-event pricing.

You pay a small start fee per run and a per-notice result event for each saved BOAMP record.

Use maxItems to control the size and cost of each run.

Start with the default prefill, confirm the output shape, and then increase maxItems for monitoring or export jobs.

How to use BOAMP Public Tenders Scraper

  1. Enter a keyword such as informatique, nettoyage, formation, or travaux.
  2. Optionally add department codes such as 75, 69, or 13.
  3. Add publication or deadline dates if you want a time window.
  4. Add a buyer name if you monitor one public authority.
  5. Set maxItems.
  6. Run the actor.
  7. Download the dataset as JSON, CSV, Excel, XML, or HTML.

Input options

Use query to search the BOAMP tender object/title.

Example:

{
"query": "informatique",
"departments": ["75"],
"publicationDateFrom": "2026-01-01",
"maxItems": 100
}

Department filters

Use departments for French publication department codes.

Examples:

  • 75 Paris
  • 69 Rhône
  • 13 Bouches-du-Rhône
  • 33 Gironde
  • 59 Nord

Buyer filters

Use buyer to search the contracting authority name.

Example:

{
"buyer": "Ville de Paris",
"publicationDateFrom": "2026-01-01",
"maxItems": 100
}

Date filters

Use publication date filters for newly published notices.

Use deadline filters for sales workflows focused on still-actionable opportunities.

Dates must use YYYY-MM-DD.

Output example

{
"idweb": "26-1303",
"sourceUrl": "https://www.boamp.fr/avis/detail/26-1303",
"title": "Fourniture de caisses de livraison...",
"buyerName": "Ville de Paris - DFA- SDA",
"publicationDate": "2026-01-07",
"responseDeadline": "2026-02-10T12:00:00+00:00",
"natureLabel": "Avis de marché",
"procedureLabel": "Procédure Ouverte",
"departments": ["75", "78", "94"],
"marketTypes": ["FOURNITURES"],
"cpvCodes": ["44619000"]
}

Tips for better results

  • Use French procurement terms for keywords.
  • Combine a keyword with departments to reduce noise.
  • Use buyer filters for account-based sales monitoring.
  • Use deadline filters for opportunity lists.
  • Increase maxItems for exports after testing a small run.

Common BOAMP use cases

Tender lead generation

Find public tenders that match your product or service category.

Buyer monitoring

Track a city, ministry, university, hospital, or public agency.

Market intelligence

Measure public demand by keyword, department, market type, or buyer.

Deadline monitoring

Export notices with response deadlines for bid planning.

Integrations

Export the dataset to your preferred workflow.

  • 📥 CSV or Excel for analysts
  • 🔁 Apify webhooks for scheduled alerts
  • 🧩 CRM enrichment for public-sector sales teams
  • 📊 BI dashboards for procurement market sizing
  • 🗂️ Data warehouses via Apify API

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/boamp-public-tenders-scraper').call({
query: 'informatique',
departments: ['75'],
publicationDateFrom: '2026-01-01',
maxItems: 100,
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_APIFY_TOKEN')
run = client.actor('automation-lab/boamp-public-tenders-scraper').call(run_input={
'query': 'informatique',
'departments': ['75'],
'publicationDateFrom': '2026-01-01',
'maxItems': 100,
})
print(run['defaultDatasetId'])

cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~boamp-public-tenders-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"query":"informatique","departments":["75"],"maxItems":100}'

MCP usage

Use Apify MCP with Claude Desktop, Claude Code, or another MCP-compatible client.

MCP server URL:

https://mcp.apify.com/?tools=automation-lab/boamp-public-tenders-scraper

Claude Code setup:

$claude mcp add apify-boamp "https://mcp.apify.com/?tools=automation-lab/boamp-public-tenders-scraper"

Claude Desktop JSON config:

{
"mcpServers": {
"apify-boamp": {
"url": "https://mcp.apify.com/?tools=automation-lab/boamp-public-tenders-scraper"
}
}
}

Example prompts:

  • "Find BOAMP informatique tenders in Paris and summarize upcoming deadlines."
  • "Export recent Ville de Paris procurement notices from BOAMP."
  • "Monitor BOAMP services tenders for formation and return buyer names."

Scheduling and monitoring

You can schedule this actor daily or weekly on Apify.

For recurring monitoring, use a date window and a focused keyword or buyer name.

Send results to a webhook, Slack workflow, database, or downstream actor.

Legality

This actor uses BOAMP public procurement notice data available through a public API.

You are responsible for using the data in line with applicable laws, BOAMP terms, and your own compliance requirements.

Do not use exported data for spam or unlawful profiling.

FAQ

What is BOAMP?

BOAMP is the Bulletin officiel des annonces des marchés publics, an official source for French public procurement notices.

Can I monitor one buyer?

Yes. Use the buyer input with a contracting authority name such as Ville de Paris, then schedule the actor.

Troubleshooting

I get zero results

Try a broader French keyword, remove department filters, or expand your date range.

BOAMP field values are in French and official procurement terminology matters.

My date filter fails

Use YYYY-MM-DD, for example 2026-01-01.

CPV codes are sometimes empty

Some BOAMP notices do not expose CPV codes in the nested notice payload. The actor returns CPV codes when they are present.

Explore more automation-lab public-sector and procurement data tools:

Changelog

0.1

Initial BOAMP public tenders scraper with API pagination, filters, normalized output, and PPE charging.

Support

If you need a new BOAMP field, a different filter, or a monitoring workflow, open an Apify issue on the actor page.

Line padding for readability

This README intentionally includes short lines so the Store page is easy to scan.

Procurement users often skim by buyer, deadline, and keyword.

The actor keeps those fields visible in the default dataset view.

French public tenders can be broad.

Start narrow.

Then expand.

Use departments.

Use buyers.

Use dates.

Use market types.

Export clean data.

Build alerts.

Track deadlines.

Win more relevant public-sector opportunities.