Google Cloud Platform logo

Google Cloud Pub/Sub: Node.js Client

release level CircleCI AppVeyor codecov

Node.js idiomatic client for Cloud Pub/Sub .

Client API Reference


Before you begin

  1. Select or create a Cloud Platform project.

    Go to the projects page

  2. Enable billing for your project.

    Enable billing

  3. Enable the Google Cloud Pub/Sub API.

    Enable the API

  4. Set up authentication with a service account so you can access the API from your local workstation.

Installing the client library

npm install --save @google-cloud/pubsub

Using the client library

// Imports the Google Cloud client library
const PubSub = require('@google-cloud/pubsub');

// Your Google Cloud Platform project ID
const projectId = 'YOUR_PROJECT_ID';

// Instantiates a client
const pubsubClient = new PubSub({
  projectId: projectId,

// The name for the new topic
const topicName = 'my-new-topic';

// Creates the new topic
  .then(results => {
    const topic = results[0];
    console.log(`Topic ${} created.`);
  .catch(err => {
    console.error('ERROR:', err);


Samples are in the samples/ directory. The samples' has instructions for running the samples.

Sample Source Code Try it
Subscriptions source code Open in Cloud Shell
Topics source code Open in Cloud Shell

The Cloud Pub/Sub Node.js Client API Reference documentation also contains samples.


This library follows Semantic Versioning .

This library is considered to be in beta . This means it is expected to be mostly stable while we work toward a general availability release; however, complete stability is not guaranteed. We will address issues and requests against beta libraries with a high priority.

More Information: Google Cloud Platform Launch Stages


Contributions welcome! See the Contributing Guide .


Apache Version 2.0