{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Search keywords (mandatory). Supports logical operators AND, OR, NOT, and exact phrases in quotes."
},
"lang": {
"type": "string",
"description": "2-letter language code to filter articles (e.g., 'de', 'fr', 'it', 'en')."
},
"country": {
"type": "string",
"description": "2-letter country code to filter sources, e.g., 'ch' for Switzerland."
},
"max": {
"type": "integer",
"description": "Number of articles to return (min 1, max 100, depending on subscription)."
},
"in": {
"type": "string",
"description": "Fields to search in (title, description, content). Comma-separated."
},
"nullable": {
"type": "string",
"description": "Fields allowed to return null (description, content, image). Comma-separated."
},
"from": {
"type": "string",
"description": "Filter articles published on or after this ISO 8601 date-time, e.g., '2025-07-18T21:32:58.500Z'."
},
"to": {
"type": "string",
"description": "Filter articles published on or before this ISO 8601 date-time."
},
"sortby": {
"type": "string",
"enum": [
"publishedAt",
"relevance"
],
"description": "Sort order: 'publishedAt' (newest first) or 'relevance' (best match)."
},
"page": {
"type": "integer",
"description": "Page number for pagination (requires paid subscription)."
},
"expand": {
"type": "string",
"enum": [
"content"
],
"description": "Include full article content in response (requires paid plan)."
}
},
"required": [
"q"
],
"additionalProperties": false
}