Java

Search API for Java Developers

Search Google, Amazon, YouTube, Walmart, and Reddit from Java using HttpClient. Structured JSON responses. Free tier included.

Scavio provides a REST API that you can call from any Java application. Send a POST request with your query, get structured JSON back. Here is how to use every platform.

Google Search

Web search with knowledge graph, PAA, and AI overviews.

import java.net.http.*;
import java.net.URI;

var apiKey = "your_scavio_api_key";
var body = "{\"query\":\"" + query + "\"}";

var request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.scavio.dev/api/v1/search"))
    .header("x-api-key", apiKey)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

var client = HttpClient.newHttpClient();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

Amazon Search

Product search with prices, ratings, and reviews.

import java.net.http.*;
import java.net.URI;

var apiKey = "your_scavio_api_key";
var body = "{\"query\":\"" + query + "\",\"marketplace\":\"us\"}";

var request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.scavio.dev/api/v1/amazon/search"))
    .header("x-api-key", apiKey)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

var client = HttpClient.newHttpClient();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

Reddit Search

Community, posts & threaded comments from any subreddit.

import java.net.http.*;
import java.net.URI;

var apiKey = "your_scavio_api_key";
var body = "{\"query\":\"" + query + "\",\"sort\":\"new\"}";

var request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.scavio.dev/api/v1/reddit/search"))
    .header("x-api-key", apiKey)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

var client = HttpClient.newHttpClient();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

YouTube Search

Video search with transcripts and metadata.

import java.net.http.*;
import java.net.URI;

var apiKey = "your_scavio_api_key";
var body = "{\"query\":\"" + query + "\"}";

var request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.scavio.dev/api/v1/youtube/search"))
    .header("x-api-key", apiKey)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

var client = HttpClient.newHttpClient();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

Walmart Search

Product search with pricing and fulfillment data.

import java.net.http.*;
import java.net.URI;

var apiKey = "your_scavio_api_key";
var body = "{\"query\":\"" + query + "\"}";

var request = HttpRequest.newBuilder()
    .uri(URI.create("https://api.scavio.dev/api/v1/walmart/search"))
    .header("x-api-key", apiKey)
    .header("Content-Type", "application/json")
    .POST(HttpRequest.BodyPublishers.ofString(body))
    .build();

var client = HttpClient.newHttpClient();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

Error Handling

The API returns standard HTTP status codes. Check for 200 (success), 401 (invalid API key), 429 (rate limit), and 500 (server error). The response body always includes a descriptive error message.

Next Steps

Frequently Asked Questions

Send a POST request to the Scavio API endpoint using HttpClient. Include your API key in the x-api-key header and your search query in the JSON body. The API returns structured JSON that you can parse directly.

No. HttpClient is built into Java's standard library. You can start making API calls immediately.

Scavio supports Google (web, news, images, shopping, maps), Amazon (12 marketplaces), YouTube (search, transcripts, metadata), and Walmart. All platforms use the same authentication and return structured JSON.

Scavio uses a simple REST API that works with any HTTP client. No framework-specific SDK is needed — use HttpClient to make POST requests and parse the JSON response.

Check the HTTP status code: 200 means success, 401 means invalid API key, 429 means rate limit exceeded, and 500 means a server error. The response body includes an error message with details. See the error handling example above.

Start Building with Java

Get your free Scavio API key and search Google, Amazon, YouTube, Walmart, and Reddit from Java. 500 free credits/month.