URL de base
https://os.caugia.com
Endpoints
Essayer maintenant
Appelez l'API en direct depuis cette page. Les reponses ne sont pas mises en cache pour les requetes interactives.
/api/sophie/v1/knowledge-statsStats de connaissances (GET)/api/sophie/v1/resolveResoudre un token de citation (POST)Corps de la requete
/api/sophie/v1/previewPrevisualiser un archetype (POST)Corps de la requete
/api/sophie/v1/leaderboard?days=7&limit=5Classement (GET)Cookbook
Six exemples concrets couvrant les patterns d'integration typiques. Copiez, collez, executez.
1. Resolve a citation token (cURL)
Sophie emitted [framework:porter_5_forces] in a chat - resolve it to a hover card.
curl -s https://os.caugia.com/api/sophie/v1/resolve \
-H "Content-Type: application/json" \
-d '{"tokens":[{"type":"framework","slug":"porter_5_forces"}]}'bash
2. Preview an archetype (cURL)
Get the structured citation block Sophie would emit for SaaS B2B + pricing_governance.
curl -s https://os.caugia.com/api/sophie/v1/preview \
-H "Content-Type: application/json" \
-d '{"vertical":"saas_b2b","archetype_id":"pricing_governance"}'bash
3. Fetch the 7-day leaderboard (cURL)
Top 5 cited entities over the last 7 days.
curl -s "https://os.caugia.com/api/sophie/v1/leaderboard?days=7&limit=5"
bash
4. Knowledge stats (JavaScript)
Display "Sophie knows X frameworks" on a marketing site.
const r = await fetch('https://os.caugia.com/api/sophie/v1/knowledge-stats');
const stats = await r.json();
console.log(`Sophie cites ${stats.total} entities (${stats.frameworks} frameworks, ${stats.papers} papers, ${stats.blogs} essays).`);javascript
5. Batch resolve from a Sophie response (JavaScript)
Scan a chat string for citations, batch-resolve them in one call.
const text = await sophieChat(); // e.g. "...as [framework:jobs_to_be_done] suggests..."
const tokens = [...text.matchAll(/\[(framework|paper|blog):([a-z0-9_-]+)\]/g)]
.map(m => ({ type: m[1], slug: m[2] }));
const r = await fetch('https://os.caugia.com/api/sophie/v1/resolve', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ tokens }),
});
const { resolved } = await r.json();
const cards = new Map(resolved.map(e => [`${e.type}:${e.slug}`, e]));javascript
6. Free-text preview from a Slack bot (JavaScript)
Pass a natural-language constraint, let Sophie guess the archetype.
const r = await fetch('https://os.caugia.com/api/sophie/v1/preview', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
vertical: 'dtc',
free_text: 'meta CAC up 40% MoM, creative refresh stalled',
}),
});
const preview = await r.json();
return preview.framework_applications.slice(0, 3);javascript
Limites de debit + cache
Les endpoints GET sont mis en cache 60 secondes au bord avec stale-while-revalidate. Les endpoints POST ne sont pas mis en cache. Limite douce : 60 requetes par minute par IP. Limite dure : 600 requetes par minute. Pour les webhooks et les cas a fort volume, ecrivez a api@caugia.com.
Spec OpenAPI
Specification lisible par machine sur /api/sophie/openapi.json. Importez dans Swagger, Postman ou votre generateur de client prefere.
/api/sophie/openapi.json ->