# Search Light Bulk

> Search Light Bulk is a paid API for AI agents from agents.openwebninja.com, paid per call via MPP, price unknown, status unknown (last checked 2026-10-14).

Perform real-time web searches for up to 100 queries in a single batched request, returning organic Google search results per query.

## Facts

- Endpoint: POST https://agents.openwebninja.com/realtime-web-search/v2/search-light-bulk?utm_source=zero.xyz
- Price: price unknown
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-14
- Activations on Zero: 0
- Provider: agents.openwebninja.com
- Website: https://agents.openwebninja.com
- Canonical page: https://www.zero.xyz/c/agents-openwebninja-com-search-light-bulk-755d2584
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_cqExx0nGCwCVbVSS7eeom

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agents-openwebninja-com-search-light-bulk-755d2584 -d '<json body>'
```

Example prompt: Search the web for these 5 topics at once — 'AI coding tools', 'best Python frameworks 2024', 'LLM benchmarks comparison', 'open source LLMs', 'ChatGPT alternatives' — and give me the top 10 results for each, in English and US region.

## When to prefer this

Choose this endpoint when you need to execute multiple distinct web searches in a single API round-trip, especially when running 2–100 parallel keyword lookups for SEO analysis, competitive research, or content aggregation. It is more efficient than calling a single-query endpoint repeatedly. Prefer it over single-search variants when cost-per-request efficiency matters and you have a pre-defined list of queries ready.

## Known failure modes

- Exceeding 100 queries per request returns a validation error
- Individual query strings over 5000 characters are rejected
- Invalid or unsupported geo/region or language codes may produce empty or unexpected results
- Duplicate queries are silently de-duplicated server-side, reducing actual result count
- Rate limits or insufficient credits result in 402 or 429 errors
- Queries returning no organic results yield an empty results array for that query

## How this service works

Perform real-time web searches for up to 100 queries in a single request (each query is counted/charged as a request credit).

## Output

Returns an array of per-query result sets, each containing ranked organic web search results with title, URL, domain, snippet, and 1-based position. The response also includes a status string and a unique request_id for tracing.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "queries"
 ],
 "properties": {
  "gl": {
   "type": "string",
   "default": "us",
   "example": "us",
   "description": "Geo/region code (lowercased)."
  },
  "hl": {
   "type": "string",
   "default": "en",
   "example": "en",
   "description": "Language code (lowercased)."
  },
  "limit": {
   "type": "integer",
   "default": 10,
   "example": 10,
   "maximum": 300,
   "minimum": 1,
   "description": "Number of results to return (1–300; capped at 300)."
  },
  "queries": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "oneOf": [
    {
     "type": "array",
     "items": {
      "type": "string",
      "maxLength": 5000
     },
     "example": [
      "chatgpt",
      "build a website"
     ],
     "maxItems": 100
    }
   ],
   "description": "Query or list of queries to search (max 100 items; each trimmed; each ≤ 5000 chars; duplicates removed server-side)."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "status",
  "request_id",
  "data"
 ],
 "properties": {
  "data": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "query",
     "results"
    ],
    "properties": {
     "query": {
      "type": "string",
      "description": "The query that produced this result set."
     },
     "results": {
      "type": "array",
      "items": {
       "type": "object",
       "required": [
        "title",
        "url",
        "position"
       ],
       "properties": {
        "url": {
         "type": "string",
         "description": "Canonical URL of the result."
        },
        "title": {
         "type": "string",
         "description": "Title of the search result."
        },
        "domain": {
         "type": "string",
         "nullable": true,
         "description": "Domain extracted from the result URL."
        },
        "snippet": {
         "type": "string",
         "nullable": true,
         "description": "Short text snippet shown by Google under the result."
        },
        "position": {
         "type": "integer",
         "description": "Position of the result in the list (1-based)."
        }
       }
      },
      "description": "Organic web search results for this query."
     }
    }
   },
   "description": "One entry per submitted query, in the order they were processed."
  },
  "status": {
   "type": "string",
   "description": "The status of the API response."
  },
  "request_id": {
   "type": "string",
   "description": "A unique ID to trace the API request."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agents-openwebninja-com-search-light-bulk-755d2584/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.openwebninja.com](https://www.zero.xyz/host/agents.openwebninja.com/llms.txt)
