Netherlands Tenders Scraper: TenderNed Aanbestedingen to Excel
Pricing
from $2.50 / 1,000 results
Netherlands Tenders Scraper: TenderNed Aanbestedingen to Excel
Scrape Dutch public tenders (aanbestedingen) from TenderNed via the official public JSON API, no key. Filter by keyword, CPV, province, procedure, contract type, open deadline. "Only new" daily alerts. Excel, CSV, JSON. GDPR-safe contacts off by default.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
TenderFeed
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Security
Limited permissionsShare
Export Dutch public tenders (aanbestedingen) from TenderNed to Excel, CSV or JSON, with no API key. TenderNed is the national e-procurement platform of the Netherlands. This Actor reads the official public JSON API (papi/tenderned-rs-tns v2) and returns one clean row per publication: title and description, buyer (opdrachtgever), procedure, contract type (Diensten / Leveringen / Werken), CPV codes, NUTS place of performance, publication date, submission deadline (sluitingsDatum) and the direct TenderNed link. TenderNed publishes ~2,500 notices per 30 days (~80/day), measured 2026-11-05.
Built by TenderFeed (apify.com/tenderfeed). No login, no browser, no HTML scraping. Buyer contacts stay off by default (GDPR).
Endpoints used
- List (newest first, page size ≤ 100):
GET https://www.tenderned.nl/papi/tenderned-rs-tns/v2/publicaties?page={n}&size=100 - Optional server filters that work:
search,typeOpdracht(D/L/W),procedure(e.g.OPE,NOP) - Detail (deadline, CPV, NUTS, reference):
GET https://www.tenderned.nl/papi/tenderned-rs-tns/v2/publicaties/{publicatieId} - Notice page:
https://www.tenderned.nl/aankondigingen/overzicht/{publicatieId} - PDF:
https://www.tenderned.nl/papi/tenderned-rs-tns/v2/publicaties/{publicatieId}/pdf
TenderNed does not honour publication-date query params; the Actor pages chronologically and stops once publishedFrom is passed. Full-text search is relevance-sorted, so date filtering is applied client-side there.
What can you do with it?
- Open tender alerts: contract notices still accepting offers in your sector or province, with the deadline and TenderNed link.
- Market consultations and prior information: MAC / VAK notices before the formal call.
- SME / supplier research: who buys what across Dutch municipalities, ministries, water boards and agencies.
- Bid consultancies and grant writers: feed a CRM or spreadsheet with every new Dutch notice for your clients.
- AI agents: use it as an MCP tool (Apify MCP server) and ask "Which open software tenders were published in Noord-Holland this week?"
Input example
{"keywords": ["software", "onderhoud"],"provinces": ["Noord-Holland", "Utrecht"],"contractTypes": ["D"],"publishedFrom": "14 days","onlyOpen": true,"maxResults": 50}
keywordsmatch the tender name and description; with keywords set, TenderNed's server-sidesearchis used for speed.noticeTypes: empty = AAO (contract notice), REC (rectification), MAC (market consultation), VAK (prior information). AddAGOfor awards.contractTypes:Dservices,Lsupplies,Wworks.provinces: Dutch province names (accent-insensitive). Nationwide notices (NUTSNL) are kept.cpvCodes: prefix match ("72"keeps every IT-services code).onlyOpen(on by default) keeps active notices whosesluitingsDatumis today or later.- Default run: open opportunity notices published in the last 7 days, newest first, 50 results.
Output example
{"source": "nl-tenderned","sourceId": "447983","url": "https://www.tenderned.nl/aankondigingen/overzicht/447983","title": "Herinrichting Prins Hendriklaan en Rimburgerweg te Brunssum","noticeType": "Aankondiging opdracht","status": "active","procedureType": "Openbaar","contractType": "works","buyerName": "Gemeente Brunssum","buyerCountry": "NL","cpvCodes": ["45200000-9"],"province": "Limburg","publishedAt": "2026-11-05T09:11:33.700156","deadlineAt": "2026-12-22T10:00:00","documentsUrl": "https://www.tenderned.nl/papi/tenderned-rs-tns/v2/publicaties/447983/pdf"}
Other fields: description, announcementCode (AAO/AGO/…), publicationCode, contractTypeNl, legalFramework, scope (Nationaal/Europees), nature, formType, kenmerk, referenceNumber, nutsCodes, startDate, endDate, daysBeforeDeadline, digitalSubmission, tsender, placeOfPerformance, otherClassificationCodes.
The data follows the same normalized schema as our other TenderFeed Actors (EU TED, SAM.gov, UK, Germany, Colombia SECOP).
Daily alerts ("only new" monitoring mode)
Turn on onlyNew, set a monitoringId (for example "nh-software") and schedule the Actor daily. Each run returns, and charges for, only publications you have not received yet.
Personal data
TenderNed's public API does not publish personal emails or phone numbers. includeBuyerContacts stays off by default (GDPR); organization-level fields (buyerName, province, URL) are always kept.
Sample output (real run)
One row from a run on 6 November 2026 (core columns only; every row also has description, status, procedureType, documentsUrl and more). Contact values are masked here. Since schema 1.2 every row also carries the cross-source columns country, deadline, valueAmount, valueCurrency and cpvOrNaics next to the original ones (buyerCountry, deadlineAt, estimatedValue, currency, cpvCodes/naicsCodes), which are unchanged.
{"title": "ERP-systeem","source": "nl-tenderned","country": "NL","noticeType": "Rectificatie","publishedAt": "2026-11-06T13:16:00.58749","deadline": "2026-11-27T12:00:00","buyerName": "Kamer van Koophandel","valueAmount": null,"valueCurrency": null,"cpvOrNaics": "72260000-5, 72000000-5, 72200000-7, 72210000-0","setAside": null,"url": "https://www.tenderned.nl/aankondigingen/overzicht/448304","buyerContactName": null,"buyerContactEmail": null,"buyerContactPhone": null}
Limits and notes
- Data source: TenderNed public publications API.
- Access: No login or API key.
- Delays and gaps: Notices are mostly in Dutch. Value is often not published.
- Contacts: No buyer contact persons are extracted.
- Fields the portal does not publish stay
null; nothing is guessed or filled in.
Pricing
Pay per result: you pay only for the publications saved to the dataset (see the price on this page), plus Apify's small run-start fee. The default run takes under a minute.
More TenderFeed sources
Same output schema across all sources, so you can merge results in one sheet or CRM:
- EU TED tenders
- SAM.gov federal contract opportunities
- Grants.gov US federal grants
- USAspending federal contract awards
- UK Find a Tender + Contracts Finder
- France BOAMP appels d'offres
- Switzerland SIMAP tenders
- World Bank procurement notices & awards
- Poland BZP e-Zamówienia tenders
- Ukraine Prozorro tenders
- AusTender Australian government contracts
- EU Funding & Tenders Portal grants and calls
- CanadaBuys tenders and awards
- Germany public tenders (Ausschreibungen)
- NYC City Record bids & awards
- Brazil PNCP licitações
- Colombia SECOP II licitaciones