Agentic Platform
Documentation API reference Tools Skills

Tools

Google Gemini

google_gemini Google Web search

Query Google Gemini to get AI-generated search results and insights.

Retrieve AI-powered search results from Google Gemini. Get comprehensive AI-generated answers with structured text, tables, and source citations for any query.

Playground

Your organization, project and token stay in this browser's local storage and are sent straight to the API — this page never sees them.

POST
item
query required The search query to analyze
config
location_id Location ID (optional)
location_request Location request (ex: Paris, FR), will translate to location ID
country_code ISO3166 country code (ex: GB)
lang_code BCP47 language code (ex: "en", "en-GB")
device Device to use for search (optional - defaults to mobile)

Billing

Fixed cost per prompt requested, plus one AI assistant answer per prompt. Asked while you wait it is billed live; submitted as a background batch it is billed async, which costs appreciably less, and collecting the finished batch is free.

These usage SKUs can be charged on a call.

SKU Credits Description
Tool call 1 per request Charged once per successful item, on top of any usage below.
AI assistant answers (async) 12 per 10 prompt The same assistant answer, submitted as a background batch.
AI assistant answers (live) 4 per prompt What a consumer AI assistant answers for one prompt, asked fresh while you wait.

Schemas

item is what you send, config how the tool behaves, and the response is what you get back.

Item

object
Properties
query string required

The search query to analyze

max length 700

Example
{
  "query": "string"
}

Configuration

object
Properties
location_id integer | null

Location ID (optional)

Default: null

location_request string | null

Location request (ex: Paris, FR), will translate to location ID

Default: null

country_code string | null

ISO3166 country code (ex: GB)

Default: null

lang_code string | null

BCP47 language code (ex: "en", "en-GB")

Default: null

device string

Device to use for search (optional - defaults to mobile)

Values: mobile desktop

Default: "mobile"

Example
{
  "location_id": null,
  "location_request": null,
  "country_code": null,
  "lang_code": null,
  "device": "mobile"
}

Response

object
Properties
query string required

The original search query

location_name string required

The location used for the search, if any

results GeminiLLMScraperResult required

The Gemini search results

Type: GeminiLLMScraperResult

Example
{
  "query": "string",
  "location_name": "string",
  "results": {
    "keyword": "string",
    "location_code": null,
    "language_code": null,
    "model": null,
    "datetime": null,
    "markdown": null,
    "sources": null,
    "se_results_count": null,
    "item_types": null,
    "items_count": null,
    "items": null
  }
}

Type Definitions

5 types

These are the available sub-object types that can be used in the properties above.

GeminiImageElement object
#

An image element inside a gemini_images item.

type string required
url string | null

Default: null

alt string | null

Default: null

image_url string | null

Default: null

markdown string | null

Default: null

GeminiLLMScraperResult object
#

Result from the Gemini LLM scraper.

keyword string required
location_code integer | null

Default: null

language_code string | null

Default: null

model string | null

Default: null

datetime string | null

Default: null

markdown string | null

Default: null

sources GeminiSource

Items: GeminiSource

Default: null

se_results_count integer | null

Default: null

item_types array | null

Default: null

items_count integer | null

Default: null

items GeminiResponseItem

Items: GeminiResponseItem

Default: null

GeminiResponseItem object
#

A response item from Gemini LLM Scraper. Can be of types: gemini_text, gemini_table, gemini_images.

type string required
rank_group integer | null

Default: null

rank_absolute integer | null

Default: null

markdown string | null

Default: null

original_text string | null

Default: null

sources GeminiSource

Items: GeminiSource

Default: null

table GeminiTable

Type: GeminiTable

Default: null

items GeminiImageElement

Items: GeminiImageElement

Default: null

GeminiSource object
#

A source cited by Gemini in its response.

type string required
title string | null

Default: null

snippet string | null

Default: null

domain string | null

Default: null

url string | null

Default: null

thumbnail string | null

Default: null

source_name string | null

Default: null

publication_date string | null

Default: null

markdown string | null

Default: null

GeminiTable object
#

A table structure in Gemini's response.

table_header array | null

Default: null

table_content array | null

Default: null

Endpoints

POST http://agents.botify.com/{organization}/{project}/google_gemini/process
POST http://agents.botify.com/{organization}/{project}/google_gemini/batch_process
POST http://agents.botify.com/{organization}/{project}/google_gemini/async_process
POST http://agents.botify.com/{organization}/{project}/google_gemini/async_batch_process

See running a long job in the background for the polling flow.

cURL

curl -X POST "http://agents.botify.com/{organization}/{project}/google_gemini/process" \
  -H "Authorization: Bearer $BOTIFY_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "item": {
    "query": "<query>"
  }
}'

Raw metadata