adb.org APIadb.org ↗
Search and retrieve ADB project listings and full project details including status, financing, country, and sector data via two simple endpoints.
curl -X GET 'https://api.parse.bot/scraper/ead51173-e3c5-4609-ba1a-bdd3222f619c/get_projects?page=0&query=energy&status=Active' \ -H 'X-API-Key: $PARSE_API_KEY'
Search and list projects from the Asian Development Bank with optional filtering by keyword, country, and status. Returns paginated results with 15 projects per page.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (0-indexed, 15 results per page) |
| query | string | Search terms to filter projects by keyword |
| status | string | Project status filter. Accepted values: Active, Approved, Archived, Closed, Dropped / Terminated, Proposed |
| country | string | Country/economy name for filtering (e.g., India, Thailand, Indonesia, Bangladesh, Nepal) |
| fetch_descriptions | boolean | Whether to include project body descriptions in results (available from the search index without extra requests) |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"has_more": "boolean, whether more pages are available",
"projects": "array of project objects with title, url, status, date, project_id, country, category, description, approval_year",
"total_results": "integer, total number of matching projects"
},
"sample": {
"data": {
"page": 0,
"has_more": true,
"projects": [
{
"url": "https://www.adb.org/projects/59364-001/main",
"date": "19 Jan 2029",
"title": "Green Investment Platform Project",
"status": "Proposed",
"country": "Thailand",
"category": "Finance",
"project_id": "59364-001",
"description": null,
"approval_year": 2029
}
],
"total_results": 12681
},
"status": "success"
}
}About the adb.org API
The ADB API exposes 2 endpoints for accessing Asian Development Bank project data across dozens of countries and sectors. get_projects returns paginated listings filterable by keyword, country, and status, while get_project_details delivers full project records including financing details, responsible officers, approval dates, and structured key-value fields from each project page.
Searching and Filtering ADB Projects
The get_projects endpoint returns up to 15 projects per page (0-indexed pagination) and accepts four optional filters: query for keyword search, country to narrow by economy (e.g., India, Bangladesh, Nepal), status to filter by lifecycle stage (Active, Approved, Archived, Closed, Dropped / Terminated, or Proposed), and fetch_descriptions to include body text from the search index. Each result in the projects array includes title, url, status, date, project_id, country, category, description, and approval_year. The total_results field and has_more boolean make it straightforward to paginate through large result sets.
Retrieving Full Project Records
The get_project_details endpoint accepts either a project_id (e.g., 59364-001) or a full url pointing to a project's main page. The response surfaces structured fields — title, status, country, category, description, date, and project_id — plus a raw_details object that contains all additional key-value pairs from the project page, which can include financing amounts, executing agencies, project officers, and sector classifications depending on what ADB has published for that project.
Coverage and Data Shape
ADB publishes projects spanning sovereign and non-sovereign operations across Asia and the Pacific. The status vocabulary (Active, Approved, Archived, Closed, Dropped / Terminated, Proposed) maps directly to ADB's own project lifecycle classifications. The category field reflects ADB's sector and subsector taxonomy. Because raw_details is a flexible key-value object, the specific keys present will vary by project — older or simpler records may have fewer fields than current flagship operations.
- Build a dashboard tracking all Active ADB infrastructure projects in Southeast Asia by filtering on
statusandcountry. - Aggregate approval year data across filtered project sets to analyze ADB lending trends by sector or region.
- Pull
raw_detailsfromget_project_detailsto extract financing amounts and executing agencies for due diligence research. - Monitor newly Proposed projects in a specific country by polling
get_projectswithstatus=Proposedand a country filter. - Compile a dataset of closed projects in Bangladesh to evaluate historical ADB engagement in a specific economy.
- Cross-reference
project_idvalues from search results with full detail records to enrich a database of development finance initiatives. - Extract responsible officer information from
raw_detailsto map ADB staff assignments across sectors.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does ADB have an official developer API?+
What does the `raw_details` field in `get_project_details` actually contain?+
raw_details is an object of all key-value pairs found on the project page. Its contents vary by project but commonly include fields like financing amounts, executing and implementing agencies, sector classifications, and project officers. There is no fixed schema — keys present depend on what ADB has published for that specific record.How does pagination work in `get_projects`, and what if I need more than 15 results?+
has_more boolean and a total_results integer. To retrieve additional pages, increment the page parameter and continue until has_more is false.Does the API return procurement notices, tenders, or consultant opportunities linked to ADB projects?+
raw_details. Procurement and consulting opportunity data published elsewhere on ADB's site is not included. You can fork this API on Parse and revise it to add an endpoint targeting those sections.Can I filter projects by sector or subsector directly?+
sector filter parameter in get_projects. The category field is returned in results and reflects ADB's sector taxonomy, but filtering by it requires using the query parameter with a keyword. You can fork this API on Parse and revise it to expose a dedicated sector filter if your use case requires it.