Google Search API
Siesta AI - Google Search permet d'exécuter programmatique des recherches web via l'API JSON de Google Custom Search. La connexion est en lecture seule et renvoie un JSON structuré avec les résultats.
1. Configuration de l'API Google Search (procédure pratique)
- Projet dans Google Cloud : utilise un projet existant ou crée un nouveau projet.
- Activer l'API Custom Search : dans la bibliothèque d'API, recherche "Custom Search API" et clique sur Enable.

- Créer un moteur de recherche programmable : sur https://programmablesearchengine.google.com/, ouvre la liste des moteurs de recherche et clique sur Ajouter.

- Obtenir l'ID du moteur de recherche (
cx) : dans les détails du moteur de recherche, ouvre la section De base et copie l'ID du moteur de recherche.
- Générer une clé API : dans Google Cloud Console -> APIs & Services -> Credentials -> Create credentials -> API key.

- Restrictions de la clé (recommandé) :
- Restrictions d'application : selon les besoins (Aucune/Sites Web/IP).
- Restrictions d'API : Restrict key -> Custom Search API.
- Configuration dans Siesta AI :
- Connexion -> Add Connection -> GoogleSearch.
- Remplis
Key(clé API) etCx(ID du moteur de recherche) et choisis Shared/Private. - Enregistre via Continue.

2. Objectif du document
L'objectif est de permettre un accès programmatique aux résultats de recherche web via l'API JSON de Google Custom Search.
3. Aperçu de la connexion
- Nom de la connexion : GoogleSearch
- Type : REST API - API JSON de Google Custom Search
- Authentification : Clé API (Google Cloud) + ID du moteur de recherche (
cx) (OAuth n'est pas nécessaire) - Scope : uniquement lecture/recherche
- Sortie : objet JSON avec les résultats de recherche
- Remarque : Il n'existe pas d'opérations d'écriture ; tous les appels sont idempotents.
L'API JSON de Google Custom Search permet d'obtenir programmatique des résultats de recherche de Google via un moteur de recherche programmable, qui doit être créé et configuré avant utilisation.
4. Principes généraux
4.1 Configuration
- ID du moteur de recherche (
cx) : identifiant de l'instance de recherche personnalisée. - Clé API : paramètre obligatoire pour les appels autorisés à l'API Google.
- Sortie : JSON contenant des métadonnées de recherche et un ensemble de résultats (titre, extrait, URL, pagemap, etc.).
4.2 Syntaxe de requête
- Le paramètre
query(aliasq) détermine le terme recherché. - Des opérateurs avancés tels que
site:,intitle:etc. peuvent être utilisés (syntaxe de requête Google standard).
5. Opérations API
5.1 Recherche
Description : Effectue une recherche web via l'API JSON de Google Custom Search.
HTTP : GET https://www.googleapis.com/customsearch/v1?key={API_KEY}&cx={SEARCH_ENGINE_ID}&q={query}
| Paramètre | Type | Requis | Description |
|---|---|---|---|
| query | String | Oui | Terme recherché (par exemple, "meilleures pratiques en IA"). |
Sortie
- Liste des résultats (titre, URL, extrait)
- Métadonnées sur le nombre de résultats
- Éventuels autres blocs (
pagemap)
Comportement et limites
- Réponse standard ~10 résultats par page ; pages supplémentaires via
start(hors portée de la connexion).
Erreurs typiques
- 400 Bad Request - requête invalide
- 401 Unauthorized - clé API invalide
- 403 Quota Exceeded - quota quotidien dépassé
6. Sécurité et gouvernance
- Conserve la clé API en toute sécurité ; privilégie les restrictions (domaines/IP, restrictions sur l'API Custom Search).
- Surveille les quotas et enregistre pour le contrôle de facturation.
- Enregistre au minimum : chaîne
query, heure de l'appel, nombre de résultats, statut HTTP.
7. Recommandations opérationnelles
- Établis une politique de rotation pour la clé API (Rotate key dans Google Cloud Console).
- Maintiens
cxet la clé API dans un stockage sécurisé des secrets ; lors du changement de clé, mets à jour la connexion.
8. Exemple d'utilisation
GET https://www.googleapis.com/customsearch/v1
?key=YOUR_API_KEY
&cx=YOUR_SEARCH_ENGINE_ID
&q=cloud+infrastructure+best+practices
JSON abrégé :
{
"queries": { "request": [ { "query": "meilleures pratiques en infrastructure cloud" } ] },
"items": [
{ "title": "...", "link": "...", "snippet": "..." }
]
}