Rover Documentation
Everything you need to integrate, contribute, and deploy Rover.
All Roversurf projects are licensed under the MPL-2.0 license.
Rover
Rover is the complete search engine platform. It contains all the core backend functionalities of RSEC, but it additionally includes the web frontend.
Rover Structure
rover/
├── api/ # FastAPI application & routers
├── crawler/ # Web spider & content extraction
├── indexer/ # Core indexing engine architecture
├── lib/ # Core libraries (DB, search engine, AI)
├── tools/ # Administrative & maintenance tools
├── web/ # Next.js web interface & frontend
└── requirements.txtRSEC — Rover Search Engine Core
RSEC is the complete backend repository of Rover.
RSEC Structure
rsec/
├── api/ # FastAPI application & routers
├── crawler/ # Web spider & content extraction
├── indexer/ # Core indexing engine architecture
├── lib/ # Core libraries (DB, search engine, AI)
├── tools/ # Administrative & maintenance tools
└── requirements.txtRover-SCLI — Command Line Interface
Rover-SCLI is a fully-featured terminal search tool.
Installation
# Clone the SCLI repository
git clone https://github.com/roversurf/rover-scli.git
cd rover-scli
# Install dependencies
pip install requests richUsage
# Basic search
python rover_search.py "your search query"
# Search in a specific category
python rover_search.py "latest tech news" --tab news
# Interactive mode
python rover_search.py --interactive
# Specify region
python rover_search.py "weather" --region trR-Protocol (Common Parameters)
These parameters are used across all APIs in the Rover ecosystem (Search and Favicon) for identity and security verification.
r_srcr_uar_clir_svr_csrfSearch API
Provides programmatic access to web search results.
Web Search
curl -X GET "https://roversurf.com/api/search?q=hello+world®ion=global" \
-H "Accept: application/json"Response Format
{
"results": [
{
"title": "Hello, World! - Wikipedia",
"url": "https://en.wikipedia.org/wiki/Hello_World",
"snippet": "A "Hello, World!" program is generally a simple...",
"favicon_url": "https://en.wikipedia.org/favicon.ico"
}
],
"total": 150,
"query": "hello world"
}Image Search
curl -X GET "https://roversurf.com/api/search/images?q=aurora+borealis&size=large"Video Search
curl -X GET "https://roversurf.com/api/search/videos?q=rust+programming"News Search
curl -X GET "https://roversurf.com/api/search/news?q=technology®ion=us"AI Search (Cortex)
curl -X GET "https://roversurf.com/api/search/ai?q=explain+quantum+computing"Query Parameters
qSearch query (required)regionRegion code: global, us, gb, de, fr, tr, jplangLanguage code (e.g. en, tr)safeSafe search filterAnalytic Parameters (Automatic)
Used exclusively by /api/search for detailed user analysis:
r_eiEvent Identifierr_sigDigital Signaturer_vidVisitor IDr_oqOriginal Queryr_lpLocal PreferenceFavicon API
Returns a high-resolution favicon for any website.
Usage
# Get high-res favicon (returns redirect or direct bytes)
curl -L "https://roversurf.com/api/favicon?url=vertexishere.com"
# Get metadata with all Rover tracking parameters
curl "https://roversurf.com/api/favicon?url=vertexishere.com&metadata=true&r_sv=12345&r_csrf=abcde&r_src=hp&r_ua=windows_web&r_cli=r_sapi"
# Get only color & URL info
curl "https://roversurf.com/api/favicon/color?url=vertexishere.com"Color Information Service (/color)
Exclusively used to retrieve the high-resolution icon URL and main color code of the target URL. Has only 1 parameter (url).
{
"status": "success",
"url": "https://github.com",
"best_favicon_url": "https://github.githubassets.com/favicons/favicon.svg",
"color": "#24292e"
}Resolution Logic
- api_favicon_priority_desc
- SVG icons are always prioritized. For other formats, the one closest to 128x128 is preferred.
Color Extraction
Analyzes the icon's dominant color using PIL-based ColorFinder for dynamic use in the UI (shortcuts, etc.).
CORS & Byte Serving
Icons can be served as raw bytes directly through the server to bypass browser-based CORS and ORB restrictions.
Query Parameters
urlRequiredcurl -L "https://roversurf.com/api/favicon?url=vertexishere.com"metadataOptionalcurl "https://roversurf.com/api/favicon?url=vertexishere.com&metadata=true"api_keys_title
api_keys_desc
How to Get an API Key
- Navigate to the . Developer Portal.
- Generation is reserved for the core team.
- Your key will appear on the page once granted.
Using Your API Key
# Include your API key in the request header
curl -X GET "https://roversurf.com/api/search?q=hello" \
-H "Authorization: Bearer YOUR_API_KEY"