# google-gax

> Google API Extensions

Latest version **6.4.0** (published 2026-09-16) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install google-gax
pnpm add google-gax
yarn add google-gax
bun add google-gax
```

## Health

**Score 70/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; recently updated; high maintenance score; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 6.4.0 |
| Published | 2026-09-16 |
| First published | 2016-06-10 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=22 |
| Dependencies | 11 |
| Unpacked size | 5.6 MB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 3196 |
| Author | Google API Authors |
| Maintainers | google-wombot, ofrobots, mrdoob |
| Keywords | grpc |

## Links

- npm: https://www.npmjs.com/package/google-gax
- Repository: https://github.com/googleapis/google-cloud-node
- Homepage: https://github.com/googleapis/google-cloud-node/tree/main/core/packages/gax
- Issues: https://github.com/googleapis/google-cloud-node/issues
- npm.io page: https://npm.io/package/google-gax

## Dependencies (11)

- [duplexify](https://npm.io/package/duplexify.md) ^4.1.3
- [node-fetch](https://npm.io/package/node-fetch.md) ^3.3.2
- [protobufjs](https://npm.io/package/protobufjs.md) ^7.5.4
- [object-hash](https://npm.io/package/object-hash.md) ^3.0.0
- [@grpc/grpc-js](https://npm.io/package/@grpc/grpc-js.md) ^1.12.6
- [retry-request](https://npm.io/package/retry-request.md) ^9.0.0
- [@grpc/proto-loader](https://npm.io/package/@grpc/proto-loader.md) ^0.8.0
- [@opentelemetry/api](https://npm.io/package/@opentelemetry/api.md) ^1.9.0
- [google-auth-library](https://npm.io/package/google-auth-library.md) ^11.0.0
- [google-logging-utils](https://npm.io/package/google-logging-utils.md) ^2.0.0
- [proto3-json-serializer](https://npm.io/package/proto3-json-serializer.md) ^4.0.0

## Recent versions

- 6.4.0 (latest) — 2026-09-16
- 5.0.8 (legacy-18) — 2026-07-23
- 6.0.1-experimental (experimental) — 2025-06-12
- 5.1.1-rc.1 (rc) — 2025-06-02
- 4.4.1 (legacy-14) — 2024-09-04
- 4.0.2-debug (debug) — 2023-07-25
- 4.0.1 (next) — 2023-07-21
- 2.30.5 (legacy-10) — 2022-05-23
- 2.28.0-pre.1 (rest_stream) — 2021-11-04
- 1.15.4 (legacy-8) — 2021-07-21
- 2.12.0-pre.1 (load-proto-json) — 2021-04-23
- 2.9.0-bundle (bundle) — 2020-09-25
- 6.3.0 — 2026-09-09
- 6.2.0 — 2026-09-03
- 6.1.0 — 2026-08-26
- … 377 more at https://npm.io/package/google-gax/versions

## README

<img src="https://avatars0.githubusercontent.com/u/1342004?v=3&s=96" alt="Google Inc. logo" title="Google" align="right" height="96" width="96"/>

# Google API Extensions for Node.js

[![Release Level][releaselevelimg]][releaselevel]
[![npm version][npmimg]][npm]

Google API Extensions for Node.js (gax-nodejs) is a set of modules which aids the development of APIs for clients and servers based on [gRPC][grpc] and Google API conventions.

Application code will rarely need to use most of the classes within this library directly, but code generated automatically from the API definition files in [Google APIs][googleapis] can use services such as page streaming and request bundling to provide a more convenient and idiomatic API surface to callers.

## Installation
```sh
$ npm install google-gax
```

## Supporting older version of Node.js

This library uses [grpc-js](https://www.npmjs.com/package/@grpc/grpc-js) package for communicating with API server, and it uses HTTP/2 functionality
that is only available in Node.js v8.13.0 or newer. If you need to use this library with older versions of Node.js, you need to make your code depend
on a legacy gRPC library ([grpc](https://www.npmjs.com/package/grpc)) and pass the instance of gRPC to the client constructor:

```js
const grpc = require('grpc');
const client = new APIClient({ grpc }); // APIClient is the client class you use, e.g. SpeechClient, etc.
```

## Contributing
Contributions to this library are always welcome and highly encouraged.  See the [CONTRIBUTING][contributing] documentation for more information on how to get started.

## Details
For detailed documentation of the modules in gax-nodejs, please check out the [docs][docs].

## License
Apache 2.0 - See [LICENSE][license] for more information.

[contributing]: https://github.com/googleapis/gax-nodejs/blob/main/CONTRIBUTING.md
[docs]: http://googleapis.github.io/gax-nodejs/
[license]: https://github.com/googleapis/gax-nodejs/blob/main/LICENSE
[npmimg]: https://img.shields.io/npm/v/google-gax.svg
[npm]: https://www.npmjs.org/package/google-gax
[googleapis]: https://github.com/googleapis/googleapis/
[grpc]: http://grpc.io
[releaselevel]: https://cloud.google.com/terms/launch-stages
[releaselevelimg]: https://img.shields.io/badge/release%20level-general%20availability%20%28GA%29-brightgreen.svg?style=flat

---
_Source: https://npm.io/package/google-gax · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
