Lister ses projets
Renvoie les projets du compte porté par votre clé API, avec leurs mots-clés et l'état de leur agent IA.
/api/v1/projectsGratuitVos projets vivent dans le tableau de bord ; cet endpoint les rend lisibles depuis l'extérieur. L'usage courant est de récupérer les mots-clés et la langue cible d'un projet pour les passer à l'endpoint de scan, au lieu de les recopier dans votre script à chaque changement.
Le périmètre vient de la clé
En-têtes
En-têtes de la requête
| Paramètre | Type | Requis | Description |
|---|---|---|---|
Authorization | string | Requis | Votre clé API, préfixée de Bearer. Une clé absente, inconnue ou révoquée donne un 401. |
Ni pagination ni tri à demander : le plan Starter plafonne à trois projets, qui sortent du plus récent au plus ancien.
Exemple
curl -s https://subreply.io/api/v1/projects \
-H "Authorization: Bearer sr_live_VOTRE_CLE_API"{
"projects": [
{
"id": "9d5d550a-5f41-4762-b3cf-6e6e25bb8121",
"name": "SubReply",
"target_region": "fr",
"keywords": ["prospection reddit", "acquisition", "social selling"],
"ai_agent_enabled": true,
"created_at": "2026-07-03T12:32:55.820434+00:00"
}
]
}const { projects } = await (
await fetch("https://subreply.io/api/v1/projects", {
headers: { Authorization: `Bearer ${process.env.SUBREPLY_API_KEY}` },
})
).json();
const project = projects[0];
const scan = await fetch("https://subreply.io/api/v1/scrape", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.SUBREPLY_API_KEY}`,
},
body: JSON.stringify({
subreddits: ["r/entrepreneur"],
keywords: project.keywords,
// /api/v1/scrape n'accepte que fr et en : toute autre valeur part sans
// filtre de langue plutôt qu'en erreur 400.
target_language: ["fr", "en"].includes(project.target_region)
? project.target_region
: null,
}),
});Champs de la réponse
| Champ | Type | Description |
|---|---|---|
projects[].id | string | Identifiant du projet (UUID). C'est lui qu'affiche l'URL du tableau de bord. |
projects[].name | string | Nom du projet, tel que vous l'avez saisi. |
projects[].target_region | string | Langue cible du projet : fr, en ou nl. Chaîne vide si le projet n'en a pas, et valeur libre (« France ») pour les projets créés avant le sélecteur de langue. |
projects[].keywords | string[] | Mots-clés de recherche du projet. Se passent tels quels à /api/v1/scrape. |
projects[].ai_agent_enabled | boolean | L'agent IA est activé sur ce projet : il scanne et publie seul, chaque jour. |
projects[].created_at | string | Date de création du projet, au format ISO 8601. |
Les champs internes d'un projet ne sortent jamais d'ici : profil client généré, subreddits surveillés, états de cache du scan. Ce que cette page décrit est tout ce que la route renvoie, aujourd'hui comme après une évolution du produit.
Erreurs
Un compte sans projet n'est pas une erreur : la route répond 200 avec projects: []. Une lecture en échec, elle, répond 500 — jamais un tableau vide, qui vous ferait croire que vos projets ont disparu. Le détail des codes est sur la page codes d'erreur.