News Search ($0.009)
News Search ($0.009): multi-language, multi-country news headline search plus an optional volume/tone timeline, built entirely on the GDELT Project's free, keyless DOC 2.0 API (100+ languages, updated every 15min). Body { query } required; optional timespan (1h..3m), language, country, domain filters, min_tone/max_tone, sort (date|relevance), max_records (1-50). Pass mode:"timeline" for a per-period volume+tone series instead of an article list. Headlines/URLs/metadata only -- never relays…
Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.
Endpoint
POST https://draconic21-x402-api.onrender.com/v1/news_search
| Category | Search and research |
|---|---|
| Provider host | draconic21-x402-api.onrender.com |
| Networks | eip155:8453, solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp |
| Payment schemes | exact |
| Self-reported calls, 30 days | 3 from 3 payers (the provider's figure, not ours) |
Our checks, last 30 days
| Day | Result | HTTP | Asked | Time |
|---|---|---|---|---|
| 2026-10-10 | valid payment request | 402 | $0.009 | 462 ms |
Example input (from the provider)
{
"body": {
"max_records": 10,
"query": "bitcoin",
"timespan": "1w"
},
"bodyType": "json",
"method": "POST",
"type": "http"
}
Promised output schema (from the provider)
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": true,
"properties": {
"country": {
"description": "GDELT source-country name, single token, e.g. 'unitedstates'. Optional.",
"type": "string"
},
"domain": {
"description": "Restrict to one publishing domain, e.g. 'nytimes.com'. Optional.",
"type": "string"
},
"language": {
"description": "GDELT source-language name, single token, e.g. 'english', 'spanish'. Optional.",
"type": "string"
},
"max_records": {
"description": "articles mode only, 1-50. Default 20.",
"type": "integer"
},
"max_tone": {
"description": "Only articles with GDELT tone below this value (-100..100). Optional.",
"type": "number"
},
"min_tone": {
"description": "Only articles with GDELT tone above this value (-100..100). Optional.",
"type": "number"
},
"mode": {
"description": "Default 'articles' (deduped headline list). 'timeline' returns a volume+avg-tone series instead.",
"enum": [
"articles",
"timeline"
],
"type": "string"
},
"query": {
"description": "Search query, e.g. 'bitcoin etf'. Required.",
"type": "string"
},
"sort": {
"description": "articles mode only. Default 'date'.",
"enum": [
"date",
"relevance"
],
"type": "string"
},
"timespan": {
"description": "Lookback window. Default '1d'.",
"enum": [
"1h",
"6h",
"12h",
"1d",
"2d",
"3d",
"1w",
"2w",
"1m",
"3m"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"article_count": {
"type": "integer"
},
"articles": {
"items": {
"properties": {
"domain": {
"type": "string"
},
"image": {
"type": [
"string",
"null"
]
},
"language": {
"type": "string"
},
"seen_at": {
"format": "date-time",
"type": [
"string",
"null"
]
},
"source_country": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"caveats": {
"items": {
"type": "string"
},
"type": "array"
},
"mode": {
"enum": [
"articles",
"timeline"
],
"type": "string"
},
"points": {
"items": {
"properties": {
"avg_tone": {
"type": [
"number",
"null"
]
},
"date": {
"type": "string"
},
"volume_pct": {
"type": [
"number",
"null"
]
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"mode",
"caveats"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}