Présentation de l'API
L'API de recherche de Suede renvoie des résultats de recherche privés et sans publicité au format JSON — les mêmes résultats web, images, actualités, vidéo et achats qui font fonctionner Suede, sans publicité ni suivi, et sans conserver d'historique de requêtes lié à vous.
URL de base
Un seul endpoint mondial dessert tous les comptes :
https://api.suede.ioLes requêtes sont acheminées automatiquement vers la région d'infrastructure la plus proche — chaque région sert
la même API, et le paramètre facultatif gl choisit la pondération des résultats requête par requête. Il n'y a
rien à configurer.
L'explorateur interactif
L'hôte de l'API sert une référence en direct, dans le navigateur. Ouvrez la racine de l'hôte
(https://api.suede.io/) et elle redirige vers l'explorateur à /scalar/v1, où chaque endpoint est
documenté et appelable avec votre propre clé. La description OpenAPI lisible par machine se trouve à
/openapi/v1.json si vous voulez générer un client ou importer l'API dans un autre outil.
Authentification
Chaque requête doit porter votre clé d'API sous forme de jeton bearer :
Authorization: Bearer suede_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxCréez une clé dans votre compte Suede — consultez Authentification. Les endpoints de recherche facturables exigent un abonnement Suede actif et un solde de crédit d'API positif.
Une première requête
curl "https://api.suede.io/v1/search?q=hello+world" \ -H "Authorization: Bearer $SUEDE_API_KEY"
using var http = new HttpClient(); http.DefaultRequestHeaders.Authorization = new("Bearer", Environment.GetEnvironmentVariable("SUEDE_API_KEY")); var json = await http.GetStringAsync("https://api.suede.io/v1/search?q=hello+world"); Console.WriteLine(json);
const res = await fetch("https://api.suede.io/v1/search?q=hello+world", { headers: { Authorization: `Bearer ${process.env.SUEDE_API_KEY}` }, }); console.log(await res.json());
Réponses
Une réponse réussie est du JSON avec le code HTTP 200. Une erreur utilise une enveloppe uniforme :
{ "error": { "type": "invalid_request", "message": "Query parameter 'q' is required.", "request_id": "a1b2c3d4e5f6a7b8" } }
Chaque réponse porte un en-tête X-Request-Id (repris sous request_id dans les erreurs) ; citez-le lorsque vous
contactez le support. Erreurs énumère l'ensemble complet des types et codes de statut, et
Limites de débit décrit la limitation.
Versionnage
La version actuelle est la v1, accessible sous le préfixe de chemin /v1. De nouveaux champs peuvent être
ajoutés aux réponses sans changement de version, alors analysez de façon défensive et ignorez les champs inconnus.
Un changement incompatible serait publié sous un nouveau préfixe de version.
Endpoints en un coup d'œil
| Méthode | Chemin | Objet |
|---|---|---|
| GET | /v1/search |
Recherche web |
| GET | /v1/images |
Recherche d'images |
| GET | /v1/news |
Recherche d'actualités |
| GET | /v1/videos |
Recherche de vidéos |
| GET | /v1/shopping |
Recherche d'achats |
| GET | /v1/answers |
Réponses instantanées |
| GET | /v1/usage |
Utilisation et solde de crédit |