Gov APImoei.gov.ae ↗
Access all public tenders from the UAE Ministry of Energy and Infrastructure. Retrieve tender titles, status, categories, dates, and work statements via one endpoint.
What is the Gov API?
The MOEI Tenders API exposes public procurement opportunities from the UAE Ministry of Energy and Infrastructure through a single endpoint, list_tenders, returning up to the full live set of tenders with 10 structured fields per record. Each tender object includes reference numbers, status, category, location, opening date, and a work statement, giving developers a reliable feed of UAE government contract opportunities without manual browsing.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/91d1b263-cdc6-427f-a7c1-fab493bd4cf4/list_tenders' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace moei-gov-ae-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: MOEI Tenders SDK — bounded, re-runnable; every call capped."""
from parse_apis.moei_gov_ae_api import Moei, ParseError
client = Moei()
# List all current tenders from UAE Ministry of Energy and Infrastructure.
for tender in client.tenders.list(limit=3):
print(tender.title, tender.status, tender.reference_number)
# Get the first tender and inspect its detail fields.
item = client.tenders.list(limit=1).first()
if item:
try:
print(item.title, item.opening_date, item.location)
print(item.work_statement[:100])
except ParseError as e:
print(f"error: {e}")
print("exercised: tenders.list")
Retrieves all current public tenders from the UAE Ministry of Energy and Infrastructure. Returns the complete list of available tenders including open and closed items. Results are auto-iterated as a single page; no pagination parameter is needed.
No input parameters required.
{
"type": "object",
"fields": {
"total": "integer count of tenders returned",
"tenders": "array of tender objects with id, reference_number, title, type, category, status, location, opening_date, work_statement, docs_value, and detail_url"
},
"sample": {
"data": {
"total": 3,
"tenders": [
{
"id": 1153,
"type": "Others",
"title": "Construction, completion and Development of the Treated Wastewater Network in Ajman City",
"status": "Open",
"category": "D",
"location": "Sharjah",
"detail_url": "https://www.moei.gov.ae/en-us/pages/workflowlogin.aspx?URL=/en-us/Competition/Pages/TenderParticipationForm.aspx?ref=1153",
"docs_value": "0 AED",
"opening_date": "12/08/2026",
"work_statement": "Construction of treated sewerage effluent (TSE) network...",
"reference_number": "2026-16"
}
]
},
"status": "success"
}
}About the Gov API
What the API Returns
The list_tenders endpoint returns the complete, current set of public tenders published by the UAE Ministry of Energy and Infrastructure. The response includes a total count alongside a tenders array. Each object in that array carries: id, reference_number, title, type, category, status, location, opening_date, work_statement, and docs_val. This gives you everything needed to identify, classify, and monitor live procurement opportunities.
Endpoint Behavior and Pagination
list_tenders requires no input parameters. Results are returned as a single auto-iterated collection, so there is no page number or offset to manage. Both open and closed tenders are included in the same response; use the status field to filter by availability. The category field distinguishes tender type (e.g., energy, infrastructure), while type further classifies the procurement method.
Data Coverage and Scope
Coverage is limited to tenders listed on the official MOEI public tenders page. The work_statement field provides a plain-text description of scope, and docs_val indicates whether tender documents are available. Location data is captured in the location field, which is useful when filtering for regionally relevant contracts across the UAE.
The Gov API is a managed, monitored endpoint for moei.gov.ae — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when moei.gov.ae changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official moei.gov.ae API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Alert procurement teams when a new tender matching a target
categoryappears on MOEI - Build a dashboard tracking open vs. closed tender
statuschanges over time - Index
work_statementtext to identify contracts relevant to a specific trade or service - Extract
opening_datevalues to populate a bid-deadline calendar for energy-sector contractors - Aggregate
reference_numberandtitlefields into a searchable tender database for compliance reporting - Monitor
locationfield to surface region-specific UAE infrastructure opportunities
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does the UAE Ministry of Energy and Infrastructure provide an official developer API for tender data?+
What does the `status` field tell me, and can I filter tenders by status in the request?+
status field indicates whether a tender is open or closed. There is no server-side filter parameter on list_tenders; the endpoint always returns all tenders. You apply status filtering client-side after receiving the full response.