What's Changed
@nestjs/axios is now a native ES module, and the major version is aligned with the Nest 12 release line (there is no 5.x — 4.0.1 goes straight to 12.0.0).
ESM migration
The package is published as pure ESM ("type": "module", compiled with NodeNext) behind a proper exports map. The legacy root index.js / index.d.ts / index.ts shims are gone, and deep imports into build internals are no longer resolvable — import from the package root:
import { HttpModule, HttpService } from '@nestjs/axios';require(esm) — CommonJS still works
You do not need to convert your app to ESM. Thanks to Node's require(esm) support, a CommonJS app can keep doing:
const { HttpModule, HttpService } = require('@nestjs/axios');This is why the supported Node range is now declared explicitly:
"engines": {
"node": "^20.19.0 || ^22.12.0 || >=24.0.0"
}Those are the versions where require(esm) is available and unflagged. On older Node releases, requiring this package will fail with ERR_REQUIRE_ESM.
Upgrading
For most applications, the upgrade is:
npm i @nestjs/axios@12Then check that:
- You are on Node 20.19+ / 22.12+ / 24+.
- You do not import from internal paths such as
@nestjs/axios/dist/...— import from the package root instead. - If you were importing from the removed root
index.jsshim path explicitly, drop the path and import the package by name.