<!-- BusyBot node reference — https://busybot.net/tools/gemini-google-search/ -->

> Node: Gemini Google Search (`gemini_google_search`) · Action · v1
> Category: AI · Credentials: Google AI (`googleAi`)
> Updated: 2026-08-16

# Gemini Google Search

> Search the web using Google Gemini models with Google Search grounding.

## Overview

Gemini Google Search uses the Gemini generateContent API with the google_search tool to perform grounded web searches via Google Search. The model retrieves real-time information from the web and returns a synthesized answer grounded in search results. The response includes the generated text along with grounding metadata containing search entry points, grounding chunks (source URLs and titles), and grounding supports (passage-level citations). Returns the response text, sources array from grounding chunks, and the search entry point.

**Category:** AI  
**Tool Name:** `gemini_google_search`  
**Version:** 1

**Appearance:** Icon: `gemini` | Color: `#ffffff`

## Node Type

**Action** — processes input items and produces output

## Input / Output

| Direction | Port(s) |
|-----------|--------|
| Input | `Input` |
| Output | `Output`, `Error` |

## Credentials

This tool requires **Google AI** credentials.
See the [Credentials Guide](https://busybot.net/credentials/google-ai/) for setup instructions.

### Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| Model | `options` | No | (current default) | The Gemini model to use for Google Search grounding. Pick a specific version — labels are pinned, not aliased to "latest". |
| | | | | Options: the Gemini chat models available to your workspace — pick one from the dropdown. |
| System Prompt | `string` | No | — | Optional system instruction that sets the behavior and context for the model. Supports expressions. |
| User Message | `string` | Yes | — | The search query or prompt to send. Falls back to item.message or item.prompt if empty. Supports expressions like {{ $json.query }}. |
| File URIs | `string` | No | — | Optional. fileUri value(s) from the Gemini File Upload tool. Pass a single URI or a JSON array for multiple files. Files are sent as multimodal context alongside the message. Falls back to item.fileUris if empty. Gemini File API retains uploads for 48 hours. Supports expressions. |
| Options | `collection` | No | `{}` | Optional generation and output settings — add only the fields you need. |
| — Temperature | `number` | No | `1` | Controls randomness. Lower values are more deterministic, higher values are more creative. Range: 0-2. |
| — Max Output Tokens | `number` | No | `8192` | Maximum number of tokens in the generated response. |
| — Response Field Name | `string` | No | `response` | The key name in the output JSON where the generated text will be stored. |
| Include Input | `boolean` | No | `false` | Whether to merge the input item JSON into the output item. |
| Max Concurrency | `number` | No | `10` | Maximum number of items to process concurrently. |

## Output Data

One grounded search per input item, and one output item per input item. The synthesized answer lands on the field named by **Response Field Name** (`response` by default), and the pages the model cited land on `sources`. The rest of the input item JSON is dropped unless **Include Input** is on; binary data on the input item is forwarded unchanged.

```json
{
  "response": "The synthesized, web-grounded answer",
  "sources": [
    { "uri": "https://example.com/article", "title": "Article title" }
  ],
  "searchEntryPoint": "the Google Search entry point the API returned",
  "model": "the model that produced the answer",
  "finishReason": "the API's reason for ending generation",
  "usage": { "promptTokenCount": 940, "candidatesTokenCount": 512 }
}
```

- `sources` is flattened from the grounding chunks the API returned: one entry per cited page, each with the page `uri` and `title`. It is an empty array when the model answered without searching, so a downstream node can branch on `sources.length` to tell grounded answers from ungrounded ones.
- `searchEntryPoint` is passed through exactly as the API returned it, and the field is added only when the API supplied one. It is what you render next to a grounded answer when you surface the result to end users.
- `finishReason` is the API's own reason for ending generation — the field to check when an answer looks cut off against the **Max Output Tokens** cap.
- `usage` is the token accounting the API returned for that call.

Reference the result downstream by expression, e.g. `{{ $json.response }}` or `{{ $json.sources }}`.

## Usage Examples

- Search the web for current news using Gemini with Google Search
- Research a topic with grounded citations via Gemini
- Find the latest information about a product or company
- Get real-time web-grounded answers with source URLs
- Lookup recent events and return grounding metadata

## Example Configuration

Minimal — one grounded lookup per item:

```json
{
  "type": "gemini_google_search",
  "parameters": {
    "userMessage": "What are the latest developments in quantum computing error correction?"
  }
}
```

Research with a system prompt and a named output field:

```json
{
  "type": "gemini_google_search",
  "parameters": {
    "systemPrompt": "You are a concise research assistant. Provide factual, sourced summaries.",
    "userMessage": "Summarize the most recent AI regulation news in the EU.",
    "includeInput": true,
    "maxConcurrency": 5,
    "options": {
      "temperature": 0.3,
      "maxOutputTokens": 4096,
      "responseFieldName": "newsSummary"
    }
  }
}
```

Batch enrichment — one search per incoming company, sources kept for citation:

```json
{
  "type": "gemini_google_search",
  "parameters": {
    "userMessage": "Find the latest funding news about {{ $json.companyName }} and cite your sources.",
    "includeInput": true,
    "maxConcurrency": 20,
    "options": {
      "temperature": 0.2,
      "maxOutputTokens": 1024,
      "responseFieldName": "fundingNews"
    }
  }
}
```

### Error Handling

| Mode | Behavior |
|------|----------|
| **stop** | Halts workflow on first error |
| **continue** | Skips failed items, passes successful ones through |
| **errorPort** | Routes failed items to Error output port |

## Tips

Gemini Google Search queries the web in real time using Google Gemini models with Google Search grounding to retrieve and synthesize current information. Use this tool when your workflow requires up-to-date facts, recent events, or live web data that a static language model cannot reliably provide. It returns a response text field, a sources array of grounding chunks with URLs and titles, and a search entry point for citation tracing.