# 2s News Search API

> 2s News Search API is a paid API for AI agents from 2s.io, paid per call via x402, $0.009/call, status unknown (last checked 2026-09-15).

Search for recent news articles by keyword, country, and freshness using Brave Search as the underlying provider

## Facts

- Endpoint: GET https://2s.io/api/news/search
- Price: $0.009/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/2s-news-search-api-3eafe9e1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_ZEZLQiA_vZuFTj8GRGOur

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 2s-news-search-api-3eafe9e1
```

Example prompt: Search for the latest news about quantum computing — give me 10 results from the past week, filtered to the US.

## When to prefer this

Use this endpoint when an AI agent needs to retrieve current news articles by keyword without requiring API keys or subscriptions, especially in pay-per-call agentic workflows using x402 on Base or Solana. Prefer it over general web search endpoints when the task is specifically news-oriented and freshness/country filtering is needed.

## Known failure modes

- Missing required 'q' parameter returns a validation error
- 'count' exceeding 20 or 'offset' exceeding 9 returns a schema validation error
- Invalid country code may return no results or an error
- Payment not included or insufficient USDC causes 402 Payment Required
- Query returns zero results when no news matches the given filters

## How this service works

Live news search. Returns recent headlines with title, URL, snippet, publisher source, relative age, and a breaking-news flag — real-time coverage past any model training cutoff. Supports count (1-20), offset, country (2-letter), and freshness (pd=past day, pw=past week, pm=past month, py=past year). Use for current events, market-moving developments, monitoring, and "what happened with X" questions. For general web results see /api/search/web; for Hacker News specifically see /api/news/hn-top.

## Output

A JSON object with an 'ok' boolean, a 'meta' object echoing the query, an 'items' array of news articles (each with title, URL, description, source domain, age, breaking flag, and optional thumbnail), and a 'source' object crediting Brave Search API.

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "queryParams": {
   "q": "artificial intelligence",
   "count": 10,
   "offset": 0
  }
 }
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "queryParams"
   ],
   "properties": {
    "type": {
     "const": "http"
    },
    "method": {
     "const": "GET"
    },
    "queryParams": {
     "required": [
      "q"
     ],
     "properties": {
      "q": {
       "type": "string",
       "description": "News query."
      },
      "count": {
       "type": "integer",
       "default": 10,
       "maximum": 20,
       "minimum": 1
      },
      "offset": {
       "type": "integer",
       "default": 0,
       "maximum": 9,
       "minimum": 0
      },
      "country": {
       "type": "string",
       "description": "2-letter country code, e.g. US."
      },
      "freshness": {
       "type": "string",
       "description": "pd | pw | pm | py."
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/2s-news-search-api-3eafe9e1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 2s.io](https://www.zero.xyz/host/2s.io/llms.txt)
