news-search

À UTILISER POUR la recherche d'actualités. Retourne des articles de presse avec titre, URL, description, date de publication et miniature. Prend en charge le filtrage par fraîcheur et plage de dates, le filtre SafeSearch et les Goggles pour un classement personnalisé.

npx skills add https://github.com/brave/brave-search-skills --skill news-search

Recherche d'actualités

Nécessite une clé API : Obtenez-en une sur https://api.search.brave.com

Plan : Inclus dans le plan Search. Consultez https://api-dashboard.search.brave.com/app/subscriptions/subscribe

Démarrage rapide (cURL)

Recherche basique

curl -s "https://api.search.brave.com/res/v1/news/search?q=space+exploration" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}"

Actualités récentes (dernières 24 heures)

curl -s "https://api.search.brave.com/res/v1/news/search" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -G \
  --data-urlencode "q=cybersecurity" \
  --data-urlencode "country=US" \
  --data-urlencode "freshness=pd" \
  --data-urlencode "count=20"

Filtre par plage de dates

curl -s "https://api.search.brave.com/res/v1/news/search" \
  -H "Accept: application/json" \
  -H "X-Subscription-Token: ${BRAVE_SEARCH_API_KEY}" \
  -G \
  --data-urlencode "q=climate summit" \
  --data-urlencode "freshness=2026-01-01to2026-01-31"

Endpoint

GET https://api.search.brave.com/res/v1/news/search
POST https://api.search.brave.com/res/v1/news/search

Authentification : En-tête X-Subscription-Token: <API_KEY>

Remarque : GET et POST sont tous deux supportés. POST est utile pour les requêtes longues ou les Goggles complexes.

Paramètres

Paramètre Type Requis Par défaut Description
q string Oui - Requête de recherche (1-400 caractères, max 50 mots)
country string Non US Pays de recherche (code pays à 2 lettres ou ALL)
search_lang string Non en Préférence de langue (code langue à 2+ caractères)
ui_lang string Non en-US Langue de l'interface (ex. « en-US »)
count int Non 20 Nombre de résultats (1-50)
offset int Non 0 Décalage de page (0-9)
safesearch string Non strict Filtre contenu adulte (off/moderate/strict)
freshness string Non - Filtre temporel (pd/pw/pm/py ou plage de dates)
spellcheck bool Non true Correction automatique de la requête
extra_snippets bool Non - Jusqu'à 5 extraits supplémentaires par résultat
goggles string ou array Non - Filtre de classement personnalisé (URL ou en ligne ; répétez le paramètre pour plusieurs)
operators bool Non true Appliquer les opérateurs de recherche
include_fetch_metadata bool Non false Inclure les timestamps de récupération dans les résultats

Valeurs de freshness

Valeur Description
pd Dernier jour (24 heures) - idéal pour les infos en direct
pw Dernière semaine (7 jours)
pm Dernier mois (31 jours)
py Dernière année (365 jours)
YYYY-MM-DDtoYYYY-MM-DD Plage de dates personnalisée

Format de réponse

{
  "type": "news",
  "query": {
    "original": "space exploration"
  },
  "results": [
    {
      "type": "news_result",
      "title": "New Developments in Space Exploration",
      "url": "https://news.example.com/space-exploration",
      "description": "Recent missions have advanced our understanding of...",
      "age": "2 hours ago",
      "page_age": "2026-01-15T14:30:00",
      "page_fetched": "2026-01-15T15:00:00Z",
      "meta_url": {
        "scheme": "https",
        "netloc": "news.example.com",
        "hostname": "news.example.com",
        "favicon": "https://imgs.search.brave.com/favicon/news.example.com",
        "path": "/space-exploration"
      },
      "thumbnail": {
        "src": "https://imgs.search.brave.com/..."
      }
    }
  ]
}

Champs de réponse

Champ Type Description
type string Toujours "news"
query.original string La requête de recherche originale
query.altered string? Requête corrigée par le correcteur orthographique (si modifiée)
query.cleaned string? Requête nettoyée/normalisée par le correcteur
query.spellcheck_off bool? Si la correction orthographique a été désactivée
query.show_strict_warning bool? True si safesearch strict a bloqué des résultats
query.search_operators object? Opérateurs de recherche appliqués
query.search_operators.applied bool Si les opérateurs ont été appliqués
query.search_operators.cleaned_query string? Requête après traitement des opérateurs
query.search_operators.sites list[str]? Domaines issus des opérateurs site:
results[].type string Toujours "news_result"
results[].title string Titre de l'article
results[].url string URL source de l'article
results[].description string? Description/résumé de l'article
results[].age string? Âge lisible (ex. « 2 hours ago »)
results[].page_age string? Date de publication depuis la source (datetime ISO)
results[].page_fetched string? Moment du dernier accès à la page (datetime ISO)
results[].fetched_content_timestamp int? Timestamp de récupération (uniquement avec include_fetch_metadata=true)
results[].meta_url.scheme string? Schéma du protocole URL
results[].meta_url.netloc string? Localisation du réseau
results[].meta_url.hostname string? Nom de domaine en minuscules
results[].meta_url.favicon string? URL du favicon
results[].meta_url.path string? Chemin de l'URL
results[].thumbnail.src string URL de la miniature servie
results[].thumbnail.original string? URL de la miniature originale
results[].extra_snippets list[str]? Jusqu'à 5 extraits supplémentaires par résultat

Goggles (Classement personnalisé) — Unique à Brave

Goggles vous permet de reclasser les résultats d'actualités — augmenter la visibilité de sources fiables ou supprimer les sources indésirables.

Méthode Exemple
Hébergée --data-urlencode "goggles=https://raw.githubusercontent.com/brave/goggles-quickstart/main/goggles/hacker_news.goggle"
En ligne --data-urlencode 'goggles=$discard\n$site=example.com'

Les goggles hébergées doivent être sur GitHub/GitLab, inclure les en-têtes ! name:, ! description:, ! author:, et être enregistrées sur https://search.brave.com/goggles/create. Les règles en ligne ne nécessitent pas d'enregistrement.

Syntaxe : $boost=N / $downrank=N (1–10), $discard, $site=example.com. Combinez avec des virgules : $site=example.com,boost=3. Séparez les règles avec \n (%0A).

Liste d'autorisation : $discard\n$site=docs.python.org\n$site=developer.mozilla.orgListe de blocage : $discard,site=pinterest.com\n$discard,site=quora.com

Ressources : Découvrir · Syntaxe · Démarrage rapide

Opérateurs de recherche

Utilisez les opérateurs de recherche pour affiner les résultats :

  • site:local-paper.com - Limiter à un site d'actualités spécifique
  • "exact phrase" - Correspondance de phrase exacte
  • -exclude - Exclure un terme

Mettez operators=false pour désactiver l'analyse des opérateurs.

Cas d'usage

  • Surveillance des infos en direct : Utilisez freshness=pd pour les articles les plus récents sur un sujet.
  • Flux d'actualités personnalisés avec Goggles : Augmentez les sources fiables et supprimez les autres sources — unique à Brave.
  • Recherche historique d'actualités : Utilisez freshness=YYYY-MM-DDtoYYYY-MM-DD pour trouver des articles de périodes spécifiques.
  • Actualités multilingues : Combinez country, search_lang et ui_lang pour des résultats cross-locale.
  • Pipelines de données : Mettez include_fetch_metadata=true pour fetched_content_timestamp sur chaque résultat.

Remarques

  • SafeSearch : Par défaut strict
  • Pagination : Utilisez offset (0-9) avec count
  • Extraits supplémentaires : Jusqu'à 5 extraits supplémentaires quand extra_snippets=true

Skills similaires