GBP Node.js SDKThe Enterprise standard.
Manage locations, menus, attributes, media, reviews, and verifications with zero-config OAuth, auto-pagination, and strict type safety.
Manage locations, menus, attributes, media, reviews, and verifications with zero-config OAuth, auto-pagination, and strict type safety.

npm install @vitabletech/gbp-sdkManage accounts, fetch locations, update business hours, and handle special hours effortlessly across multiple locations.
Full support for FoodMenus and Service APIs. Build strict TypeScript menus with dietary labels, allergens, and nutritional facts.
Reply to customer reviews, fetch metrics, and publish local posts, offers, or event updates directly to Google.
Patch specific location attributes safely. Handle complex amenities like accessibility, dining options, and service flags.
Trigger PIN/SMS verifications programmatically and associate your unverified locations with official global Chains.
Upload photos and videos directly to Googleβs v4 endpoints and manage category tags seamlessly.
Instead of struggling with raw Google APIs, REST endpoints, and manual token refreshing, this SDK provides an enterprise-ready DX:
Zero-config OAuth 2.0 flow with intelligent token refreshing and pluggable file/memory storage. Never write a token refresh loop again.
Stop writing boilerplate loops. The SDK automatically traverses nextPageToken to fetch thousands of records across pages instantly.
100% typed request/response bodies. Catch errors at compile time when writing food menus, attributes, or verification options.
Built-in exponential backoff and automatic retry logic for 429 and 5xx errors, ensuring your enterprise workflows don't crash.
We abstract away Google's fragmented APIs into a single unified client supporting locations, verifications, media, and more.
Install via your favorite package manager.
npm install @vitabletech/gbp-sdkyarn add @vitabletech/gbp-sdkpnpm add @vitabletech/gbp-sdkInitialize the client with your Google Cloud credentials.
import { GBPClient } from '@vitabletech/gbp-sdk';
const client = new GBPClient({
clientId: process.env.GOOGLE_CLIENT_ID,
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
redirectUri: 'http://localhost:3000/oauth/callback',
refreshToken: process.env.GOOGLE_REFRESH_TOKEN, // Optional
});You're ready! Start calling any GBP service with automatic token management.
// Fetch all locations for a specific account (auto-paginated)
const locations = await client.locations.listAll('accounts/1234567890');
// Update a location's attributes
await client.attributes.patchAttributes(locations[0].name, {
attributes: [{ name: 'has_delivery', valueType: 'BOOL', values: [true] }],
});π Massive API Expansion & Stable Release!
Version 1.1.0 is our official production-ready release, bringing native support for some of Google's most powerful enterprise APIs.
mybusinessverifications.googleapis.com).patchAttributes vs updateLocationAttributes to choose the best method.MediaService now fully supports Google's v4 endpoints and allows category updates via patch().