Oman Tender Radar — Tender Board Government Tenders
Pricing
from $3.50 / 1,000 tender delivereds
Oman Tender Radar — Tender Board Government Tenders
Live Oman government tenders from the Tender Board e-tendering portal as clean JSON: tender number, title, entity, category and grades, type, sales end and closing dates, fee and bank guarantee in OMR, tender notice details, and bid-opening results.
Pricing
from $3.50 / 1,000 tender delivereds
Rating
0.0
(0)
Developer
Dottti
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Get live Oman government tenders from the Tender Board e-tendering portal as clean JSON, CSV or Excel.
Filter by keyword, government entity and procurement category. Schedule it every morning and you have a tender alert feed for your sector.
The Actor reads two public lists:
- New tenders. Tenders open for document purchase and bidding.
- In process. Tenders whose bids were opened and are now under evaluation. Each record can carry the bid-opening report: every company that bid, the offer type and the total price in OMR.
Who uses this
- Suppliers and contractors get a daily list of new tenders in their category.
- Bid teams see the closing date, the fee and the bank guarantee before they buy the documents.
- Sales and market analysts see who bid on each tender and at what price, from the opening reports.
- Consultancies watch several entities or sectors for their clients.
Working in Saudi Arabia too? See Etimad Tender Radar for Saudi government tenders.
Daily tender alert in 3 steps
- Set your filters. For example,
categoryContains=خدمات تقنية المعلوماتandonlyOpen=true. - Click Save as a new task, then add a daily schedule to the task.
- Connect the task to email, Slack or Google Sheets from the Integrations tab. New tenders then arrive every morning.
What you get
One record per tender. This record comes from a real run on 20 October 2026 (the long description and the calendar list are shortened here):
{"tenderNumber": "2026/146/و ت س/ م ر -25","internalId": "99301","title": "توريد مواد لمصنع الصاروج التابع لوزارة التراث والسياحة","titleEnglish": "Supply of Materials for the Sarooj Factory of the Ministry of Heritage and Tourism","description": "المشروع عبارة عن توفير مواد خاصة بإنتاج مادة الصاروج ...","entity": "وزارة التراث والسياحة","category": "التوريدات","grades": ["الثالثة", "الرابعة"],"tenderType": "مؤسسات صغيرة و المتوسطة","companyOrigin": "Local","view": "NewTenders","status": "New tenders (open for purchase and bidding)","isOpen": true,"salesEndDate": "2026-11-10","bidClosingDate": "2026-11-30","actualOpeningDate": null,"datesText": "Sales EndDate:10-11-2026-Bid Closing Date:30-11-2026","currency": "OMR","feeOmr": 25,"bankGuarantee": { "amount": null, "unit": null, "electronic": null, "text": null },"details": {"floatingDate": "2026-10-20","evaluationType": "حسب الجدول الزمني","tenderScope": "محلية","subCategories": ["توريد مواد ومعدات البناء"],"governorate": "محافظة مسقط","wilayats": ["ولاية مسقط"],"envelopeType": "مظروف واحد","feePaymentMethod": "إلكتروني","dates": {"documentSalesEnd": "2026-11-10T14:30:00+04:00","queriesEnd": "2026-11-19T14:30:00+04:00","bidSubmissionDeadline": "2026-11-30T10:00:00+04:00","financialBidOpening": "2026-11-30T11:00:00+04:00"}},"openingReport": null,"raw": {"title": "توريد مواد لمصنع الصاروج التابع لوزارة التراث والسياحة","category": "التوريدات [الثالثة,الرابعة]","tenderType": "مؤسسات صغيرة و المتوسطة [ Local]","fee": "25"},"url": "https://etendering.tenderboard.gov.om/product/nitParameterView?mode=public&tenderNo=99301&..."}
In the In process list, openingReport holds the opened bids. From the same day's run, tender 2026/4109/و ص/م ع خ ص ش ب م-216 (first 2 of 6 bids shown):
"openingReport": [{ "bidSerial": "1-[1]", "company": "التقنيات الناشئة المتميزة", "offerType": "العرض الأساسي", "totalPriceOmr": 1706.25, "totalPriceRaw": "1706.250", "status": "تم فتح العطاء المالي" },{ "bidSerial": "1-[2]", "company": "التقنيات الناشئة المتميزة", "offerType": "البديل1", "totalPriceOmr": 1942.5, "totalPriceRaw": "1942.500", "status": "تم فتح العطاء المالي" }]
Notes on the fields
- Money. All amounts are Omani rials. The
currencyfield saysOMRand the field names end inOmr. - Bank guarantee. The portal's list shows a bare number. That number is sometimes an OMR amount and sometimes a percent of the bid. The unit is only stated on the tender notice. With
includeDetailson,bankGuarantee.unitisOMRorPERCENT_OF_BID. With it off,unitstaysnull. - Dates. The list gives dates only, as ISO dates (
2026-11-30). The notice gives exact times in Oman time, as ISO with+04:00. The original text is kept indatesTextanddetails.calendar. - Titles.
titleis the Arabic title.titleEnglishis filled when the notice's main title is in English.descriptionis the longer description the portal attaches to the tender. - Raw text. Every record has a
rawobject with the text exactly as the portal published it, so you can search the portal for it. - Missing values are
null. The Actor never fills a gap with a guess. urlopens the tender notice on the portal. It works without logging in.openingReportUrlopens the bid-opening report. The portal serves it only with its session cookie. Open any portal page first, then the link.
Input
| Field | What it does |
|---|---|
view | NewTenders (default) or InProcessTenders. |
keywords | Words matched against title, description, entity, category and tender number. Arabic and English both work. Empty returns everything the other filters allow. |
matchMode | any (default) or all. |
entityContains | Keep tenders whose entity name contains this text, for example وزارة الصحة. |
categoryContains | Keep tenders whose category contains this text, for example التوريدات or خدمات تقنية المعلومات. |
onlyOpen | New tenders only. Drops tenders whose bid closing date has passed. On by default. |
includeDetails | Adds the tender notice fields: English title, governorate, wilayat, sub-categories, exact times, guarantee unit. On by default. |
includeOpeningReport | In process only. Adds the opened bids. On by default. |
maxItems | Hard cap on delivered tenders, and so on cost. Default 100. |
maxPages | How many list pages of 50 to read at most. Default 50. |
Arabic keywords are matched after normalisation. اعمال matches أعمال, صيانه matches صيانة, and مستشفي matches مستشفى. Diacritics, tatweel and Arabic-Indic digits are handled.
Example: open IT tenders
{"view": "NewTenders","categoryContains": "خدمات تقنية المعلومات","onlyOpen": true,"maxItems": 200}
Example: latest bid openings for Ministry of Health supply tenders
{"view": "InProcessTenders","categoryContains": "التوريدات","entityContains": "وزارة الصحة","includeOpeningReport": true,"maxItems": 100,"maxPages": 10}
Pricing
- Tender delivered: $0.005 per tender that passes your filters and is stored in your dataset ($5 per 1,000).
- Bid report: $0.02 extra per tender that carries a bid-opening report with every bidder and price ($20 per 1,000). Only In process tenders can have one. Turn off
includeOpeningReportto skip it.
maxItems caps the cost of any run.
Limits
- The portal shows 50 tenders per page. On 20 October 2026 the New tenders list had 46 pages (2,300 rows) and the In process list had 412 pages (about 20,550 rows).
- The New tenders list still includes tenders from earlier years. On 20 October 2026, 912 of its 2,290 distinct tenders had a closing date today or later. Keep
onlyOpenon to receive only those. - Keyword, entity and category filters run on the Actor's side. The portal's own search needs a signed browser form, so the Actor reads list pages and filters them. A narrow filter on the In process list may read many pages. Use
maxPagesto bound the run. - The order of the list can shift while a run is paging. The Actor removes duplicates by the portal's internal tender ID. In one full scan, 10 of 2,300 rows were repeats.
- The Actor waits at least 1 second between requests. It retries with backoff on HTTP 429, 5xx and network errors. Each delivered tender costs one extra request with
includeDetails, and one more withincludeOpeningReport. - Tender documents are sold on the portal and are not downloaded. The record links to the tender notice.
- Data comes from the public pages of the Tender Board portal. No login and no credentials are used.
Development
npm installnpm test # parser tests on saved live pagesapify run --purge # local run, reads storage/key_value_stores/default/INPUT.json