AutoGen integration for Scavio Search API -- real-time Google, Amazon, Walmart, YouTube, Reddit, TikTok, TikTok Shop, Instagram, X, and LinkedIn search tools for AI agents
Project description
autogen-scavio
AutoGen integration for the Scavio Search API, a search API for AI agents. Provides 97 search tools across Google, Amazon, Walmart, YouTube, Reddit, TikTok, TikTok Shop, Instagram, X and LinkedIn for use with AutoGen AI agents.
| Provider | Tools | Coverage |
|---|---|---|
| 14 | Every v2 endpoint: search, AI Mode, Maps, Shopping, Flights, Hotels, News, Trends | |
| YouTube | 15 | Every live endpoint |
| 12 | Every endpoint | |
| 12 | Every endpoint | |
| TikTok | 11 | Every endpoint |
| X (formerly Twitter) | 11 | Every endpoint |
| 9 | Every live endpoint | |
| TikTok Shop | 8 | Every endpoint |
| Amazon | 3 | Search, product, offers |
| Walmart | 2 | Search, product |
Installation
pip install autogen-scavio
Setup
Get a free API key at dashboard.scavio.dev and set it as an environment variable:
export SCAVIO_API_KEY="sk_live_..."
Quick Start
import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient
from autogen_scavio import create_scavio_tools
tools = create_scavio_tools()
agent = AssistantAgent(
name="researcher",
model_client=OpenAIChatCompletionClient(model="gpt-5.5"),
tools=tools,
system_message="You are a research assistant with access to search tools.",
)
async def main():
result = await agent.run(task="What are the top AI agent frameworks in 2026?")
print(result.messages[-1].content)
asyncio.run(main())
Selective Tool Loading
Load only the providers you need:
# Only Google and Amazon tools
tools = create_scavio_tools(providers=["google", "amazon"])
# Only YouTube
tools = create_scavio_tools(providers=["youtube"])
# Providers: google, amazon, youtube, walmart, reddit, tiktok, tiktok_shop,
# instagram, x, linkedin
# Individual tool factories
from autogen_scavio import create_web_search_tool, create_amazon_search_tool
web_tool = create_web_search_tool(max_results=10)
amazon_tool = create_amazon_search_tool(max_results=5)
Amazon changed in 0.4.0 (breaking). The upstream provider moved.
domainis replaced bycountry, a two-letter marketplace code (us,gb-- the UK isgb, notuk--de,jp, ...).sort_by,pages,category_id,merchant_id,language,currency,device,zip_codeandautoselect_variantare gone: the marketplace ignores all of them, andsort_bywas verified to return the identical unordered set for every value, so they are removed rather than kept as silent no-ops. Responses are normalized --priceis a number with a siblingcurrency, andbuyboxis gone (usescavio_amazon_offers).
Google v1 is gone (0.5.0).
/api/v1/googlewas retired on 2026-08-04 and now answers 410, so every Google tool calls a/api/v2/googleendpoint and takes v2 params natively:gl,hl,start,google_domain,device.country_code,languageandpageno longer exist and are not mapped --startis a zero-based result offset (0, 10, 20), not a 1-based page number, so a silent remap would fetch the wrong page. Google responses are flat: the payload sits at the top level, there is nodatawrapper, and organic hits carrylink/snippet, not v1'surl/content.
Reddit is complete in 0.6.0. All twelve endpoints are now tools; only search and post detail existed before. Three shapes to keep straight when chaining them:
scavio_reddit_searchreturnsdata.results,scavio_reddit_postreturns a flat post object with no comments at all, and the subreddit, user and popular feeds returndata.posts. Read a thread withscavio_reddit_post_comments, then expand a subtree by passing that comment'sreply_cursortoscavio_reddit_comment_replies. Sort values are uppercase (HOT,NEW,TOP,BEST,CONTROVERSIAL); the subreddit feed is the only one that also takesRISING.
Available Tools
| Provider | Tool | Description |
|---|---|---|
scavio_web_search |
Web search with knowledge graph, related questions and AI Overview | |
scavio_google_ai_mode |
Google AI Mode answer with its cited references | |
scavio_google_maps_search |
Local businesses and places, with place_id and data_id | |
scavio_google_maps_place |
Full place details by place_id or data_cid | |
scavio_google_maps_reviews |
Place reviews, up to 20 per call | |
scavio_google_shopping |
Product search with prices, sellers and catalog ids | |
scavio_google_shopping_product |
Product page with its seller offers | |
scavio_google_shopping_stores |
Next page of sellers for a product | |
scavio_google_flights |
Itineraries and prices between airports | |
scavio_google_hotels |
Properties, nightly rates and availability | |
scavio_google_hotels_detail |
One hotel and its booking sources | |
scavio_google_news |
Headlines by query, topic, story or publisher | |
scavio_google_trends |
Interest over time and by region for a term | |
scavio_google_trending |
What is trending on Google right now, by country | |
| Amazon | scavio_amazon_search |
Product search across 22 marketplaces |
| Amazon | scavio_amazon_product |
Product details by ASIN |
| Amazon | scavio_amazon_offers |
Every seller offer for an ASIN, including the buy-box winner |
| YouTube | scavio_youtube_search |
Video search with filters (2 credits) |
| YouTube | scavio_youtube_shorts |
Shorts search (2 credits) |
| YouTube | scavio_youtube_suggestions |
Autocomplete suggestions for a query |
| YouTube | scavio_youtube_video |
Full video details by ID or watch URL |
| YouTube | scavio_youtube_comments |
Top-level comments on a video |
| YouTube | scavio_youtube_comment_replies |
Replies to a comment, by reply_cursor |
| YouTube | scavio_youtube_transcript |
Transcript as plain text or SRT (8 credits) |
| YouTube | scavio_youtube_related |
Videos related to a video |
| YouTube | scavio_youtube_channel_search |
Channel search by keyword |
| YouTube | scavio_youtube_channel |
Channel profile by ID, @handle, or URL |
| YouTube | scavio_youtube_channel_videos |
A channel's uploaded videos |
| YouTube | scavio_youtube_channel_shorts |
A channel's Shorts |
| YouTube | scavio_youtube_channel_community |
A channel's community posts (data.posts) |
| YouTube | scavio_youtube_channel_resolve |
Resolve an @handle or URL to a channel ID |
| YouTube | scavio_youtube_streams |
Playable stream URLs for a video (3 credits) |
| Walmart | scavio_walmart_search |
Product search with price/fulfillment filters |
| Walmart | scavio_walmart_product |
Product details by ID |
scavio_reddit_search |
Post search (query and cursor only, data.results) |
|
scavio_reddit_search_suggestions |
Autocomplete suggestions for a search query | |
scavio_reddit_post |
Post metadata by URL, without comments | |
scavio_reddit_post_comments |
Top-level comments on a post, with reply_cursor |
|
scavio_reddit_comment_replies |
Replies to a comment, by reply_cursor |
|
scavio_reddit_subreddit |
Subreddit profile and subscriber counts | |
scavio_reddit_subreddit_posts |
A subreddit's feed (data.posts, sort also takes RISING) |
|
scavio_reddit_user |
Redditor profile and karma breakdown | |
scavio_reddit_user_posts |
A redditor's submitted posts | |
scavio_reddit_user_comments |
A redditor's comments, each naming its post | |
scavio_reddit_popular |
The site-wide r/popular feed | |
scavio_reddit_trending |
Search queries trending on Reddit right now | |
| TikTok | scavio_tiktok_profile |
User profile lookup |
| TikTok | scavio_tiktok_user_posts |
User's posted videos |
| TikTok | scavio_tiktok_video |
Video details |
| TikTok | scavio_tiktok_video_comments |
Video comments |
| TikTok | scavio_tiktok_comment_replies |
Comment replies |
| TikTok | scavio_tiktok_search_videos |
Video search by keyword |
| TikTok | scavio_tiktok_search_users |
User search by keyword |
| TikTok | scavio_tiktok_hashtag |
Hashtag info |
| TikTok | scavio_tiktok_hashtag_videos |
Videos by hashtag |
| TikTok | scavio_tiktok_user_followers |
User's followers |
| TikTok | scavio_tiktok_user_followings |
User's followings |
| TikTok Shop | scavio_tiktok_shop_search |
Product search by keyword (US), with exact prices |
| TikTok Shop | scavio_tiktok_shop_search_suggestions |
Keyword autocomplete across 8 regions |
| TikTok Shop | scavio_tiktok_shop_product |
Full product detail (no price -- upstream masks it) |
| TikTok Shop | scavio_tiktok_shop_product_reviews |
Paginated reviews, up to 200 per call |
| TikTok Shop | scavio_tiktok_shop_categories |
Global category tree (240 nodes, 2 levels) |
| TikTok Shop | scavio_tiktok_shop_category_products |
Products under a category, with exact prices |
| TikTok Shop | scavio_tiktok_shop_shop_products |
A seller's catalog, with exact prices |
| TikTok Shop | scavio_tiktok_shop_resolve |
Resolve a Shop URL or share link to an id |
scavio_instagram_profile |
User profile lookup | |
scavio_instagram_user_posts |
User's posts | |
scavio_instagram_user_reels |
User's reels | |
scavio_instagram_user_tagged |
Posts user is tagged in | |
scavio_instagram_user_stories |
User's active stories | |
scavio_instagram_post |
Post details by url, media_id, or shortcode | |
scavio_instagram_post_comments |
Post comments | |
scavio_instagram_comment_replies |
Comment replies | |
scavio_instagram_search_users |
User search by keyword | |
scavio_instagram_search_hashtags |
Hashtag search by keyword | |
scavio_instagram_user_followers |
User's followers | |
scavio_instagram_user_followings |
User's followings | |
| X | scavio_x_search |
Tweet and people search (search, not query) |
| X | scavio_x_tweet |
Full tweet details by ID |
| X | scavio_x_tweet_comments |
Replies to a tweet, ranked or chronological |
| X | scavio_x_tweet_retweeters |
Users who retweeted a tweet (data.retweeters) |
| X | scavio_x_user |
User profile by handle |
| X | scavio_x_user_tweets |
A user's tweets, plus pinned and profile |
| X | scavio_x_user_replies |
A user's tweets and replies |
| X | scavio_x_user_media |
A user's posts with photos or videos |
| X | scavio_x_user_followers |
A user's followers |
| X | scavio_x_user_followings |
Accounts a user follows (data.following, singular) |
| X | scavio_x_trending |
Trending topics by country name |
scavio_linkedin_person |
Full member profile with experience and education | |
scavio_linkedin_person_about |
The narrative sections of a profile | |
scavio_linkedin_person_posts |
A member's posts, comments or reactions (10 credits) | |
scavio_linkedin_company |
Company profile with featured_employees | |
scavio_linkedin_company_posts |
A company's recent posts (10 credits) | |
scavio_linkedin_search_jobs |
Job search by keyword (10 credits) | |
scavio_linkedin_job |
One job listing in full (30 credits) | |
scavio_linkedin_post |
One post with media, tags and top comments | |
scavio_linkedin_post_comments |
Comments on a post, paged by number (10 credits) |
Credits
Every tool states its own cost in its description, so the agent sees the price before it picks. Most endpoints are 1 credit; these are the exceptions:
| Tools | Credits |
|---|---|
scavio_youtube_search, scavio_youtube_shorts |
2 |
scavio_youtube_streams |
3 |
scavio_youtube_transcript |
8 |
scavio_instagram_user_posts |
2 |
scavio_instagram_post, scavio_instagram_comment_replies |
8 |
| Every other Instagram tool | 10 |
scavio_linkedin_person_posts, scavio_linkedin_company_posts, scavio_linkedin_search_jobs, scavio_linkedin_post_comments |
10 |
scavio_linkedin_job |
30 |
All 14 Google tools, all 11 X tools, the remaining LinkedIn tools and everything under Amazon, Walmart, Reddit, TikTok and TikTok Shop are 1 credit.
Five LinkedIn endpoints -- person/contact, company/people, company/jobs,
search/people and search/posts -- were retired upstream and only answer 410,
so they are deliberately not wrapped as tools: a tool that always fails is still
a menu item a model will pick. Use scavio_linkedin_company's
featured_employees in place of company/people, and scavio_linkedin_search_jobs
with a company name in place of company/jobs.
create_youtube_metadata_tool is still exported but is a deprecated alias of
scavio_youtube_video (same endpoint, same response), so it is no longer part
of the default tool set. Use the video tool.
TikTok Shop caveats
tools = create_scavio_tools(providers=["tiktok_shop"])
Two limits are worth knowing before chaining these tools:
scavio_tiktok_shop_productresolves only about 44% of the product ids thatscavio_tiktok_shop_searchreturns. Upstream has no detail data for the rest, so a not-found result is a normal outcome rather than an error -- skip the product instead of retrying. Search is a listing source, not the first leg of a reliable search-then-detail pipeline.scavio_tiktok_shop_productdoes not return a price. Upstream masks the digits on the product page, soprice.currentandprice.originalcome back null. Exact prices are onscavio_tiktok_shop_search,scavio_tiktok_shop_shop_productsandscavio_tiktok_shop_category_products.
Configuration
from autogen_scavio import configure
# Set API key programmatically
configure(api_key="sk_live_...")
# Or pass to factory
tools = create_scavio_tools(api_key="sk_live_...", max_results=10)
About Scavio
Scavio is a unified search API built for AI agents — one API key, structured JSON, no scraping or proxies. A real-time Tavily alternative and SerpAPI alternative with data from:
- Google Search API — SERP results, news, images, maps, and knowledge graph
- Amazon Product API and Walmart Product API — product search and details
- YouTube API, TikTok API, and Instagram API — video and social media data
- TikTok Shop — product detail, reviews, categories, and seller catalogs
- Reddit API — posts and threaded comments
- X (formerly Twitter) and LinkedIn — profiles, posts, and search
Get a free API key and explore the documentation. You can also compare Scavio vs alternatives on coverage and pricing.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file autogen_scavio-0.6.0.tar.gz.
File metadata
- Download URL: autogen_scavio-0.6.0.tar.gz
- Upload date:
- Size: 53.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b837b88661ea4bb6e3701f6f8435745bf259091b72f16e3997800538425702e9
|
|
| MD5 |
23fb5529b303993775662df89969de78
|
|
| BLAKE2b-256 |
e8b7ed885cec35aaaf98445e784e983a96c42021cbcb65ad0ffa1ce49482eece
|
Provenance
The following attestation bundles were made for autogen_scavio-0.6.0.tar.gz:
Publisher:
publish.yml on scavio-ai/autogen-scavio
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
autogen_scavio-0.6.0.tar.gz -
Subject digest:
b837b88661ea4bb6e3701f6f8435745bf259091b72f16e3997800538425702e9 - Sigstore transparency entry: 2340692221
- Sigstore integration time:
-
Permalink:
scavio-ai/autogen-scavio@5839520772935bc077d3a6d489df80303601b088 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/scavio-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5839520772935bc077d3a6d489df80303601b088 -
Trigger Event:
push
-
Statement type:
File details
Details for the file autogen_scavio-0.6.0-py3-none-any.whl.
File metadata
- Download URL: autogen_scavio-0.6.0-py3-none-any.whl
- Upload date:
- Size: 41.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4cab741e11698d6f531a16ebffb2974ee361b0873e96fcc78257fba9a851f9e4
|
|
| MD5 |
311e4eb5fd9e362577f4a53deb91ce2d
|
|
| BLAKE2b-256 |
3cfd3322fdd48ca641457869b607c1eb77d8ac910ef8ddeac8b3315284751873
|
Provenance
The following attestation bundles were made for autogen_scavio-0.6.0-py3-none-any.whl:
Publisher:
publish.yml on scavio-ai/autogen-scavio
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
autogen_scavio-0.6.0-py3-none-any.whl -
Subject digest:
4cab741e11698d6f531a16ebffb2974ee361b0873e96fcc78257fba9a851f9e4 - Sigstore transparency entry: 2340692255
- Sigstore integration time:
-
Permalink:
scavio-ai/autogen-scavio@5839520772935bc077d3a6d489df80303601b088 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/scavio-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5839520772935bc077d3a6d489df80303601b088 -
Trigger Event:
push
-
Statement type: