All of the Google API's protocol buffer files
The "google-proto-files" npm package is a vital tool for developers working with Google APIs, providing easy access to all the necessary protocol buffer files. Protocol buffers are a method of serializing structured data, used extensively by Google for almost all of its internal RPC protocols and file formats. By using the google-proto-files package, developers can ensure they are working with the most up-to-date definitions for Google services, enabling seamless integration and communication with Google's vast suite of cloud services and APIs. This package essentially acts as a bridge, simplifying the development process by providing precompiled protocol buffer files, which can be directly utilized in various applications.
To get started with using these protocol buffers in your project, the first step is to run the command `npm install google-proto-files`. This installation command adds the package to your project, granting immediate access to the protocol buffer files for Google's APIs such as Google Drive, Google Cloud Speech, and Google Ads, among others. Having these files locally available speeds up development time significantly, as there is no need to manually download or generate these files from Google's API specifications. This convenience allows developers to focus more on creating robust applications rather than dealing with setup and configuration.
The benefits of using the google-proto-files package extend beyond just easy access and integration. It ensures that applications are built on the latest, most secure, and efficient API protocols, which is crucial for maintaining compatibility and performance. Regular updates to the package mean that any changes Google makes to its APIs are quickly reflected, helping developers avoid potential pitfalls of outdated API interactions. This is particularly important for applications that rely heavily on Google Cloud services to handle critical operations. By leveraging this package, developers can confidently build and deploy applications that efficiently interact with Google APIs, enhancing functionality and user experience.
Core dependencies of this npm package and its dev dependencies.
protobufjs, walkdir, @compodoc/compodoc, @types/mocha, @types/node, @types/proxyquire, @types/sinon, c8, codecov, decompress-zip, got, gts, linkinator, mocha, proxyquire, sinon, typescript
A README file for the google-proto-files code repository. View Code
All of the Google API's protocol buffer files
A comprehensive list of changes in each version may be found in the CHANGELOG.
Read more about the client libraries for Cloud APIs, including the older Google APIs Client Libraries, in Client Libraries Explained.
Table of contents:
npm install google-proto-files
const protos = require('google-proto-files');
async function quickstart() {
// Get a directory path by executing as a function
const files = protos.getProtoPath('logging', 'v2');
console.log(files);
// node_modules/google-proto-files/google/logging/v2
// Get a path to the entry proto file for a specific API version
console.log(protos.pubsub.v1);
// node_modules/google-proto-files/google/pubsub/v1/pubsub.proto
// Load a proto which depends on google common protos.
const root1 = await protos.load('./cloudcats.proto');
const service1 = root1.lookup('example.MyService');
console.log(service1);
// Load protos synchronously
const root2 = protos.loadSync('./cloudcats.proto');
const service2 = root2.lookup('example.MyService');
console.log(service2);
}
quickstart();
Samples are in the samples/
directory. Each sample's README.md
has instructions for running its sample.
Sample | Source Code | Try it |
---|---|---|
Quickstart | source code | ![]() |
The Google APIs Proto Files Node.js Client API Reference documentation also contains samples.
Our client libraries follow the Node.js release schedule. Libraries are compatible with all current active and maintenance versions of Node.js. If you are using an end-of-life version of Node.js, we recommend that you update as soon as possible to an actively supported LTS version.
Google's client libraries support legacy versions of Node.js runtimes on a best-efforts basis with the following warnings:
Client libraries targeting some end-of-life versions of Node.js are available, and
can be installed through npm dist-tags.
The dist-tags follow the naming convention legacy-(version)
.
For example, npm install google-proto-files@legacy-8
installs client libraries
for versions compatible with Node.js 8.
This library follows Semantic Versioning.
This library is considered to be stable. The code surface will not change in backwards-incompatible ways unless absolutely necessary (e.g. because of critical security issues) or with an extensive deprecation period. Issues and requests against stable libraries are addressed with the highest priority.
More Information: Google Cloud Platform Launch Stages
Contributions welcome! See the Contributing Guide.
Please note that this README.md
, the samples/README.md
,
and a variety of configuration files in this repository (including .nycrc
and tsconfig.json
)
are generated from a central template. To edit one of these files, make an edit
to its templates in
directory.
Apache Version 2.0
See LICENSE