---
type: "firecrawl-provider"
description: "World Bank Indicators API v2: database catalog, indicator discovery, economies and aggregates, reference lists, observations (classic and dimension paths including International Debt Statistics) and extended series/economy metadata. Keyless public API."
use_when: "World Bank Indicators API v2: database catalog, indicator discovery, economies and aggregates, reference lists, observations (classic and dimension paths including International Debt Statistics) and extended series/economy metadata. Keyless public API."
categories: "Public records"
capabilities: 11
credits_per_call: 5
---
# World Bank Data on Firecrawl Alexandria

World Bank Indicators API v2: database catalog, indicator discovery, economies and aggregates, reference lists, observations (classic and dimension paths including International Debt Statistics) and extended series/economy metadata. Keyless public API.

- Categories: Public records
- Category index: [Public records category](https://firecrawl.dev/alexandria/agents/categories/public-records)
- Provider key: `data-worldbank-org`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/data-worldbank-org)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/openapi.json)

## Capabilities

- [Concept values](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/concept_values): The values of one dimension of a database, paged: the series of IDS (source 6), the counterpart areas (creditors) of IDS, the countries of a source, or its time periods.
- [Countries](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/countries): List economies and aggregates with ISO codes, region, admin region, income level, lending type, capital and coordinates. Filters `region`, `income_level` and `lending_type` (codes from `reference`) combine. `include_aggregates: false` drops regional and income groupings (region NA) from the page after fetching it.
- [Country](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/country): One economy or aggregate by ISO3, ISO2 or aggregate code (BRA, BR, WLD, HIC).
- [Data](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/data): Observations for one or more indicators and economies through the classic `country/{codes}/indicator/{ids}` path. `date` is a period or range in upstream syntax (2015:2024, 2023, 2023Q1:2024Q4, 2024M01:2024M06; quarterly and monthly periods exist only on sources such as 15 GEM). `mrv` returns the N most recent periods with a value instead (optional `gapfill`). Several indicators need `source_id`. Numbers are upstream's; `value` null means the period is listed without a value. A selection with no rows at all is a successful empty page with a warning. International Debt Statistics (source 6) series need `source_data`; upstream refuses them here.
- [Indicator](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/indicator): One indicator's metadata: name, unit, source, source note (definition), source organization and topics. Pass `source_id` when the code exists in several databases (SP.POP.TOTL is in 2 and 40).
- [Indicators](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/indicators): List or search indicators (series) in one database or one topic. Without `query` the upstream page is returned as is (server-side `page`/`per_page`). With `query` the whole scope is fetched once (up to 20,000 rows) and filtered client-side, because the API has no keyword search: every whitespace-separated word must appear in the indicator id or name, case-insensitively; paging then applies to the filtered list. Defaults to World Development Indicators (source 2) when neither `source_id` nor `topic_id` is given.
- [Metadata](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/metadata): Extended metadata attributes for one series (definition, aggregation method, periodicity, license type, statistical concept, ...) or one economy (currency, income group, national accounts base year, census years, ...) within a database. Attribute ids are upstream's `metatype` ids.
- [Reference](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/reference): Reference lists that other inputs take codes from: topics (21), regions (43), income levels (7) and lending types (4). Pass `code` to look one up.
- [Source concepts](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/source_concepts): The dimensions (concepts) of one database: Country, Series and Time for most sources; International Debt Statistics adds Counterpart-Area. Concept ids are the values `concept_values` and `metadata` take.
- [Source data](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/source_data): Observations through the dimension path `sources/{source_id}/country/{c}/series/{s}[/counterpart-area/{x}]/time/{t}/data`, which serves every database including International Debt Statistics (source 6, which needs `counterpart_area`, e.g. WLD for all creditors). Time ids use upstream's dimension form (YR2022) or `all`. Each row carries every dimension value upstream lists plus the numeric value.
- [Sources](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/sources): List the databases (sources) the World Bank Indicators API publishes, with code, vintage (`last_updated`) and whether data and metadata are available, or look one up by `source_id`. Source ids scope `indicators`, `data`, `source_data`, `source_concepts`, `concept_values` and `metadata`.

## 1. Choose this provider when

World Bank Indicators API v2: database catalog, indicator discovery, economies and aggregates, reference lists, observations (classic and dimension paths including International Debt Statistics) and extended series/economy metadata. Keyless public API.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "data-worldbank-org",
  "capability": "indicators/concept_values",
  "options": {
    "concept": "series",
    "per_page": 20,
    "source_id": "6"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `concept` (string, required): Concept id from `source_concepts`, case-insensitive: country, series, time, counterpart-area. Pattern: ^[A-Za-z-]{2,32}$. Example: `source_concepts`
- `page` (number): 1-based page number; pass `next_page` from the previous output to continue. Example: `1`
- `per_page` (number): Rows per page (upstream `per_page`). Example: `50`
- `source_id` (string, required): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "data-worldbank-org",
    capability: "indicators/concept_values",
    options: {
      concept: "series",
      per_page: 20,
      source_id: "6",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "data-worldbank-org",
  "capability": "indicators/concept_values",
  "options": {
    "concept": "series",
    "per_page": 20,
    "source_id": "6"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "data-worldbank-org",
    "capability": "indicators/concept_values",
    "options": {
      "concept": "series",
      "per_page": 20,
      "source_id": "6"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'data-worldbank-org/indicators/concept_values' \
  --options '{"concept":"series","per_page":20,"source_id":"6"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "data-worldbank-org",
  "capability": "indicators/concept_values",
  "options": {
    "concept": "series",
    "per_page": 20,
    "source_id": "6"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "data-worldbank-org",
  "capability": "indicators/concept_values",
  "options": {
    "concept": "series",
    "per_page": 20,
    "source_id": "6"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "concept": "series",
  "next_page": 2,
  "observed_at_ms": 1789999459549,
  "page": 1,
  "pages": 29,
  "per_page": 20,
  "records": [
    {
      "id": "BM.GSR.TOTL.CD",
      "name": "Imports of goods, services and primary income (current US$)"
    },
    {
      "id": "BN.CAB.XOKA.CD",
      "name": "Current account balance (current US$)"
    },
    {
      "id": "BX.GRT.EXTA.CD.DT",
      "name": "Grants, excluding technical cooperation (current US$)"
    },
    {
      "id": "BX.GRT.TECH.CD.DT",
      "name": "Technical cooperation grants (current US$)"
    },
    {
      "id": "BX.GSR.TOTL.CD",
      "name": "Exports of goods, services and primary income (current US$)"
    },
    {
      "id": "BX.KLT.DINV.CD.DT",
      "name": "Foreign direct investment, net inflows in reporting economy (DRS, current US$)"
    },
    {
      "id": "BX.KLT.DREM.CD.DT",
      "name": "Primary income on FDI (current US$)"
    },
    {
      "id": "BX.PEF.TOTL.CD.DT",
      "name": "Portfolio investment, equity (DRS, current US$)"
    },
    {
      "id": "BX.TRF.PWKR.CD.DT",
      "name": "Personal transfers and compensation of employees, received (current US$)"
    },
    {
      "id": "DT.AMT.BLAT.CB.CD",
      "name": "CB, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.CD",
      "name": "PPG, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.GG.CD",
      "name": "GG, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.OPS.CD",
      "name": "OPS, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.PRVG.CD",
      "name": "PRVG, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.PS.CD",
      "name": "PS, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.CB.CD",
      "name": "CB, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.CD",
      "name": "PPG, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.GG.CD",
      "name": "GG, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.OPS.CD",
      "name": "OPS, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.PRVG.CD",
      "name": "PRVG, bilateral concessional (AMT, current US$)"
    }
  ],
  "source_id": "6",
  "source_name": "International Debt Statistics",
  "source_url": "https://api.worldbank.org/v2/sources/6/series?format=json&per_page=20&page=1",
  "total": 577,
  "warnings": []
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Concept values

- Capability: `indicators/concept_values`
- Description: The values of one dimension of a database, paged: the series of IDS (source 6), the counterpart areas (creditors) of IDS, the countries of a source, or its time periods.
- Instructions: Enumerate what a source can be queried by, e.g. IDS creditor codes for `source_data`.
- Cost: 5 credits per call
- Capability file: [Concept values](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/concept_values)

Accepted options:
- `concept` (string, required): Concept id from `source_concepts`, case-insensitive: country, series, time, counterpart-area. Pattern: ^[A-Za-z-]{2,32}$. Example: `source_concepts`
- `page` (number): 1-based page number; pass `next_page` from the previous output to continue. Example: `1`
- `per_page` (number): Rows per page (upstream `per_page`). Example: `50`
- `source_id` (string, required): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

Response schema example:
```json
{
  "concept": "series",
  "next_page": 2,
  "observed_at_ms": 1789999459549,
  "page": 1,
  "pages": 29,
  "per_page": 20,
  "records": [
    {
      "id": "BM.GSR.TOTL.CD",
      "name": "Imports of goods, services and primary income (current US$)"
    },
    {
      "id": "BN.CAB.XOKA.CD",
      "name": "Current account balance (current US$)"
    },
    {
      "id": "BX.GRT.EXTA.CD.DT",
      "name": "Grants, excluding technical cooperation (current US$)"
    },
    {
      "id": "BX.GRT.TECH.CD.DT",
      "name": "Technical cooperation grants (current US$)"
    },
    {
      "id": "BX.GSR.TOTL.CD",
      "name": "Exports of goods, services and primary income (current US$)"
    },
    {
      "id": "BX.KLT.DINV.CD.DT",
      "name": "Foreign direct investment, net inflows in reporting economy (DRS, current US$)"
    },
    {
      "id": "BX.KLT.DREM.CD.DT",
      "name": "Primary income on FDI (current US$)"
    },
    {
      "id": "BX.PEF.TOTL.CD.DT",
      "name": "Portfolio investment, equity (DRS, current US$)"
    },
    {
      "id": "BX.TRF.PWKR.CD.DT",
      "name": "Personal transfers and compensation of employees, received (current US$)"
    },
    {
      "id": "DT.AMT.BLAT.CB.CD",
      "name": "CB, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.CD",
      "name": "PPG, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.GG.CD",
      "name": "GG, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.OPS.CD",
      "name": "OPS, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.PRVG.CD",
      "name": "PRVG, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLAT.PS.CD",
      "name": "PS, bilateral (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.CB.CD",
      "name": "CB, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.CD",
      "name": "PPG, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.GG.CD",
      "name": "GG, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.OPS.CD",
      "name": "OPS, bilateral concessional (AMT, current US$)"
    },
    {
      "id": "DT.AMT.BLTC.PRVG.CD",
      "name": "PRVG, bilateral concessional (AMT, current US$)"
    }
  ],
  "source_id": "6",
  "source_name": "International Debt Statistics",
  "source_url": "https://api.worldbank.org/v2/sources/6/series?format=json&per_page=20&page=1",
  "total": 577,
  "warnings": []
}
```

### Countries

- Capability: `indicators/countries`
- Description: List economies and aggregates with ISO codes, region, admin region, income level, lending type, capital and coordinates. Filters `region`, `income_level` and `lending_type` (codes from `reference`) combine. `include_aggregates: false` drops regional and income groupings (region NA) from the page after fetching it.
- Instructions: Resolve country codes for `data`, or enumerate the members of a region or income group.
- Cost: 5 credits per call
- Capability file: [Countries](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/countries)

Accepted options:
- `include_aggregates` (boolean): include_aggregates Example: `false`
- `income_level` (string): Income level id: LIC, LMC, UMC, HIC, ... Pattern: ^[A-Za-z]{2,3}$. Example: `<income_level>`
- `lending_type` (string): Lending type id: IBD, IDB, IDX, LNX. Pattern: ^[A-Za-z]{2,3}$. Example: `<lending_type>`
- `page` (number): 1-based page number; pass `next_page` from the previous output to continue. Example: `1`
- `per_page` (number): Rows per page (upstream `per_page`). Example: `300`
- `region` (string): Region code, e.g. SSF, LCN, EAS. Pattern: ^[A-Za-z0-9]{2,3}$. Example: `<region>`

Response schema example:
```json
{
  "aggregates_excluded": 0,
  "next_page": null,
  "observed_at_ms": 1789999351501,
  "page": 1,
  "pages": 1,
  "per_page": 300,
  "records": [
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Bujumbura",
      "country_id": "BDI",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "BI",
      "latitude": -3.3784,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 29.3639,
      "name": "Burundi",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Ouagadougou",
      "country_id": "BFA",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "BF",
      "latitude": 12.3605,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": -1.53395,
      "name": "Burkina Faso",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Bangui",
      "country_id": "CAF",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "CF",
      "latitude": 5.63056,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 21.6407,
      "name": "Central African Republic",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Kinshasa",
      "country_id": "COD",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "CD",
      "latitude": -4.325,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 15.3222,
      "name": "Congo, Dem. Rep.",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Asmara",
      "country_id": "ERI",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "ER",
      "latitude": 15.3315,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 38.9183,
      "name": "Eritrea",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Addis Ababa",
      "country_id": "ETH",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "ET",
      "latitude": 9.02274,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 38.7468,
      "name": "Ethiopia",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Banjul",
      "country_id": "GMB",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "GM",
      "latitude": 13.4495,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": -16.5885,
      "name": "Gambia, The",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Bissau",
      "country_id": "GNB",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "GW",
      "latitude": 11.8037,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": -15.1804,
      "name": "Guinea-Bissau",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Monrovia",
      "country_id": "LBR",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "LR",
      "latitude": 6.30039,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": -10.7957,
      "name": "Liberia",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Antananarivo",
      "country_id": "MDG",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "MG",
      "latitude": -20.4667,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 45.7167,
      "name": "Madagascar",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Bamako",
      "country_id": "MLI",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "ML",
      "latitude": 13.5667,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": -7.50034,
      "name": "Mali",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Maputo",
      "country_id": "MOZ",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "MZ",
      "latitude": -25.9664,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 32.5713,
      "name": "Mozambique",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Lilongwe",
      "country_id": "MWI",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "MW",
      "latitude": -13.9899,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 33.7703,
      "name": "Malawi",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Niamey",
      "country_id": "NER",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "NE",
      "latitude": 13.514,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 2.1073,
      "name": "Niger",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Kigali",
      "country_id": "RWA",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "RW",
      "latitude": -1.95325,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 30.0587,
      "name": "Rwanda",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Khartoum",
      "country_id": "SDN",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "SD",
      "latitude": 15.5932,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 32.5363,
      "name": "Sudan",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Freetown",
      "country_id": "SLE",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "SL",
      "latitude": 8.4821,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": -13.2134,
      "name": "Sierra Leone",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Mogadishu",
      "country_id": "SOM",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "SO",
      "latitude": 2.07515,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 45.3254,
      "name": "Somalia, Fed. Rep.",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Juba",
      "country_id": "SSD",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "SS",
      "latitude": 4.85,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 31.6,
      "name": "South Sudan",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "N'Djamena",
      "country_id": "TCD",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "TD",
      "latitude": 12.1048,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 15.0445,
      "name": "Chad",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    },
    {
      "admin_region": {
        "id": "SSA",
        "iso2_code": "ZF",
        "name": "Sub-Saharan Africa (excluding high income)"
      },
      "capital_city": "Kampala",
      "country_id": "UGA",
      "income_level": {
        "id": "LIC",
        "iso2_code": "XM",
        "name": "Low income"
      },
      "is_aggregate": false,
      "iso2_code": "UG",
      "latitude": 0.314269,
      "lending_type": {
        "id": "IDX",
        "iso2_code": "XI",
        "name": "IDA"
      },
      "longitude": 32.5729,
      "name": "Uganda",
      "region": {
        "id": "SSF",
        "iso2_code": "ZG",
        "name": "Sub-Saharan Africa"
      }
    }
  ],
  "source_url": "https://api.worldbank.org/v2/country?format=json&per_page=300&page=1&region=SSF&incomeLevel=LIC",
  "total": 21,
  "warnings": []
}
```

### Country

- Capability: `indicators/country`
- Description: One economy or aggregate by ISO3, ISO2 or aggregate code (BRA, BR, WLD, HIC).
- Instructions: Confirm a code and read its region, income level and lending type before querying data.
- Cost: 5 credits per call
- Capability file: [Country](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/country)

Accepted options:
- `country_code` (string, required): ISO3 (BRA), ISO2 (BR) or aggregate code (WLD). Pattern: ^[A-Za-z0-9]{2,3}$. Example: `<country_code>`

Response schema example:
```json
{
  "country": {
    "admin_region": {
      "id": "LAC",
      "iso2_code": "XJ",
      "name": "Latin America & Caribbean (excluding high income)"
    },
    "capital_city": "Brasilia",
    "country_id": "BRA",
    "income_level": {
      "id": "UMC",
      "iso2_code": "XT",
      "name": "Upper middle income"
    },
    "is_aggregate": false,
    "iso2_code": "BR",
    "latitude": -15.7801,
    "lending_type": {
      "id": "IBD",
      "iso2_code": "XF",
      "name": "IBRD"
    },
    "longitude": -47.9292,
    "name": "Brazil",
    "region": {
      "id": "LCN",
      "iso2_code": "ZJ",
      "name": "Latin America & Caribbean"
    }
  },
  "observed_at_ms": 1789999355384,
  "source_url": "https://api.worldbank.org/v2/country/BRA?format=json"
}
```

### Data

- Capability: `indicators/data`
- Description: Observations for one or more indicators and economies through the classic `country/{codes}/indicator/{ids}` path. `date` is a period or range in upstream syntax (2015:2024, 2023, 2023Q1:2024Q4, 2024M01:2024M06; quarterly and monthly periods exist only on sources such as 15 GEM). `mrv` returns the N most recent periods with a value instead (optional `gapfill`). Several indicators need `source_id`. Numbers are upstream's; `value` null means the period is listed without a value. A selection with no rows at all is a successful empty page with a warning. International Debt Statistics (source 6) series need `source_data`; upstream refuses them here.
- Instructions: Fetch the actual numbers once you know the indicator id(s) and country code(s).
- Cost: 5 credits per call
- Capability file: [Data](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/data)

Accepted options:
- `country_codes` (string[]): ISO3/ISO2 or aggregate codes, or the single value `all`. Example: `[]`
- `date` (string): A period or `start:end` range; both ends in the same frequency. Exclusive with `mrv`. Pattern: ^[0-9]{4}(Q[1-4]|M(0[1-9]|1[0-2]))?(:[0-9]{4}(Q[1-4]|M(0[1-9]|1[0-2]))?)?$. Example: `start:end`
- `footnote` (boolean): Ask upstream for per-observation footnotes. Example: `false`
- `gapfill` (boolean): With `mrv`: carry the latest earlier value into periods with no value. Example: `false`
- `indicator_ids` (string[], required): One or more indicator codes from one database. Example: `[]`
- `mrv` (number): Most recent N periods with a value per series. Exclusive with `date`. Example: `10`
- `page` (number): 1-based page number; pass `next_page` from the previous output to continue. Example: `1`
- `per_page` (number): Rows per page (upstream `per_page`). Example: `50`
- `source_id` (string): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

Response schema example:
```json
{
  "last_updated": "2026-07-13",
  "next_page": null,
  "observed_at_ms": 1789999364434,
  "page": 1,
  "pages": 1,
  "per_page": 50,
  "records": [
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2024",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 2185821610689.31
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2023",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 2191131765684.63
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2022",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1951923942083.32
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2021",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1670647398904.9
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2020",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1476107231310.49
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2019",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1873288205059.69
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2018",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1916933898010.99
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2017",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 2063514977365.65
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2016",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1795693482853.01
    },
    {
      "country_id": "BR",
      "country_iso3": "BRA",
      "country_name": "Brazil",
      "date": "2015",
      "decimal": 0,
      "footnote": null,
      "indicator_id": "NY.GDP.MKTP.CD",
      "indicator_name": "GDP (current US$)",
      "obs_status": null,
      "unit": null,
      "value": 1802212206814.5
    }
  ],
  "source_id": "2",
  "source_url": "https://api.worldbank.org/v2/country/BRA/indicator/NY.GDP.MKTP.CD?format=json&per_page=50&page=1&date=2015:2024",
  "total": 10,
  "warnings": []
}
```

### Indicator

- Capability: `indicators/indicator`
- Description: One indicator's metadata: name, unit, source, source note (definition), source organization and topics. Pass `source_id` when the code exists in several databases (SP.POP.TOTL is in 2 and 40).
- Instructions: You have an indicator id and need its definition or its source before calling `data`.
- Cost: 5 credits per call
- Capability file: [Indicator](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/indicator)

Accepted options:
- `indicator_id` (string, required): Indicator code, e.g. NY.GDP.MKTP.CD. Pattern: ^[A-Za-z0-9._-]+$. Example: `<indicator_id>`
- `source_id` (string): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

Response schema example:
```json
{
  "indicator": {
    "indicator_id": "NY.GDP.MKTP.CD",
    "name": "GDP (current US$)",
    "source_id": "2",
    "source_name": "World Development Indicators",
    "source_note": "Gross domestic product is the total income earned through the production of goods and services in an economic territory during an accounting period. It can be measured in three different ways: using either the expenditure approach, the income approach, or the production approach. This indicator is expressed in current prices, meaning no adjustment has been made to account for price changes over time. This indicator is expressed in United States dollars.",
    "source_organization": "Country official statistics, National Statistical Organizations and/or Central Banks;\nNational Accounts data files, Organisation for Economic Co-operation and Development (OECD);\nStaff estimates, World Bank (WB)",
    "source_url": "https://data.worldbank.org/indicator/NY.GDP.MKTP.CD",
    "topics": [
      {
        "name": "Economy & Growth",
        "topic_id": "3"
      }
    ],
    "unit": null
  },
  "observed_at_ms": 1789999347413,
  "source_url": "https://api.worldbank.org/v2/indicator/NY.GDP.MKTP.CD?format=json"
}
```

### Indicators

- Capability: `indicators/indicators`
- Description: List or search indicators (series) in one database or one topic. Without `query` the upstream page is returned as is (server-side `page`/`per_page`). With `query` the whole scope is fetched once (up to 20,000 rows) and filtered client-side, because the API has no keyword search: every whitespace-separated word must appear in the indicator id or name, case-insensitively; paging then applies to the filtered list. Defaults to World Development Indicators (source 2) when neither `source_id` nor `topic_id` is given.
- Instructions: Discover indicator ids for `indicator` and `data`; browse a topic (see `reference` kind topic) or a database.
- Cost: 5 credits per call
- Capability file: [Indicators](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/indicators)

Accepted options:
- `page` (number): 1-based page number; pass `next_page` from the previous output to continue. Example: `1`
- `per_page` (number): Rows per page (upstream `per_page`). Example: `50`
- `query` (string): Words that must all appear in the indicator id or name. Omit or leave empty to list the scope. Example: `<query>`
- `source_id` (string): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`
- `topic_id` (string): Topic id from `reference` (kind topic), e.g. 3 = Economy & Growth, 8 = Health. When given, `source_id` further restricts the topic's indicators to that database. Pattern: ^[0-9]{1,4}$. Example: `<topic_id>`

Response schema example:
```json
{
  "next_page": 2,
  "observed_at_ms": 1789999343328,
  "page": 1,
  "pages": 62,
  "per_page": 5,
  "query": null,
  "records": [
    {
      "indicator_id": "5.0.AMeanIncGr.All",
      "name": "Annualized Mean Income Growth (2004-2014)",
      "source_id": "37",
      "source_name": "LAC Equity Lab",
      "source_note": "The official indicator to monitor shared prosperity is the growth in real per capita income (or consumption) of the bottom 40 percent of the income (or consumption) distribution in a country.",
      "source_organization": "LAC Equity Lab tabulations of SEDLAC (CEDLAS and the World Bank) and World Development Indicators",
      "source_url": "https://data.worldbank.org/indicator/5.0.AMeanIncGr.All",
      "topics": [
        {
          "name": "Economy & Growth",
          "topic_id": "3"
        }
      ],
      "unit": null
    },
    {
      "indicator_id": "5.0.AMeanIncGr.B40",
      "name": "Annualized Mean Income Growth Bottom 40 Percent (2004-2014)",
      "source_id": "37",
      "source_name": "LAC Equity Lab",
      "source_note": "The indicator to monitor shared prosperity is the growth in real per capita income (or consumption) of the bottom 40 percent of the income (or consumption) distribution in a country.",
      "source_organization": "LAC Equity Lab tabulations of SEDLAC (CEDLAS and the World Bank) and World Development Indicators",
      "source_url": "https://data.worldbank.org/indicator/5.0.AMeanIncGr.B40",
      "topics": [
        {
          "name": "Economy & Growth",
          "topic_id": "3"
        }
      ],
      "unit": null
    },
    {
      "indicator_id": "5.1.AMeanIncGr.All",
      "name": "Annualized Mean Income Growth (2004-2009)",
      "source_id": "37",
      "source_name": "LAC Equity Lab",
      "source_note": "The indicator to monitor shared prosperity is the growth in real per capita income (or consumption) of the bottom 40 percent of the income (or consumption) distribution in a country.",
      "source_organization": "LAC Equity Lab tabulations of SEDLAC (CEDLAS and the World Bank) and World Development Indicators",
      "source_url": "https://data.worldbank.org/indicator/5.1.AMeanIncGr.All",
      "topics": [
        {
          "name": "Economy & Growth",
          "topic_id": "3"
        }
      ],
      "unit": null
    },
    {
      "indicator_id": "5.1.AMeanIncGr.B40",
      "name": "Annualized Mean Income Growth Bottom 40 Percent (2004-2009)",
      "source_id": "37",
      "source_name": "LAC Equity Lab",
      "source_note": "The indicator to monitor shared prosperity is the growth in real per capita income (or consumption) of the bottom 40 percent of the income (or consumption) distribution in a country.",
      "source_organization": "LAC Equity Lab tabulations of SEDLAC (CEDLAS and the World Bank) and World Development Indicators",
      "source_url": "https://data.worldbank.org/indicator/5.1.AMeanIncGr.B40",
      "topics": [
        {
          "name": "Economy & Growth",
          "topic_id": "3"
        }
      ],
      "unit": null
    },
    {
      "indicator_id": "5.2.AMeanIncGr.All",
      "name": "Annualized Mean Income Growth (2009-2014)",
      "source_id": "37",
      "source_name": "LAC Equity Lab",
      "source_note": "The indicator to monitor shared prosperity is the growth in real per capita income (or consumption) of the bottom 40 percent of the income (or consumption) distribution in a country.",
      "source_organization": "LAC Equity Lab tabulations of SEDLAC (CEDLAS and the World Bank) and World Development Indicators",
      "source_url": "https://data.worldbank.org/indicator/5.2.AMeanIncGr.All",
      "topics": [
        {
          "name": "Economy & Growth",
          "topic_id": "3"
        }
      ],
      "unit": null
    }
  ],
  "scope": "topic 3",
  "source_url": "https://api.worldbank.org/v2/topic/3/indicator?format=json&per_page=5&page=1",
  "total": 306,
  "warnings": []
}
```

### Metadata

- Capability: `indicators/metadata`
- Description: Extended metadata attributes for one series (definition, aggregation method, periodicity, license type, statistical concept, ...) or one economy (currency, income group, national accounts base year, census years, ...) within a database. Attribute ids are upstream's `metatype` ids.
- Instructions: Read the definition, license or methodology notes behind a series, or an economy's statistical profile.
- Cost: 5 credits per call
- Capability file: [Metadata](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/metadata)

Accepted options:
- `concept` (string, required): Which dimension the id belongs to. Example: `series`
- `id` (string, required): Series code (NY.GDP.MKTP.CD) or economy code (BRA). Pattern: ^[A-Za-z0-9._-]+$. Example: `<id>`
- `source_id` (string, required): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

Response schema example:
```json
{
  "attributes": [
    {
      "id": "Aggregationmethod",
      "value": "Gap-filled total"
    },
    {
      "id": "Dataset",
      "value": "WB_WDI"
    },
    {
      "id": "Developmentrelevance",
      "value": "This indicator is related to the national accounts, which are critical for understanding and managing a country's economy. They provide a framework for the analysis of economic performance. National accounts are the basis for estimating the Gross Domestic Product (GDP) and Gross National Income (GNI), which are the most widely used indicator of economic performance. They are essential for government policymakers, providing the data needed to design and assess fiscal and monetary policies; and are also used by businesses and investors to assess the economic climate and make investment decisions. NAS enable comparison between economies, which is crucial for international trade, investment decisions, and economic competitiveness. More specifically, this indicator is related to national accounts aggregates. Gross Domestic Product (GDP), Gross National Income (GNI), and other aggregates provide a snapshot of the size and health of an economy by measuring the total economic activity within a country. They can thus be used by policymakers to design and implement economic policies, as they reflect the overall economic performance and can indicate the need for intervention in certain areas. Aggregates also allow for comparisons between different economies, which can be useful for trade negotiations, investment decisions, and economic benchmarking. By examining aggregates over time, economists and analysts can identify trends, cycles, and potential areas of concern within an economy, and investors can use national accounts aggregates to assess the potential risks and returns of investing in a particular country. Overall, national accounts aggregates are fundamental tools for economic analysis, policy formulation, and decision-making at both the national and international levels."
    },
    {
      "id": "IndicatorName",
      "value": "GDP (current US$)"
    },
    {
      "id": "License_Type",
      "value": "CC BY-4.0"
    },
    {
      "id": "License_URL",
      "value": "https://datacatalog.worldbank.org/int/public-licenses#cc-by"
    },
    {
      "id": "Limitationsandexceptions",
      "value": "Gross domestic product (GDP), though widely tracked, may not always be the most relevant summary of aggregated economic performance for all economies, especially when production occurs at the expense of consuming capital stock.\n\n\n\n\n\n\n\n\n\nWhile GDP estimates based on the production approach are generally more reliable than estimates compiled from the income or expenditure side, different countries use different definitions, methods, and reporting standards. World Bank staff review the quality of national accounts data and sometimes make adjustments to improve consistency with international guidelines. Nevertheless, significant discrepancies remain between international standards and actual practice. Many statistical offices, especially those in developing countries, face severe limitations in the resources, time, training, and budgets required to produce reliable and comprehensive series of national accounts statistics.\n\n\n\n\n\n\n\n\n\nAmong the difficulties faced by compilers of national accounts is the extent of unreported economic activity in the informal or secondary economy. In developing countries a large share of agricultural output is either not exchanged (because it is consumed within the household) or not exchanged for money."
    },
    {
      "id": "Longdefinition",
      "value": "Gross domestic product is the total income earned through the production of goods and services in an economic territory during an accounting period. It can be measured in three different ways: using either the expenditure approach, the income approach, or the production approach. This indicator is expressed in current prices, meaning no adjustment has been made to account for price changes over time. This indicator is expressed in United States dollars."
    },
    {
      "id": "Periodicity",
      "value": "Annual"
    },
    {
      "id": "Referenceperiod",
      "value": "1960-2025"
    },
    {
      "id": "Source",
      "value": "Country official statistics, National Statistical Organizations and/or Central Banks;\nNational Accounts data files, Organisation for Economic Co-operation and Development (OECD);\nStaff estimates, World Bank (WB)"
    },
    {
      "id": "Statisticalconceptandmethodology",
      "value": "Methodology: National accounts are compiled in accordance with international standards: System of National Accounts, 2008 or 1993 versions. Specific information on how countries compile their national accounts can be found on the IMF website: https://dsbb.imf.org/\nStatistical concept(s): The conceptual elements of the SNA (System of National Accounts) measure what takes place in the economy, between which agents, and for what purpose. At the heart of the SNA is the production of goods and services. These may be used for consumption in the period to which the accounts relate or may be accumulated for use in a later period. In simple terms, the amount of value added generated by production represents GDP. The income corresponding to GDP is distributed to the various agents or groups of agents as income and it is the process of distributing and redistributing income that allows one agent to consume the goods and services produced by another agent or to acquire goods and services for later consumption. The way in which the SNA captures this pattern of economic flows is to identify the activities concerned by recognizing the institutional units in the economy and by specifying the structure of accounts capturing the transactions relevant to one stage or another of the process by which goods and services are produced and ultimately consumed."
    },
    {
      "id": "Topic",
      "value": "Economic Policy & Debt: National accounts: US$ at current prices: Aggregate indicators"
    },
    {
      "id": "Unitofmeasure",
      "value": "current US$"
    }
  ],
  "concept": "Series",
  "id": "NY.GDP.MKTP.CD",
  "observed_at_ms": 1789999469425,
  "source_id": "2",
  "source_name": "World Development Indicators",
  "source_url": "https://api.worldbank.org/v2/sources/2/series/NY.GDP.MKTP.CD/metadata?format=json"
}
```

### Reference

- Capability: `indicators/reference`
- Description: Reference lists that other inputs take codes from: topics (21), regions (43), income levels (7) and lending types (4). Pass `code` to look one up.
- Instructions: Find valid `topic_id`, `region`, `income_level` or `lending_type` codes.
- Cost: 5 credits per call
- Capability file: [Reference](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/reference)

Accepted options:
- `code` (string): One item: topic id (3), region code (SSF), income level (LIC) or lending type (IDX). Pattern: ^[A-Za-z0-9]{1,4}$. Example: `<code>`
- `kind` (string, required): kind Example: `topic`

Response schema example:
```json
{
  "kind": "income_level",
  "next_page": null,
  "observed_at_ms": 1789999359317,
  "page": 1,
  "pages": 1,
  "per_page": 500,
  "records": [
    {
      "description": null,
      "id": "HIC",
      "iso2_code": "XD",
      "kind": "income_level",
      "name": "High income"
    },
    {
      "description": null,
      "id": "INX",
      "iso2_code": "XY",
      "kind": "income_level",
      "name": "Not classified"
    },
    {
      "description": null,
      "id": "LIC",
      "iso2_code": "XM",
      "kind": "income_level",
      "name": "Low income"
    },
    {
      "description": null,
      "id": "LMC",
      "iso2_code": "XN",
      "kind": "income_level",
      "name": "Lower middle income"
    },
    {
      "description": null,
      "id": "LMY",
      "iso2_code": "XO",
      "kind": "income_level",
      "name": "Low & middle income"
    },
    {
      "description": null,
      "id": "MIC",
      "iso2_code": "XP",
      "kind": "income_level",
      "name": "Middle income"
    },
    {
      "description": null,
      "id": "UMC",
      "iso2_code": "XT",
      "kind": "income_level",
      "name": "Upper middle income"
    }
  ],
  "source_url": "https://api.worldbank.org/v2/incomeLevel?format=json&per_page=500",
  "total": 7,
  "warnings": []
}
```

### Source concepts

- Capability: `indicators/source_concepts`
- Description: The dimensions (concepts) of one database: Country, Series and Time for most sources; International Debt Statistics adds Counterpart-Area. Concept ids are the values `concept_values` and `metadata` take.
- Instructions: Before `concept_values` or `source_data` on an unfamiliar source.
- Cost: 5 credits per call
- Capability file: [Source concepts](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/source_concepts)

Accepted options:
- `source_id` (string, required): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

Response schema example:
```json
{
  "concepts": [
    {
      "id": "Country",
      "name": "Country"
    },
    {
      "id": "Series",
      "name": "Series"
    },
    {
      "id": "Time",
      "name": "Time"
    },
    {
      "id": "Counterpart-Area",
      "name": "Counterpart-Area"
    }
  ],
  "observed_at_ms": 1789999372501,
  "source_id": "6",
  "source_name": "International Debt Statistics",
  "source_url": "https://api.worldbank.org/v2/sources/6/concepts?format=json"
}
```

### Source data

- Capability: `indicators/source_data`
- Description: Observations through the dimension path `sources/{source_id}/country/{c}/series/{s}[/counterpart-area/{x}]/time/{t}/data`, which serves every database including International Debt Statistics (source 6, which needs `counterpart_area`, e.g. WLD for all creditors). Time ids use upstream's dimension form (YR2022) or `all`. Each row carries every dimension value upstream lists plus the numeric value.
- Instructions: Use for IDS (source 6) series, or when you want the dimension-keyed form of a series from any source.
- Cost: 5 credits per call
- Capability file: [Source data](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/source_data)

Accepted options:
- `counterpart_area` (string): Counterpart-Area dimension value for IDS (source 6): WLD for all creditors, or a creditor code from `concept_values` (concept counterpart-area). Pattern: ^[A-Za-z0-9]{2,3}$. Example: `concept_values`
- `country_codes` (string[]): ISO3 or aggregate codes, or `all`. Example: `[]`
- `page` (number): 1-based page number; pass `next_page` from the previous output to continue. Example: `1`
- `per_page` (number): Rows per page (upstream `per_page`). Example: `50`
- `series_ids` (string[], required): Series (indicator) codes within the source. Example: `[]`
- `source_id` (string, required): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`
- `time_ids` (string[]): Time dimension ids (YR2022) or `all`. Example: `[]`

Response schema example:
```json
{
  "last_updated": "2025-12-03",
  "next_page": null,
  "observed_at_ms": 1789999368521,
  "page": 1,
  "pages": 1,
  "per_page": 50,
  "records": [
    {
      "counterpart_area_id": "WLD",
      "country_id": "BRA",
      "dimensions": [
        {
          "concept": "Country",
          "id": "BRA",
          "name": "Brazil"
        },
        {
          "concept": "Time",
          "id": "YR2022",
          "name": "2022"
        },
        {
          "concept": "Series",
          "id": "DT.DOD.DECT.CD",
          "name": "External debt stocks, total (DOD, current US$)"
        },
        {
          "concept": "Counterpart-Area",
          "id": "WLD",
          "name": "World"
        }
      ],
      "series_id": "DT.DOD.DECT.CD",
      "time_id": "YR2022",
      "value": 579257850288.2
    },
    {
      "counterpart_area_id": "WLD",
      "country_id": "BRA",
      "dimensions": [
        {
          "concept": "Country",
          "id": "BRA",
          "name": "Brazil"
        },
        {
          "concept": "Time",
          "id": "YR2023",
          "name": "2023"
        },
        {
          "concept": "Series",
          "id": "DT.DOD.DECT.CD",
          "name": "External debt stocks, total (DOD, current US$)"
        },
        {
          "concept": "Counterpart-Area",
          "id": "WLD",
          "name": "World"
        }
      ],
      "series_id": "DT.DOD.DECT.CD",
      "time_id": "YR2023",
      "value": 607387151485.1
    }
  ],
  "source_id": "6",
  "source_name": "International Debt Statistics",
  "source_url": "https://api.worldbank.org/v2/sources/6/country/BRA/series/DT.DOD.DECT.CD/counterpart-area/WLD/time/YR2022;YR2023/data?format=json&per_page=50&page=1",
  "total": 2,
  "warnings": []
}
```

### Sources

- Capability: `indicators/sources`
- Description: List the databases (sources) the World Bank Indicators API publishes, with code, vintage (`last_updated`) and whether data and metadata are available, or look one up by `source_id`. Source ids scope `indicators`, `data`, `source_data`, `source_concepts`, `concept_values` and `metadata`.
- Instructions: Start here to find the source id of a database (2 WDI, 6 IDS, 15 GEM) or to read its vintage.
- Cost: 5 credits per call
- Capability file: [Sources](https://firecrawl.dev/alexandria/agents/providers/data-worldbank-org/indicators/sources)

Accepted options:
- `source_id` (string): World Bank database (source) id as a string, exactly as the API returns it: 2 = World Development Indicators, 6 = International Debt Statistics, 15 = Global Economic Monitor, 40 = Population estimates and projections. Pattern: ^[0-9]{1,5}$. Example: `<source_id>`

Response schema example:
```json
{
  "next_page": null,
  "observed_at_ms": 1789999322168,
  "page": 1,
  "pages": 1,
  "per_page": 50,
  "records": [
    {
      "code": "WDI",
      "concepts": 3,
      "data_availability": true,
      "description": null,
      "last_updated": "2026-07-13",
      "metadata_availability": true,
      "name": "World Development Indicators",
      "source_id": "2",
      "url": null
    }
  ],
  "source_url": "https://api.worldbank.org/v2/sources/2?format=json",
  "total": 1,
  "warnings": []
}
```
