Documentation API
Accédez à l'intelligence composite Phano depuis vos scripts, outils et agents IA.
1. Obtenez votre clé API
Créez une clé dans Paramètres > Clés API.
2. Faites votre premier appel
curl -H "Authorization: Bearer <votre-cle-api>" \ https://phano.ai/api/v1/portfolio/summary
3. Explorez les endpoints
Ajoutez votre clé API dans le header Authorization :
Authorization: Bearer pk_live_xxxx
La clé est affichée une seule fois à la création. En cas de perte, créez-en une nouvelle et révoquez l'ancienne.
| Scope | Description | Endpoints |
|---|---|---|
| read:portfolio | Résumé et risques du portefeuille | /v1/portfolio/summary, /v1/portfolio/risks |
| read:accounts | Liste et intelligence des comptes | /v1/accounts, /v1/accounts/{id}/intelligence |
| read:signals | Signaux et alertes | /v1/signals |
| read:stakeholders | Démasque les noms des contacts | Toute réponse contenant des stakeholders |
| read:all | Accès complet | Tous les endpoints + /v1/status |
Python
import requests
headers = {"Authorization": "Bearer <votre-cle-api>"}
r = requests.get("https://phano.ai/api/v1/portfolio/risks", headers=headers)
risks = r.json()["data"]
for risk in risks:
print(f"{risk['account']['name']} — {risk['situation']['severity_display']}")JavaScript
const res = await fetch("https://phano.ai/api/v1/portfolio/risks", {
headers: { Authorization: "Bearer <votre-cle-api>" }
});
const { data: risks } = await res.json();
risks.forEach(r => console.log(r.account.name, r.situation.severity_display));Les endpoints retournant des listes utilisent la pagination cursor-based. Paramètres : limit (défaut 20, max 100) et cursor (opaque).
# Page 1 GET /v1/signals?limit=10 # Page 2 (utilisez next_cursor de la réponse précédente) GET /v1/signals?limit=10&cursor=eyJkYSI6IjIwMjYt...
Quand next_cursor est null, c'est la dernière page.
L'API Phano est un endpoint HTTP standard. Tout outil ou script capable de faire une requête HTTP peut l'utiliser :
- Automatisations no-code : Zapier, Make, n8n — action webhook HTTP avec header Authorization
- Scripts : Python (requests), Node.js (fetch), Go, Ruby — exemples dans la section ci-dessus
- Tableurs : Google Sheets (Apps Script), Excel (Power Query) — appel HTTP programmé
- Agents IA : tout client compatible MCP, ou appel direct à l'API REST
Exemples de scénarios :
- Signal critique → notification dans votre outil de communication (poll /v1/signals?severity=critical)
- Résumé portfolio quotidien → export vers votre tableur ou base de données
| Code | HTTP | Description |
|---|---|---|
| unauthorized | 401 | Clé API invalide, révoquée ou expirée |
| forbidden | 403 | Scope insuffisant pour cet endpoint |
| validation_error | 400 | Paramètre invalide (format, valeur) |
| not_found | 404 | Ressource introuvable |
| rate_limit_exceeded | 429 | Limite de requêtes dépassée |
| internal_error | 500 | Erreur serveur |
Le MCP est un protocole ouvert pour connecter des agents IA à des sources de données. Phano expose 6 outils via ce protocole, compatibles avec tout client MCP.
{
"mcpServers": {
"phano": {
"url": "https://phano.ai/api/v1/mcp",
"headers": {
"Authorization": "Bearer <votre-cle-api>"
}
}
}
}6 outils disponibles pour les agents IA compatibles MCP : phano_getPortfolioSummary, phano_getPortfolioRisks, phano_getAccounts, phano_getAccountIntelligence, phano_getSignals, phano_getStatus.
3 niveaux de limitation :
- Burst : 50 requêtes / 10 secondes par clé
- Quotidien : 10 000 requêtes / jour par organisation
- Circuit breaker : 503 temporaire si >50% d'erreurs 5xx sur 1 minute
Headers de réponse :
X-RateLimit-Limit: limite burstX-RateLimit-Remaining: requêtes restantesX-RateLimit-Reset: epoch de resetRetry-After: secondes avant retry (si 429)