# BytePlus Web Search

> BytePlus Web Search is a paid API for AI agents from AIsa MPP Data APIs at api.aisa.one, paid per call via MPP, $0.0048/call, status unknown (last checked 2026-10-14).

Runs a real-time web search and returns a ranked list of results with titles, URLs, and snippets, optimized for AI agent RAG and monitoring workflows.

## Facts

- Endpoint: POST https://api.aisa.one/apis/v1/byteplus/web-search?utm_source=zero.xyz
- Price: $0.0048/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-14
- Activations on Zero: 0
- Provider: AIsa MPP Data APIs
- Website: https://aisa.one
- Tags: web-search, financial-data, prediction-markets, weather, travel, data, search
- Canonical page: https://www.zero.xyz/c/aisa-mpp-data-apis-byteplus-web-search-dc4c4be7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-xTChW3RvnopWgfzMtvww

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 aisa-mpp-data-apis-byteplus-web-search-dc4c4be7 -d '<json body>'
```

Example prompt: Search the web for the latest news about OpenAI's GPT-5 release from the past week, and return up to 15 results in English — exclude reddit.com and quora.com from the results.

## When to prefer this

Choose this endpoint when you need live, ranked web search results with snippets and metadata (publish time, source domain) for AI agent RAG pipelines, competitive monitoring, fact-checking, or content sourcing — especially when you want to filter results to specific domains or exclude noise sources. Prefer it over static knowledge or embedding-based retrieval when recency matters. Pair with post_byteplus_fetch to retrieve full page content from result URLs. It is a flat-rate, read-only call with no side effects, making it safe for automated and high-frequency agent workflows.

## Known failure modes

- Missing required Query field returns a 400/validation error
- Query exceeding 400 characters or ~50 words may be truncated upstream
- Filter.Sites or Filter.BlockHosts passed as arrays (instead of pipe-separated strings) returns error code 10400 Invalid Parameter
- TimeRange values like 'week' or 'month' (instead of named enum values) are silently ignored with no time filter applied
- Exceeding Count maximum of 20 returns a parameter error
- Upstream engine unavailability may result in empty WebResults or a service error
- Unsupported Language codes may be silently ignored or return unexpected results

## How this service works

Run a real-time web search built for AI agents and return a ranked list of titled results with links and snippets. `Query` is required; narrow the result set with `Count` (≤ 20), `Filter` (restrict to `Sites` or exclude `BlockHosts`), `Language`, and `TimeRange`. The response wraps `ResponseMetadata.RequestId` and a `Result` list of web results. Use it for RAG retrieval augmentation, competitive/PR monitoring, fact-checking, and content sourcing; pair each result URL with `post_byteplus_fetch` to pull full page content.  failed requests are not charged.

<!-- aisa-pricing:start -->
Published reference price: $0.0048 USD per successful request. Account-specific pricing and final settlement may differ.
<!-- aisa-pricing:end -->

## Output

Returns a ResponseMetadata object with a unique RequestId, plus a Result payload containing a ranked WebResults array. Each web result includes its URL, title, snippet, longer summary, site name, publish time (ISO 8601 and Unix timestamp), and sort rank. Also includes result count and a SearchContext echo of the resolved query.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "Query"
 ],
 "properties": {
  "Count": {
   "type": "integer",
   "default": 10,
   "example": 10,
   "maximum": 20,
   "description": "Number of results to return. Optional; default 10, maximum 20."
  },
  "Query": {
   "type": "string",
   "example": "OpenAI news",
   "maxLength": 400,
   "description": "The search query. Required. Max 400 characters; the upstream engine also effectively caps around 50 words."
  },
  "Filter": {
   "type": "object",
   "properties": {
    "Sites": {
     "type": "string",
     "example": "bytedance.com|byteplus.com",
     "description": "Restrict results to these full domains. Pipe-separated, max 5, e.g. \"bytedance.com|byteplus.com\". (Sending an array returns 10400 Invalid Parameter.)"
    },
    "BlockHosts": {
     "type": "string",
     "example": "reddit.com|quora.com",
     "description": "Exclude results from these full domains. Pipe-separated, max 5, e.g. \"reddit.com|quora.com\"."
    }
   },
   "description": "Optional result filter. Both fields are pipe-separated strings of full domains (max 5 each)."
  },
  "Language": {
   "type": "string",
   "example": "EN",
   "description": "Optional language hint in the upstream format, e.g. EN, ZH-HANS, ZH-HANT."
  },
  "TimeRange": {
   "oneOf": [
    {
     "enum": [
      "OneDay",
      "OneWeek",
      "OneMonth",
      "OneYear"
     ],
     "type": "string"
    },
    {
     "type": "string",
     "pattern": "^\\d{4}-\\d{2}-\\d{2}\\.\\.\\d{4}-\\d{2}-\\d{2}$",
     "description": "Custom range, e.g. 2026-08-01..2026-09-01."
    }
   ],
   "example": "OneWeek",
   "description": "Optional recency window. One of the named windows OneDay / OneWeek / OneMonth / OneYear, or a custom range \"YYYY-MM-DD..YYYY-MM-DD\". Omit for no time filter. NOTE: values like \"week\"/\"month\" are silently ignored upstream."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "Result": {
   "type": "object",
   "properties": {
    "LogId": {
     "type": "string",
     "description": "Upstream log id (equals ResponseMetadata.RequestId)."
    },
    "Usage": {
     "type": [
      "object",
      "null"
     ],
     "description": "Reserved; null unless applicable."
    },
    "Choices": {
     "type": [
      "array",
      "null"
     ],
     "items": {
      "type": "object"
     },
     "description": "Reserved; null unless applicable."
    },
    "TimeCost": {
     "type": "integer",
     "description": "Upstream processing time in milliseconds."
    },
    "WebResults": {
     "type": "array",
     "items": {
      "type": "object",
      "properties": {
       "Id": {
        "type": "string",
        "description": "Opaque result id."
       },
       "Url": {
        "type": "string",
        "description": "Result URL."
       },
       "Title": {
        "type": "string",
        "description": "Result title."
       },
       "SortId": {
        "type": "integer",
        "description": "1-based rank of the result."
       },
       "LogoUrl": {
        "type": "string",
        "description": "Signed site logo URL (time-limited)."
       },
       "Snippet": {
        "type": "string",
        "description": "Short text snippet from the page."
       },
       "Summary": {
        "type": "string",
        "description": "Longer summary of the page content."
       },
       "SiteName": {
        "type": "string",
        "description": "Source site name (may be empty)."
       },
       "PublishTime": {
        "type": "string",
        "description": "Publish time in ISO 8601 (may be empty)."
       },
       "PublishTimeUnix": {
        "type": "integer",
        "description": "Publish time as Unix seconds (0 if unknown)."
       }
      }
     },
     "description": "Ranked list of web results."
    },
    "ResultCount": {
     "type": "integer",
     "description": "Number of web results returned."
    },
    "SearchContext": {
     "type": "object",
     "properties": {
      "SearchType": {
       "type": "string"
      },
      "OriginQuery": {
       "type": "string"
      }
     },
     "description": "Echo of the resolved query context."
    }
   },
   "description": "Search result payload."
  },
  "ResponseMetadata": {
   "type": "object",
   "properties": {
    "Action": {
     "type": "string"
    },
    "Region": {
     "type": "string"
    },
    "Service": {

… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/aisa-mpp-data-apis-byteplus-web-search-dc4c4be7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.aisa.one](https://www.zero.xyz/host/api.aisa.one/llms.txt)
