Tout ce qu'il faut pour
intégrer Nixia
Guides, références et exemples pour déployer vos agents IA, connecter vos canaux et exploiter l'API Nixia — en moins de 5 minutes.
Introduction
Nixia est une plateforme SaaS de CRM conversationnel. Elle vous permet de déployer des agents IA sur votre site web et vos canaux de communication en quelques minutes, sans expertise technique.
Installer le widget
Le widget Nixia s'intègre sur n'importe quel site web en collant un simple script.
</body> de votre site :<!-- Chatbot Widget Integration Script -->
<!-- Intégration simple : Copiez et collez ce script dans votre site web -->
<script src="http://localhost:8000/api/v1/embed/NsgxdmNeZq5bwGASMkW8yRsnU1pTd1bv/chatbot.js"></script>
<!-- Fin du script chatbot -->Configurer l'agent
Depuis votre dashboard, personnalisez le comportement de votre agent IA.
| Paramètre | Description | Exemple |
|---|---|---|
Nom du bot | Prénom affiché dans le chat | "Nixia" |
Ton | Style de communication de l'IA | "professionnel", "amical" |
Moteur IA | LLM utilisé pour les réponses | OpenAI GPT-4 |
Base de connaissances | Fichiers alimentant l'IA | PDF, JSON, Markdown, URL |
Message de bienvenue | Premier message affiché | "Bonjour, comment puis-je aider ?" |
Tester en live
Avant de déployer, testez votre agent depuis le dashboard.
JWT — Admins & Agents
Les administrateurs s'authentifient via JWT (JSON Web Token). Le token est valide 24h et se rafraîchit automatiquement.
// 1. Login pour obtenir un token JWT
const res = await fetch('http://localhost:8000/api/v1/auth/login', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
email: 'admin@entreprise.com',
password: 'votre_mot_de_passe'
})
});
const { access_token } = await res.json();
// 2. Utiliser le token dans vos requêtes
const data = await fetch('http://localhost:8000/api/v1/admin/me', {
headers: { 'Authorization': `Bearer ${access_token}` }
});API Key — Agents IA
Chaque agent IA possède une API Key unique, utilisée pour les intégrations directes (widget, scripts tiers).
// Authentification par API Key (pour les agents IA)
const res = await fetch('http://localhost:8000/api/v1/config/by-api-key', {
headers: {
'X-API-Key': 'YOUR_AGENT_API_KEY'
}
});
const config = await res.json();
console.log(config);| Header | Valeur | Usage |
|---|---|---|
Authorization | Bearer {jwt} | Endpoints admin |
X-API-Key | {api_key} | Endpoints agents |
OAuth — Facebook & Instagram
La connexion Facebook Messenger et Instagram utilise le flux OAuth 2.0 via l'API Graph de Meta.
GET /api/v1/channels/facebook/auth-url pour obtenir l'URL OAuth./api/v1/channels/facebook/callback.// 1. Récupérer l'URL d'autorisation Facebook
const res = await fetch('/api/v1/channels/facebook/auth-url', {
headers: { 'Authorization': 'Bearer YOUR_JWT_TOKEN' }
});
const { auth_url } = await res.json();
// 2. Rediriger vers Facebook OAuth
window.location.href = auth_url;
// 3. Après callback, connecter la page
await fetch('/api/v1/channels/facebook/connect-page', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_JWT_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({ page_id: "FACEBOOK_PAGE_ID" })
});Widget Web
Le canal le plus simple à déployer — aucune configuration côté infrastructure requise.
Compatible avec tous les frameworks : React, Vue, Angular, WordPress, Shopify, Webflow, etc. Le script détecte automatiquement la langue du navigateur.
Pour une intégration React, vous pouvez aussi utiliser le hook dédié :
import { useNixia } from '@Nixia/react-widget';
export default function App() {
const { open, close } = useNixia();
return <button onClick={open}>Ouvrir le chat</button>;
}WhatsApp Business
Connectez votre numéro WhatsApp Business pour recevoir et répondre aux messages directement depuis Nixia.
// 1. Générer un QR code de connexion WhatsApp
const res = await fetch('/api/v1/channels/', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_JWT_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
channel_type: "whatsapp",
organization_id: "YOUR_ORG_ID"
})
});
// 2. Scanner le QR code avec WhatsApp Business
const { qr_code, connection_id } = await res.json();Facebook Messenger
Connectez votre page Facebook pour répondre automatiquement aux messages Messenger.
Vous devez être administrateur de la page Facebook à connecter. L'autorisation se fait via OAuth Meta.
// 1. Récupérer l'URL d'autorisation Facebook
const res = await fetch('/api/v1/channels/facebook/auth-url', {
headers: { 'Authorization': 'Bearer YOUR_JWT_TOKEN' }
});
const { auth_url } = await res.json();
// 2. Rediriger vers Facebook OAuth
window.location.href = auth_url;
// 3. Après callback, connecter la page
await fetch('/api/v1/channels/facebook/connect-page', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_JWT_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({ page_id: "FACEBOOK_PAGE_ID" })
});Instagram Direct
Automatisez les messages directs Instagram via l'API Graph de Meta.
L'intégration Instagram Direct sera disponible prochainement. Elle fonctionnera via le même flux OAuth que Facebook Messenger, car les deux utilisent l'API Graph de Meta.
Vue d'ensemble
L'API Nixia est une API REST qui retourne des réponses JSON. Elle est conforme à la spécification OpenAPI 3.1.
| Propriété | Valeur |
|---|---|
Base URL | http://localhost:8000 |
Spécification | OpenAPI 3.1 |
Version | 0.1.0 |
Authentification | JWT Bearer / API Key |
Format | JSON |
HTTPS | Obligatoire |
Documentation interactive | /docs (Swagger UI) |
Codes d'erreur
Toutes les erreurs retournent un objet JSON structuré avec un code HTTP standard.
// Structure d'une réponse d'erreur
{
"detail": "Description de l'erreur",
"status_code": 401,
"error_type": "UNAUTHORIZED"
}
// Codes HTTP retournés
// 200 OK → Succès
// 201 Created → Ressource créée
// 400 Bad Request → Données invalides
// 401 Unauthorized → Token manquant ou expiré
// 403 Forbidden → Permissions insuffisantes
// 404 Not Found → Ressource introuvable
// 422 Unprocessable→ Validation échouée
// 429 Too Many Req → Quota dépassé
// 500 Server Error → Erreur interneLimites & Quotas
Les limites varient selon votre plan d'abonnement.
| Limite | Starter | Pro | Enterprise |
|---|---|---|---|
Messages/mois | 1 000 | 10 000 | Illimité |
Agents IA | 1 | 3 | Illimité |
Utilisateurs | 2 | 10 | Illimité |
Fichiers base de connaissances | 5 | 50 | Illimité |
Canaux connectés | 1 (Widget) | Tous | Tous + API custom |
Rate limit API | 60 req/min | 300 req/min | Sur mesure |
429 Too Many Requests. Consultez votre dashboard pour suivre votre consommation en temps réel.