Comment fonctionne l'authentification

Les API utilisent les identifiants du portail (email + portalApiKey) et des en-têtes dédiés sur chaque appel métier. Un second niveau de clé (assistantApiKey) protège les opérations sur un assistant.

🔑

Connexion portail

Appelez POST /api/v1/auth/portal/login en passant email et portalApiKey pour valider les identifiants client.

📨

En-têtes de session

Sur chaque requête métier envoyez les en-têtes x-client-email et x-portal-api-key. Tout le trafic transite en HTTPS/TLS.

🤖

Opérations par assistant

Pour modifier un assistant utilisez son assistantApiKey dans le path : /api/v1/assistants/{assistantApiKey}/...

Domaines fonctionnels exposés par les API

Les API exposent toute la plateforme AI4CALL. Chaque domaine correspond à un groupe de tags Swagger et est piloté par programme avec la même logique que le portail graphique.

⚙️

Compte & environnement

Gérez la configuration globale du client : IP autorisées, limites d'appel, routage des numéros et plugins actifs.

  • /account/allowed-ips — Whitelist IP (lecture/écriture)
  • /account/call-limits — Limites d'appels concurrents et périodiques
  • /account/number-routing — Mappage numéro → assistant
  • /account/plugins/* — Plugins disponibles, instances, configurations et achat
🤖

Assistants & prompt

CRUD complet sur les assistants IA : création, lecture, mise à jour du prompt, du premier message et des paramètres.

  • GET/POST /assistants — Liste et création d'assistants
  • /assistants/{key} — Détail d'un assistant
  • /assistants/{key}/prompt — Prompt + first message éditables
  • /runtime/settings — Settings runtime et advanced settings
🎙️

Voix : TTS, ASR, LLM, DTMF

Choisissez les fournisseurs et modèles TTS, ASR, LLM et DTMF, et appliquez-les à l'assistant à la volée.

  • /catalog/providers/tts + tts/voices
  • /catalog/providers/asr + asr/models
  • /catalog/providers/llm + llm/models
  • /runtime/{tts|asr|llm|dtmf} — Mise à jour runtime de TTS, ASR, LLM et DTMF
📚

RAG & base de connaissances

Téléversez des documents, gérez les collections et liez les bases de connaissances aux assistants pour des réponses toujours à jour.

  • /catalog/rag/collections — Liste des collections RAG
  • /rag/collections/{name}/documents — Upload, liste, suppression de documents
  • /rag/documents/estimate — Estimation préalable d'indexation
  • /runtime/rag — Binding RAG runtime sur l'assistant
🔌

Outils & Pre-Call

Étendez les assistants avec des outils du catalogue et la logique pre-call : validation de numéro, configuration MCP et outils runtime.

  • /catalog/tools — Catalogue d'outils runtime côté client
  • /runtime/tools — Outils liés à un assistant
  • /runtime/precall/number-validation
  • /runtime/precall/mcp-config
📴

Hangup & post-appel

Définissez le comportement de fin d'appel : redirection, transfert, sauvegarde de conversation et schéma de données structuré.

  • /runtime/hangup — Configuration hangup, redirection et transfert
  • /runtime/hangup/save-conversation
  • /runtime/hangup/schema
  • Catalogue des options de hangup
📞

Outbound & PBX

Lancez des appels sortants depuis votre backend, soit via le trunk AI4CALL soit via le PBX du client, à travers de simples webhooks.

  • POST /webhook/outbound_call — Sortant via trunk AI4CALL
  • POST /webhook/outbound_call_pbx — Sortant via PBX client
  • Métadonnées personnalisées (lead_id, ticket…)
  • Suivi du résultat dans Analytics
📊

Analytique & historique

Exposez l'historique des appels, recharges, RAG, SMS et tool responses pour vos rapports et tableaux de bord.

  • /account/analytics/calls + calls-outbound
  • /account/analytics/recharges
  • /account/analytics/rag · sms · tool-responses
  • /account/analytics/pre-call

Démarrer en 4 étapes

De l'activation au premier appel via API en quelques minutes.

Activez un compte

Inscrivez votre entreprise sur AI4CALL et choisissez le plan adapté à votre cas d'usage.

🔐

Générez la portalApiKey

Depuis le portail créez une clé dédiée à chaque application ou environnement (test, production).

🧭

Explorez Swagger

Ouvrez la documentation interactive, testez les endpoints et copiez les requêtes prêtes à l'emploi.

🚀

Intégrez et passez en production

Branchez les API à vos systèmes, configurez l'outbound et l'analytique et suivez la consommation.

Exemples cURL

Trois snippets couvrant le flux le plus courant : login, lecture des assistants, lancement d'un outbound.

1. Connexion portail

curl -X POST https://client-api.ai4call.com/api/v1/auth/portal/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "demo@ai4call.local",
    "portalApiKey": "portal_demo_key_123456789"
  }'

2. Lister les assistants du client

curl -X GET https://client-api.ai4call.com/api/v1/assistants \
  -H "x-client-email: demo@ai4call.local" \
  -H "x-portal-api-key: portal_demo_key_123456789"

3. Lancer un appel sortant

curl -X POST https://client-api.ai4call.com/webhook/outbound_call \
  -H "x-client-email: demo@ai4call.local" \
  -H "x-portal-api-key: portal_demo_key_123456789" \
  -H "Content-Type: application/json" \
  -d '{
    "assistantApiKey": "ast_xxx",
    "to": "+39081...",
    "from": "+3902...",
    "metadata": { "lead_id": "123" }
  }'

Tous les endpoints sont documentés dans Swagger avec exemples de request/response, codes d'erreur et schémas JSON. Les en-têtes x-client-email et x-portal-api-key sont requis sur chaque appel métier.

Scénarios d'intégration

Les API AI4CALL s'adaptent aussi bien aux logiciels métiers qu'aux flux automatisés low-code.

🏢

Intégration CRM / ERP

Synchronisez leads, tickets et activités avec votre logiciel et lancez des appels IA directement depuis votre CRM.

⚙️

Automatisations internes

Orchestrez des campagnes sortantes, des confirmations de RDV, des rappels et des sondages automatiques via webhook.

📈

Reporting avancé

Importez les données AI4CALL dans votre data warehouse ou vos outils BI (Power BI, Looker, Metabase).

🔄

Workflows no-code

Connectez AI4CALL à des outils tels que n8n, Zapier ou Make pour automatiser vos flux sans coder.

🛠️

Outils et plugins personnalisés

Exposez vos fonctions métier sous forme d'outils que les assistants peuvent invoquer pendant les appels.

📦

Multi-tenant et revendeurs

Construisez des portails et tableaux de bord multi-clients par-dessus les API, avec isolation des données et branding.

Sécurité, fiabilité et conformité

Les API sont conçues pour des environnements de production : sécurisées, supervisées et versionnées.

🔐

Authentification à deux niveaux

En-têtes x-client-email + x-portal-api-key pour le client, assistantApiKey dans le path pour les opérations sur un assistant. Le tout en HTTPS/TLS.

🌍

Whitelist IP

Limitez l'usage des API à une liste d'IP autorisées, gérée via /account/allowed-ips.

⏱️

Limites & quotas

Endpoint dédié /account/call-limits pour lire et mettre à jour les limites d'appel sans dépasser la capacité contractuelle.

📜

Versioning stable

Tous les endpoints métier sont sous /api/v1/. Les évolutions incompatibles seront introduites dans une nouvelle version majeure.

Documentation Swagger interactive

Explorez chaque endpoint, testez les requêtes en direct, téléchargez la spécification openapi.yaml et générez des clients dans votre langage favori.

Aller sur swagger.ai4call.com

L'API est documentée selon le standard OpenAPI 3.0.3 et est explorable via Swagger UI sur https://swagger.ai4call.com/. Le fichier openapi.yaml est téléchargeable depuis la même page.

L'URL de base de production est https://client-api.ai4call.com. Tous les endpoints métier sont sous /api/v1/ et les appels outbound utilisent le préfixe /webhook/.

On commence par POST /api/v1/auth/portal/login en passant email et portalApiKey. Ensuite, chaque requête métier doit inclure les en-têtes x-client-email et x-portal-api-key. Les opérations sur un assistant requièrent en plus l'assistantApiKey dans le path.

Oui. GET/POST /api/v1/assistants permet de lister et créer, GET /api/v1/assistants/{assistantApiKey} de lire le détail. Le tag Assistants dans Swagger regroupe toutes les opérations.

Oui, via GET et PATCH sur /api/v1/assistants/{assistantApiKey}/prompt. C'est conçu pour l'édition programmatique du prompt et du first message sans passer par le portail.

Pour chaque fournisseur/voix/modèle disponible il y a un endpoint catalogue (ex. /api/v1/catalog/providers/tts, /catalog/assistants/{key}/asr/models) et un endpoint runtime d'assignation (PATCH /api/v1/assistants/{assistantApiKey}/runtime/{tts|asr|llm|dtmf}).

Les collections RAG sont sous /api/v1/catalog/rag/ : liste, upload et suppression de documents, estimation préalable d'indexation, binding sur l'assistant via PATCH /assistants/{key}/runtime/rag.

Oui. GET /api/v1/catalog/tools retourne les outils disponibles, tandis que /catalog/assistants/{key}/tools et PATCH /assistants/{key}/runtime/tools permettent de les attribuer à un assistant.

Sous /api/v1/assistants/{key}/runtime/precall/ on configure la number-validation et la mcp-config. /catalog/assistants/{key}/pre-call expose les options disponibles.

PATCH /assistants/{key}/runtime/hangup pour redirection/transfert, /runtime/hangup/save-conversation pour la sauvegarde et /runtime/hangup/schema pour définir un schéma de sortie structuré.

Via POST /webhook/outbound_call (trunk AI4CALL) ou POST /webhook/outbound_call_pbx (PBX client). Dans les deux cas vous précisez l'assistant, le numéro à appeler et les métadonnées personnalisées.

Sous /api/v1/account/analytics/ vous trouvez l'historique des appels entrants et sortants, recharges, événements RAG, SMS, tool responses et pre-call. Le tout pensé pour être ingéré par BI ou data warehouse.

Oui. GET/PATCH /api/v1/account/allowed-ips permet de lire et mettre à jour la whitelist d'IP autorisées à s'authentifier et utiliser les API.

Avec GET/PATCH /api/v1/account/call-limits vous pouvez lire et mettre à jour les limites, par exemple appels concurrents ou par période, selon le plan souscrit.

Oui. Vous pouvez lister les plugins disponibles (/account/plugins/available), gérer les instances (/account/plugins/instances), mettre à jour la configuration (/account/plugins/configuration) et finaliser l'achat (PATCH /account/plugins/purchase).

Oui, GET /health retourne l'état du service. Il ne nécessite pas d'authentification et est utile pour le monitoring et les sondes automatiques.

Tous les endpoints métier sont sous le préfixe /api/v1/. Les changements incompatibles seront introduits sous /api/v2/, en gardant v1 actif pendant la transition.

Vous pouvez utiliser des identifiants (email + portalApiKey) dédiés à des environnements de test, en isolant configurations et numéros des appels de production. Contactez-nous depuis le portail pour activer un compte de test.

Technologie et personnes :
ensemble, zéro attente et mille solutions.

Prêt à transformer
vos appels ?

Demandez une démo gratuite et découvrez comment AI4CALL peut révolutionner votre entreprise


Quelques utilisateurs d'ai4call