Documentation API
Journal des versions
Les versions du contrat de l’API, de la plus récente à la plus ancienne. Toutes sont compatibles : un client écrit pour la 1.0 fonctionne toujours.
Version actuelle
v1 · 1.2.0Comment lire les versions
Le chemin porte la version majeure (/v1) ; info.version du document OpenAPI porte les évolutions compatibles listées ici. Toutes sont additives : aucun champ retiré, aucun champ obligatoire ajouté. Une rupture donnerait /v2, servie en parallèle. Chaque entrée porte la date du changement.
1.2.0 — Les webhooks signés.
- Points d’accès des webhooks :
GETetPOST /v1/webhooks,GET,PATCHetDELETE /v1/webhooks/{id},POST /v1/webhooks/{id}/rotateetPOST /v1/webhooks/{id}/test. La lecture demanderead, toute modificationwrite; dix points de terminaison au plus par compte. - Quatre événements —
search.finished,prospect.replied,application.received,partner.approved— signés selon la spécification Standard Webhooks (webhook-id,webhook-timestamp,webhook-signature). Le secretwhsec_n’est affiché qu’une fois ; après une rotation, l’ancien cosigne pendant 24 heures. - Une livraison échouée est réessayée après 1 minute, 5 minutes, 30 minutes, 2 heures et 12 heures. Les contenus portent des identifiants et des comptes, jamais une adresse e-mail ni un message.
- Les webhooks ne sont pas exposés comme outils MCP : leurs secrets finiraient dans les transcriptions des assistants.
- Un chemin inconnu sous
/api/v1répond désormais 404not_foundenapplication/problem+json, après authentification, au lieu d’une page HTML.
1.1.0 — Le recrutement de partenaires par l’API, et le serveur MCP.
- 29 nouvelles opérations, pour tout ce que font les écrans de recrutement : les sites, les critères et leurs termes de sujet générés, la recherche de partenaires et ses derniers résultats, la sélection et son passage en prospects, les prospects et la recherche d’e-mails payante, la recherche conversationnelle, l’index des créateurs (recherche, fiche, profils semblables, bibliothèque des créateurs trouvés), les concurrents et la prospection — boîtes d’envoi, séquences, inscription. Aucun point d’accès n’envoie d’e-mail directement.
- Les portées
read,search,writeetspend; les clés créées avant la 1.1 gardent exactementread. - La confirmation du coût : une opération qui dépense des crédits de fournisseur demande
spendet unconfirmCostau moins égal à l’estimation, faute de quoi elle répond 402cost_confirmation_requiredavec l’estimation danserror.detailset ne dépense rien. Les dépenses confirmées sont journalisées. Idempotency-Keysur les écritures (24 heures, succès seulement), corps de requête limités à 32 Kio (413payload_too_large), un plafond de débit par compte en plus de celui par clé, et 20 nouveaux codes d’erreur.- Le serveur MCP sur
/api/mcp(Streamable HTTP, versions du protocole 2025-11-25 à 2024-11-05) : 29 outils calqués sur l’API, mêmes clés et mêmes portées ; les outils payants se confirment en deux temps avec unconfirmToken.
- Les recherches enregistrées :
GET /v1/sites/{id}/partner-search/historyet/history/{searchId}; outils MCPlist_saved_searchesetget_saved_search. - Les erreurs deviennent des documents de problème RFC 9457 (
application/problem+json:type,title,status,detail,instance) qui gardent le membreerrorde la 1.0 inchangé ; chaquetypemène à sa ligne de la page des erreurs. Les 401 et 403 portentWWW-Authenticate. RateLimit-PolicyetRateLimit(brouillon IETF) à côté deX-RateLimit-*;X-Request-Idettraceparentrenvoyés ; unETagsur chaque GET,If-None-Matchrépondu304.- Découverte :
/api/v1/openapi.json,/llms.txtet/llms-full.txt. - MCP : connexion par OAuth 2.1 (spécification d’autorisation MCP 2025-11-25, PKCE S256, métadonnées de ressource protégée, fiche du serveur sur
/.well-known/mcp.json), portées par défautread search;outputSchemaetstructuredContentsur chaque outil ;enrol_in_sequencese confirme en deux temps. - Les prospects gagnent un champ
stage, l’étape du pipeline affichée par l’écran Partenaires.
1.0.0 — Le premier contrat, en lecture seule.
- Quatre opérations : le répertoire public des programmes (
GET /v1/programs,GET /v1/programs/{slug}), le compte appelant (GET /v1/me) et ses commissions (GET /v1/commissions). - Clés porteuses
gaff_live_…, conservées sous forme d’empreinte et affichées une seule fois ; un plafond de débit par clé selon le plan, avecX-RateLimit-Limit,X-RateLimit-RemainingetRetry-After. - Pagination par curseur, origines navigateur refusées (CORS) et un document OpenAPI 3.1 dérivé des schémas que les routes appliquent.
- Les points d’accès du répertoire prennent leur chemin anglais :
/v1/programmesdevient/v1/programs.