innate-google-places

n8n community node for Google Places API (Text Search)

Package Information

Downloads: 39 weeklyΒ /Β 135 monthly
Latest Version: 0.1.0
Author: Innate

Documentation

n8n-nodes-innate-google-places

An n8n community node that integrates with the Google Places API (New) β€” Text Search endpoint.

npm version
License: MIT


Features

  • πŸ” Text Search β€” Search for places using free-text queries via POST /places:searchText
  • πŸ“„ Pagination β€” Full support for nextPageToken with Return All and Max Results controls
  • πŸ—ΊοΈ Location Bias & Restriction β€” Circle bias, rectangle bias, or rectangle restriction
  • 🏷️ Granular Field Masks β€” Select only the fields you need (X-Goog-FieldMask)
  • πŸ”‘ API Key auth β€” Quick setup via a dedicated credential
  • ⚠️ Proper error handling β€” NodeOperationError for validation, NodeApiError for Google API failures
  • πŸ”— Paired-item metadata β€” Every output item carries pairedItem for merge-safe workflows

Installation

Via the n8n Community Nodes UI (recommended)

  1. In n8n, go to Settings β†’ Community Nodes
  2. Click Install
  3. Enter n8n-nodes-innate-google-places
  4. Click Install

Manual (self-hosted n8n)

cd /path/to/your/n8n
npm install n8n-nodes-innate-google-places
# then restart n8n

Prerequisites

  1. A Google Cloud project with the Places API (New) enabled.
  2. An API key with access to the Places API (New).

Tip: The Places API (New) is a separate product from the legacy Places API. Make sure you enable Places API (New) in the Google Cloud Console.


Credentials

Field Type Description
API Key Password Your Google Places API key

Node: Google Places

Resource: Place Β· Operation: Text Search

Searches for places matching a free-text query.

Required Parameters

Parameter Type Description
Query String The text to search for (maps to textQuery)
Fields Multi-select Fields to return β€” builds the X-Goog-FieldMask header

Pagination

Parameter Type Description
Return All Boolean Fetch all pages automatically using nextPageToken
Max Results Number Maximum total results (shown only when Return All is false)

Optional Filters

Parameter Description
Language Code BCP-47 language code for result language
Region Code CLDR two-character region code
Rank Preference RELEVANCE (default) or DISTANCE
Included Type Restrict to a single Google Place type
Open Now Only return currently-open places
Min Rating Minimum average rating (0–5)
Price Levels One or more price level filters

Location Mode

Mode Description
None No geographic constraint
Bias β€” Circle Prefer results near a center point + radius (meters)
Bias β€” Rectangle Prefer results within a lat/lng bounding box
Restrict β€” Rectangle Return only results within a lat/lng bounding box

Output

Each matched place is returned as a separate n8n item containing:

{
  "id": "ChIJ...",
  "displayName": { "text": "Joe's Pizza", "languageCode": "en" },
  "formattedAddress": "7 Carmine St, New York, NY 10014",
  "location": { "latitude": 40.7304, "longitude": -74.0025 },
  "types": ["pizza_restaurant", "restaurant"],
  "_meta": {
    "inputQuery": "pizza in New York"
  }
}

Every item includes pairedItem metadata so it can be safely merged with upstream data.


Development

# Install dependencies
npm install

# Build (compile TypeScript + copy icons)
npm run build

# Watch mode
npm run dev

# Lint
npm run lint

# Format
npm run format

Versioning

This package follows Semantic Versioning.

Version Notes
0.1.0 Initial release β€” Text Search, API key auth

Roadmap

  • Place Details (Fields)
  • Nearby Search (New)
  • Photos API
  • Autocomplete

License

MIT Β© Innate

Discussion