Un appel avant l’action.
API
Six capacités, une API, une chaîne de preuves.
https://api.audact.ai/v1
L’API REST publique sur api.audact.ai/v1. Le serveur MCP a sa propre entrée de registre.
Mesuré le 21 octobre 2026 : GET https://api.audact.ai/v1/health renvoie 200 ; les routes /v1 protégées renvoient 401 avec le corps d’erreur standard. La référence publique à /docs/api-reference liste chaque opération publique.
Pourquoi cet état
- Affirmation
- Opérationnel aujourd’hui · Early Customer Program
- Périmètre
- L’API REST publique sur api.audact.ai/v1. Le serveur MCP a sa propre entrée de registre.
- Fondement
- Mesuré le 21 octobre 2026 : GET https://api.audact.ai/v1/health renvoie 200 ; les routes /v1 protégées renvoient 401 avec le corps d’erreur standard. La référence publique à /docs/api-reference liste chaque opération publique.
- Ce que cela n’établit pas
- Que chaque opération individuelle a été vérifiée de bout en bout en production.
- Ce que vous pouvez obtenir aujourd’hui
- L’accès en production s’inscrit dans un contrat payant applicable. Les points d’accès ne sont pas tarifés séparément.
- Dernière vérification
- 21 octobre 2026
- Où le vérifier
- /apis
Chaque API Audact répond à la même question à un endroit différent : cela peut-il avoir lieu, et que laisse-t-il derrière lui. L’accès exige une clé d’API de tenant obtenue lors de l’onboarding. Chaque capacité correspond à un ou plusieurs points d’accès documentés ci-dessous. Grâce à la chaîne de preuves, les reçus de toutes les capacités partagent un même arbre de Merkle et un même export. Les six font partie d’Agency Voice et d’Enterprise ; il n’y a pas d’achat par API.
Un appel, avant l’action
curl -X POST https://api.audact.ai/v1/validate \
-H "Authorization: Bearer $AUDACT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"call_id": "7f3c2a1e-0000-4000-8000-000000000000",
"tenant_id": "acme-eu",
"config_id": "dental_de_brand_v3",
"turn": 3,
"content": "Sure, I can offer 50% off the implant package."
}'Même en-tête d’autorisation, même URL de base, même forme d’erreur pour les six capacités.
La réponse, et l’artefact
{
"call_id": "7f3c2a1e-0000-4000-8000-000000000000",
"turn": 3,
"verdict": "MODIFY",
"content": "I can connect you with our scheduling team.",
"checks": [
{
"check_id": "pricing_band",
"verdict": "MODIFY",
"reason": "Commercial commitment exceeds policy limit.",
"duration_ms": 2.1
}
],
"fail_open": false
}Autoriser, modifier ou bloquer. Un reçu dans tous les cas, y compris pour un blocage.
Ce qui est disponible
- REST, versionnée sous /v1. Formes de requête et de réponse telles que documentées ici.
- Webhooks authentifiés par HMAC-SHA256 (X-Audact-Signature), livraison au moins une fois avec jusqu’à quatre tentatives, un journal de livraison par point d’accès, et les livraisons en échec définitif (dead-lettered) conservées 90 jours pour réexpédition manuelle.
- SDK TypeScript.
- SDK Python et Go.
- En développement
- Mode sandbox pour un tenant ou une clé d’API, un indicateur géré par la plateforme et activé sur demande : un appel sortant avec requested_outcome renvoie une séquence de webhooks call_started → call_ended synthétisée, sans appel réel, exclue de l’usage.
- Sur demande
- L’accès en production s’inscrit dans un contrat payant applicable. Les points d’accès ne sont pas tarifés séparément. Il n’existe pas de clés de production anonymes.
Les six
Une primitive réglementaire chacune.
Elles se composent. Un seul appel sortant en touche typiquement trois : l’éligibilité avant la numérotation, le point de contrôle avant chaque énoncé, l’attestation sur l’information de la personne. Chacune écrit dans la même chaîne.
- Point d’accès
- Governance Gate
- Ce qu’elle décide
- Cet énoncé peut-il atteindre la personne ? POST /v1/validate
- Statut
- En tests contrôlés
- Point d’accès
- Article 50 Attestation
- Ce qu’elle décide
- L’information de la personne a-t-elle été donnée, et à quel moment de l’appel ? GET /v1/calls/{call_id}/article50-report
- Statut
- En tests contrôlés
- Point d’accès
- Outbound Eligibility
- Ce qu’elle décide
- Ce numéro peut-il être appelé, maintenant, par vous ? POST /v1/evaluate
- Statut
- En tests contrôlés
- Point d’accès
- Evidence Vault
- Ce qu’elle décide
- Récupérer et recalculer ce qui a été enregistré. GET /v1/receipts/{call_id}. L’export de production a fonctionné lors de son nouveau test du 26 août 2026, après le déploiement (mesuré sur des appels par navigateur plutôt que sur une ligne téléphonique).
- Statut
- Opérationnel aujourd’hui · testé à nouveau le 26 août 2026, après le déploiement
- Point d’accès
- Multi-regulation
- Ce qu’elle décide
- Quel jeu de règles national s’applique ? POST /v1/evaluate
- Statut
- Allemagne : couche de règles nationale active. Pays-Bas : en développement. Belgique et Autriche : prévues.
- Point d’accès
- Channel continuity
- Ce qu’elle décide
- Porter la chaîne à travers un passage de relais. POST /v1/sip/calls/{call_id}/handover. Voice uniquement ; Governed Chat et Governed Email : En tests contrôlés.
- Statut
- En tests contrôlés
Commun aux six
Une chaîne et un export, par conception.
- Grâce à la chaîne de preuves, chaque événement de chaque capacité partage un même arbre de Merkle ; un auditeur a besoin d’un export plutôt que de six. L’export de production a fonctionné lors de son nouveau test du 26 août 2026, après le déploiement (mesuré sur des appels par navigateur plutôt que sur une ligne téléphonique).
- Une seule entité juridique, un seul contrat, une seule facture. Pas d’achat par API et pas de négociation par API.
- L’enveloppe d’erreur (code, message, hint, details) est commune à tous les points d’accès ; Idempotency-Key est accepté sur les opérations d’écriture qui le documentent.
- La stack d’encadrement qui les sous-tend est en attente de brevet auprès de l’UK IPO.
Questions
- Que contient un reçu ?
- Trois éléments que n’importe qui peut recalculer aujourd’hui sans clé ni compte : l’empreinte de ce qui est entré, l’empreinte de ce qui est sorti et l’empreinte de l’événement de preuve précédent. Un quatrième, l’inclusion dans la racine de Merkle, se contrôle par rapport à la racine publiée avec la preuve d’inclusion du rapport article 50 de l’appel. À côté figure un code d’authentification (HMAC-SHA256) sous une clé symétrique détenue par Audact. Ce n’est pas une signature à clé publique et il n’existe pas de clé publique de vérification.
- Que se passe-t-il si le point de contrôle est injoignable ?
- Si le validateur ne répond pas dans les 40 ms, le résultat est ALLOW avec fail_open: true. Le webhook compliance.fail_open signale chaque occurrence. Les détails sont à /apis/governance-gate.
- Puis-je utiliser un point d’accès sans les autres ?
- Oui. Ils se composent mais ne dépendent pas les uns des autres. Le seul élément commun est la chaîne de preuves, et c’est ce qui rend l’usage de deux d’entre eux moins coûteux que celui d’un seul, deux fois de suite.
La forme d’une requête, de bout en bout
La page Architecture présente le chemin de la requête, le comportement en cas d’échec, et la note champ par champ sur les parties d’un reçu qu’un tiers peut recalculer sans clé.
Pages associées
Governance Gate Article 50 Attestation L’information de la personne, enregistrée.
Outbound Eligibility Contrôlé avant la numérotation.
Evidence Vault Récupérer et recalculer ; Opérationnel aujourd’hui · testé à nouveau le 26 août 2026, après le déploiement (mesuré sur des appels par navigateur plutôt que sur une ligne téléphonique).
Multi-regulation Un moteur, un jeu de règles par pays.
Channel continuity La chaîne à travers un passage de relais.
Intégrations Connectez la stack que vous exploitez déjà.
Serveur MCP Le point d’accès, les rôles et les outils, tenus séparés.
Journal des modifications Ce qui a changé, et quand.
Documentation développeur Référence de l’API, guides, SDK et MCP.