Install
openclaw skills install @scavio-ai/scavio-google-ai-modeGet Google's AI Mode answer for a query as structured JSON — AI-generated text blocks, cited references, and shopping results for commercial queries. v2 engine, 1 credit per request.
openclaw skills install @scavio-ai/scavio-google-ai-modeFetch Google's AI Mode answer as structured JSON: an AI-generated response broken into text blocks, the cited source references behind it, and shopping results for commercial queries. One credit per request.
Use this skill when the user asks to:
Get a free API key at https://scavio.dev (50 free credits to get started, no card required):
export SCAVIO_API_KEY=sk_live_your_key
POST https://api.scavio.dev/api/v2/google/ai-mode
Authorization: Bearer $SCAVIO_API_KEY
Every request costs 1 credit.
query.gl/hl/location when the answer is region-specific.text_blocks[] for the AI answer, references[] for the cited sources, and shopping_results[] for product suggestions on commercial queries.| Parameter | Type | Default | Description |
|---|---|---|---|
query | string | required | Search query (1-500 chars) |
device | string | desktop | desktop or mobile |
hl | string | -- | UI language, ISO 639-1 |
gl | string | -- | Geo country, ISO 3166-1 alpha-2 |
google_domain | string | google.com | Regional Google domain |
location | string | -- | Canonical location name (auto-UULE) |
uule | string | -- | Pre-encoded UULE (takes priority over location) |
safe | string | -- | active filters adult content |
include_html | boolean | false | Include raw HTML in the html field |
import os, requests
response = requests.post(
"https://api.scavio.dev/api/v2/google/ai-mode",
headers={"Authorization": f"Bearer {os.environ['SCAVIO_API_KEY']}"},
json={"query": "best running shoes for flat feet 2026", "gl": "us", "hl": "en"},
)
data = response.json()
for b in data.get("text_blocks", []):
print(b.get("snippet") or b.get("text"))
for ref in data.get("references", []):
print("source:", ref.get("title"), ref.get("link"))
{
"text_blocks": [
{ "type": "paragraph", "snippet": "AI-generated answer text..." }
],
"references": [
{ "title": "Source article", "link": "https://example.com", "source": "Example" }
],
"shopping_results": [],
"response_time": 2140,
"credits_used": 1,
"credits_remaining": 995,
"cached": false
}
text_blocks and always surface its references so the user can verify sources.400 means an invalid parameter — fix and retry.401 means the API key is invalid or missing. Check SCAVIO_API_KEY.429 means rate or usage limit exceeded. Wait before retrying. See https://scavio.dev/docs/rate-limits.502 / 503 mean upstream is temporarily unavailable. Wait a few seconds before retrying.scavio-google search skill.SCAVIO_API_KEY is not set, prompt the user to export it before continuing.