{"openapi":"3.1.0","info":{"title":"BeAI Management API","version":"1.0.0","description":"API publique de gestion BeAI. Elle expose les memes ressources et controles metier que le portail.\n\nCe document est adapte au compte connecte: les routes que ce compte ne peut jamais utiliser sont masquees. Les autorisations et le perimetre exact sont recalcules a chaque requete depuis l\u0027utilisateur proprietaire de la cle.\n\nUne cle ne peut jamais elever les privileges du compte, contourner les tags, les quotas, la hierarchie d\u0027organisations ou les restrictions plateforme.\n\nLes ressources hors perimetre repondent generalement 404 afin de ne pas divulguer leur existence. Les secrets sont acceptes en ecriture mais toujours masques en lecture.\n\nLes bots sont exposes sous forme de ressources composees: utilisez les sous-routes identity, prompting, voice, sip, conversation et skills pour ne transporter que la configuration necessaire."},"servers":[{"url":"https:\/\/ai.beone.be","description":"Serveur courant"}],"tags":[{"name":"Bots"},{"name":"Bots - Configuration"},{"name":"Bots - Skills"},{"name":"Calendriers"},{"name":"Campagnes sortantes"},{"name":"Compte"},{"name":"Conversations"},{"name":"Credit orders"},{"name":"Credits"},{"name":"Documents"},{"name":"Languages"},{"name":"Organisations"},{"name":"Outils bases de donnees"},{"name":"Runtime"},{"name":"Tags"},{"name":"Templates de bots"},{"name":"Types"},{"name":"Users"}],"paths":{"\/api\/v1\/bot-templates":{"get":{"tags":["Templates de bots"],"summary":"Lister bot templates index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_templates_index","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Templates de bots"],"summary":"Creer ou executer bot templates create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_templates_create","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotTemplateCreate"}}}}}},"\/api\/v1\/bot-templates\/{id}":{"get":{"tags":["Templates de bots"],"summary":"Consulter bot templates show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_templates_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Templates de bots"],"summary":"Modifier bot templates update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_templates_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotTemplateUpdate"}}}}},"put":{"tags":["Templates de bots"],"summary":"Modifier bot templates update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_templates_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotTemplateUpdate"}}}}},"delete":{"tags":["Templates de bots"],"summary":"Supprimer ou revoquer bot templates delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_templates_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots":{"get":{"tags":["Bots"],"summary":"Lister bots index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}},{"name":"tag_id","in":"query","required":false,"description":"Tag","schema":{"type":"integer"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Bots"],"summary":"Creer ou executer bots create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_create","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotCreate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/BotCreate"}}}},"x-beai-file-fields":["avatar"]}},"\/api\/v1\/bots\/{botId}\/admin-chat\/sessions":{"get":{"tags":["Bots"],"summary":"Consulter bot operations admin chat sessions","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_sessions","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Etat de session. closed est un alias de archived.","schema":{"type":"string","enum":["open","archived","closed","deleted","all"]}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations admin chat create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_create","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{botId}\/admin-chat\/sessions\/{sessionId}":{"get":{"tags":["Bots"],"summary":"Consulter bot operations admin chat show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"sessionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"delete":{"tags":["Bots"],"summary":"Supprimer ou revoquer bot operations admin chat delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"sessionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{botId}\/admin-chat\/sessions\/{sessionId}\/archive":{"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations admin chat archive","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_archive","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"sessionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{botId}\/admin-chat\/sessions\/{sessionId}\/messages":{"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations admin chat message","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_message","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"sessionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"402":{"$ref":"#\/components\/responses\/PaymentRequired"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/AdminChatMessageWrite"}}}}}},"\/api\/v1\/bots\/{botId}\/admin-chat\/sessions\/{sessionId}\/proposal":{"delete":{"tags":["Bots"],"summary":"Supprimer ou revoquer bot operations admin chat reject","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_reject","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"sessionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{botId}\/admin-chat\/sessions\/{sessionId}\/proposal\/apply":{"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations admin chat apply","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_admin_chat_apply","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"sessionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{botId}\/calendar-connections":{"get":{"tags":["Bots"],"summary":"Consulter calendar connections index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Bots"],"summary":"Creer ou executer calendar connections create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_create","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/CalendarConnectionCreate"}}}}}},"\/api\/v1\/bots\/{botId}\/improvements":{"get":{"tags":["Bots"],"summary":"Consulter bot operations improvements index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"read","in":"query","required":false,"description":"Etat de lecture","schema":{"type":"string","enum":["read","unread"]}},{"name":"impact","in":"query","required":false,"description":"Impact","schema":{"type":"string","enum":["high","medium","low"]}},{"name":"category","in":"query","required":false,"description":"Categorie","schema":{"type":"string"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"delete":{"tags":["Bots"],"summary":"Supprimer ou revoquer bot operations improvements reset","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_reset","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{botId}\/improvements\/bulk-delete":{"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations improvements bulk delete","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_bulk_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/IdList"}}}}}},"\/api\/v1\/bots\/{botId}\/improvements\/bulk-read":{"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations improvements bulk read","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_bulk_read","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BulkReadWrite"}}}}}},"\/api\/v1\/bots\/{botId}\/improvements\/{suggestionId}":{"get":{"tags":["Bots"],"summary":"Consulter bot operations improvements show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"suggestionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"delete":{"tags":["Bots"],"summary":"Supprimer ou revoquer bot operations improvements delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"suggestionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{botId}\/improvements\/{suggestionId}\/conversations":{"get":{"tags":["Bots"],"summary":"Consulter bot operations improvements conversations","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_conversations","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"suggestionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{botId}\/improvements\/{suggestionId}\/read":{"put":{"tags":["Bots"],"summary":"Modifier bot operations improvements read","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_improvements_read","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"suggestionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReadStateWrite"}}}}}},"\/api\/v1\/bots\/{botId}\/whatsapp\/test":{"post":{"tags":["Bots"],"summary":"Creer ou executer bot operations whatsapp test","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_whatsapp_test","security":[{"bearerAuth":[]}],"parameters":[{"name":"botId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"502":{"$ref":"#\/components\/responses\/BadGateway"}}}},"\/api\/v1\/bots\/{id}":{"get":{"tags":["Bots"],"summary":"Consulter bots show","description":"Retourne une vue compacte avec les liens vers chaque section et chaque skill du bot. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"delete":{"tags":["Bots"],"summary":"Supprimer ou revoquer bots delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/conversation":{"get":{"tags":["Bots - Configuration"],"summary":"Consulter la section conversation du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_conversation","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Configuration"],"summary":"Configurer la section conversation du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_conversation","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotConversationWrite"}}}}}},"\/api\/v1\/bots\/{id}\/duplicate":{"post":{"tags":["Bots"],"summary":"Creer ou executer bots duplicate","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_duplicate","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotDuplicate"}}}}}},"\/api\/v1\/bots\/{id}\/identity":{"get":{"tags":["Bots - Configuration"],"summary":"Consulter la section identity du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_identity","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Configuration"],"summary":"Configurer la section identity du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_identity","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotIdentityWrite"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/BotIdentityWrite"}}}},"x-beai-file-fields":["avatar"]}},"\/api\/v1\/bots\/{id}\/prompting":{"get":{"tags":["Bots - Configuration"],"summary":"Consulter la section prompting du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_prompting","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Configuration"],"summary":"Configurer la section prompting du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_prompting","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotPromptingWrite"}}}}}},"\/api\/v1\/bots\/{id}\/runtime\/reregister":{"post":{"tags":["Bots"],"summary":"Creer ou executer bots reregister","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_reregister","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{id}\/sip":{"get":{"tags":["Bots - Configuration"],"summary":"Consulter la section sip du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_sip","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Configuration"],"summary":"Configurer la section sip du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_sip","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/SipWrite"}}}}}},"\/api\/v1\/bots\/{id}\/skills":{"get":{"tags":["Bots - Skills"],"summary":"Lister les skills du bot","description":"Retourne les 19 skills connus, leur etat d activation et le lien de leur sous-ressource de configuration. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skills_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{id}\/skills\/antispam":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill antispam","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_antispam","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill antispam","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_antispam","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/AntispamWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill antispam","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_antispam","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/auto-improvement":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill auto improvement","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_auto_improvement","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill auto improvement","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_auto_improvement","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/AutoImprovementWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill auto improvement","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_auto_improvement","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/automations":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill automations","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_automations","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill automations","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_automations","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillAutomationsWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill automations","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_automations","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/calendar":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill calendar","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill calendar","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillToggleWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill calendar","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/calendar-google":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill calendar google","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_google","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill calendar google","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_google","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillToggleWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill calendar google","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_google","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/calendar-microsoft":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill calendar microsoft","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_microsoft","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill calendar microsoft","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_microsoft","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillToggleWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill calendar microsoft","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_microsoft","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/calendar-progenda":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill calendar progenda","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_progenda","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill calendar progenda","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_progenda","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillToggleWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill calendar progenda","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_calendar_progenda","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/contact-callback":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill contact callback","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_contact_callback","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill contact callback","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_contact_callback","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillContactCallbackWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill contact callback","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_contact_callback","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/databases":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill databases","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_databases","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill databases","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_databases","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillDatabasesWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill databases","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_databases","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/documents":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill documents","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_documents","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill documents","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_documents","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillToggleWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill documents","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_documents","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/emails":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill emails","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_emails","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill emails","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_emails","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillEmailsWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill emails","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_emails","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/enreach":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill enreach","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_enreach","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill enreach","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_enreach","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillEnreachWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill enreach","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_enreach","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/hubspot":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill hubspot","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_hubspot","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill hubspot","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_hubspot","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillHubspotWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill hubspot","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_hubspot","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/mcp-tools":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill mcp tools","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_mcp_tools","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill mcp tools","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_mcp_tools","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillMcpWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill mcp tools","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_mcp_tools","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/odoo":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill odoo","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_odoo","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill odoo","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_odoo","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillOdooWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill odoo","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_odoo","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/odoo\/presets\/{version}":{"get":{"tags":["Bots - Skills"],"summary":"Lister les presets compatibles avec la version Odoo","description":"Retourne le catalogue utilise par l assistant du portail. Les champs et domaines sont adaptes a Odoo 18 ou 19; mobile n est jamais propose comme champ res.partner en Odoo 19. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_odoo_presets","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"version","in":"path","required":true,"description":"Valeur de chemin contrainte par la route.","schema":{"type":"string","enum":["18","19"]}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OdooPresetEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{id}\/skills\/outbound-calls":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill outbound calls","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_outbound_calls","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill outbound calls","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_outbound_calls","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillOutboundCallsWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill outbound calls","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_outbound_calls","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/recording":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill recording","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_recording","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill recording","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_recording","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillRecordingWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill recording","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_recording","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/sms":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill sms","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_sms","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill sms","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_sms","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillSmsWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill sms","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_sms","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/spreadsheets":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill spreadsheets","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_spreadsheets","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill spreadsheets","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_spreadsheets","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillSpreadsheetsWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill spreadsheets","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_spreadsheets","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/transfers":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill transfers","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_transfers","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill transfers","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_transfers","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillTransfersWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill transfers","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_transfers","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/whatsapp":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill whatsapp","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_whatsapp","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill whatsapp","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_whatsapp","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/WhatsAppConnectionWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill whatsapp","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_whatsapp","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/skills\/zendesk":{"get":{"tags":["Bots - Skills"],"summary":"Consulter le skill zendesk","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_zendesk","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Skills"],"summary":"Configurer le skill zendesk","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_zendesk","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotSkillZendeskWrite"}}}}},"delete":{"tags":["Bots - Skills"],"summary":"Desactiver le skill zendesk","description":"Cette sous-route ne transporte que la configuration du skill concerne. PATCH modifie les champs presents; DELETE desactive le skill sans supprimer ses donnees associees. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_skill_zendesk","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/bots\/{id}\/versions":{"get":{"tags":["Bots"],"summary":"Consulter bots versions","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_versions","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{id}\/versions\/{versionId}":{"get":{"tags":["Bots"],"summary":"Consulter bots version show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_version_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"versionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{id}\/versions\/{versionId}\/restore":{"post":{"tags":["Bots"],"summary":"Creer ou executer bots version restore","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_version_restore","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"versionId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/bots\/{id}\/voice":{"get":{"tags":["Bots - Configuration"],"summary":"Consulter la section voice du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_voice","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Bots - Configuration"],"summary":"Configurer la section voice du bot","description":"Cette sous-route evite de lire ou renvoyer la configuration complete du bot. PATCH ne modifie que les champs presents dans cette section. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bots_voice","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BotVoiceWrite"}}}}}},"\/api\/v1\/calendar-connections\/{id}":{"get":{"tags":["Calendriers"],"summary":"Consulter calendar connections show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Calendriers"],"summary":"Modifier calendar connections update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/CalendarConnectionUpdate"}}}}},"put":{"tags":["Calendriers"],"summary":"Modifier calendar connections update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/CalendarConnectionUpdate"}}}}},"delete":{"tags":["Calendriers"],"summary":"Supprimer ou revoquer calendar connections delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/calendar-connections\/{id}\/connect":{"get":{"tags":["Calendriers"],"summary":"Consulter calendar connections connect","description":"Retourne une URL interactive pour autoriser ou reconnecter Google, Microsoft 365 ou Progenda dans le navigateur. La reconnexion reutilise la meme ressource et conserve calendriers, permissions et prompts. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_connect","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/calendar-connections\/{id}\/refresh":{"post":{"tags":["Calendriers"],"summary":"Creer ou executer calendar connections refresh","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"calendar_connections_refresh","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"502":{"$ref":"#\/components\/responses\/BadGateway"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/CalendarRefresh"}}}}}},"\/api\/v1\/conversations":{"get":{"tags":["Conversations"],"summary":"Lister conversations index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"bot_id","in":"query","required":false,"description":"Bot","schema":{"type":"integer"}},{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}},{"name":"campaign_id","in":"query","required":false,"description":"Campagne sortante","schema":{"type":"integer"}},{"name":"channel","in":"query","required":false,"description":"Canal","schema":{"type":"string","enum":["phone_call","whatsapp_chat","whatsapp_voice_note","whatsapp_call"]}},{"name":"direction","in":"query","required":false,"description":"Sens entrant ou sortant","schema":{"type":"string","enum":["inbound","outbound"]}},{"name":"outbound_type","in":"query","required":false,"description":"Type d appel sortant","schema":{"type":"string","enum":["direct","callback","campaign"]}},{"name":"language","in":"query","required":false,"description":"Langue","schema":{"type":"string"}},{"name":"sentiment","in":"query","required":false,"description":"Sentiment detecte","schema":{"type":"string"}},{"name":"read","in":"query","required":false,"description":"Etat lu","schema":{"type":"boolean"}},{"name":"voicemail_detected","in":"query","required":false,"description":"Boite vocale detectee","schema":{"type":"boolean"}},{"name":"from","in":"query","required":false,"description":"Debut ISO 8601","schema":{"type":"string","format":"date-time"}},{"name":"to","in":"query","required":false,"description":"Fin ISO 8601","schema":{"type":"string","format":"date-time"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/conversations\/attachments\/{id}":{"get":{"tags":["Conversations"],"summary":"Consulter conversations attachment","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_attachment","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/conversations\/bulk\/read":{"post":{"tags":["Conversations"],"summary":"Creer ou executer conversations bulk read","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_bulk_read","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/BulkReadWrite"}}}}}},"\/api\/v1\/conversations\/{id}":{"get":{"tags":["Conversations"],"summary":"Consulter conversations show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/conversations\/{id}\/audio":{"get":{"tags":["Conversations"],"summary":"Consulter conversations audio","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_audio","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/conversations\/{id}\/read":{"put":{"tags":["Conversations"],"summary":"Modifier conversations read","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_read","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReadStateWrite"}}}}},"post":{"tags":["Conversations"],"summary":"Creer ou executer conversations read","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_read","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ReadStateWrite"}}}}}},"\/api\/v1\/conversations\/{id}\/sip-rtcp.pcap":{"get":{"tags":["Conversations"],"summary":"Consulter conversations pcap","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_pcap","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/conversations\/{id}\/transcript":{"get":{"tags":["Conversations"],"summary":"Consulter conversations transcript","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"conversations_transcript","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/credit-orders":{"get":{"tags":["Credit orders"],"summary":"Lister credit orders index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"credit_orders_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}},{"name":"status","in":"query","required":false,"description":"Statut","schema":{"type":"string"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/credit-orders\/{id}":{"get":{"tags":["Credit orders"],"summary":"Consulter credit orders show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"credit_orders_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/credit-orders\/{id}\/refresh":{"post":{"tags":["Credit orders"],"summary":"Creer ou executer credit orders refresh","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"credit_orders_refresh","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/credit-orders\/{id}\/ubl":{"get":{"tags":["Credit orders"],"summary":"Consulter credit orders ubl","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"credit_orders_ubl","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/credits":{"get":{"tags":["Credits"],"summary":"Lister credit summary","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"credit_summary","security":[{"bearerAuth":[]}],"parameters":[{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/credits\/recharge":{"post":{"tags":["Credits"],"summary":"Creer ou executer credit recharge","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"credit_recharge","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/CreditRecharge"}}}}}},"\/api\/v1\/database-tools\/discover":{"post":{"tags":["Outils bases de donnees"],"summary":"Creer ou executer bot operations database discover","description":"Teste une connexion et retourne les bases ou tables accessibles. Les secrets ne sont jamais retournes. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"bot_operations_database_discover","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"502":{"$ref":"#\/components\/responses\/BadGateway"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/DatabaseDiscoverWrite"}}}}}},"\/api\/v1\/documents":{"get":{"tags":["Documents"],"summary":"Lister documents index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"bot_id","in":"query","required":false,"description":"Bot","schema":{"type":"integer"}},{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}},{"name":"state","in":"query","required":false,"description":"Etat d indexation","schema":{"type":"string"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Documents"],"summary":"Creer ou executer documents create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_create","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/DocumentCreate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/DocumentCreate"}}}},"x-beai-file-fields":["file"]}},"\/api\/v1\/documents\/{id}":{"get":{"tags":["Documents"],"summary":"Consulter documents show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Documents"],"summary":"Modifier documents update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/DocumentUpdate"}}}}},"put":{"tags":["Documents"],"summary":"Modifier documents update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/DocumentUpdate"}}}}},"delete":{"tags":["Documents"],"summary":"Supprimer ou revoquer documents delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/documents\/{id}\/refresh":{"post":{"tags":["Documents"],"summary":"Creer ou executer documents refresh","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"documents_refresh","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/languages":{"get":{"tags":["Languages"],"summary":"Lister languages index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"languages_index","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/languages\/{id}":{"get":{"tags":["Languages"],"summary":"Consulter languages show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"languages_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/me":{"get":{"tags":["Compte"],"summary":"Lister me","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"me","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Compte"],"summary":"Modifier me update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"me_update","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/AccountWrite"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/AccountWrite"}}}},"x-beai-file-fields":["avatar"]},"put":{"tags":["Compte"],"summary":"Modifier me update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"me_update","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/AccountWrite"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/AccountWrite"}}}},"x-beai-file-fields":["avatar"]}},"\/api\/v1\/organisations":{"get":{"tags":["Organisations"],"summary":"Lister organisations index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"organisations_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"parent_id","in":"query","required":false,"description":"Organisation parente, 0 pour la racine","schema":{"type":"integer"}},{"name":"include_archived","in":"query","required":false,"description":"Inclure les organisations archivees","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/organisations\/{id}":{"get":{"tags":["Organisations"],"summary":"Consulter organisations show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"organisations_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Organisations"],"summary":"Modifier organisations update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"organisations_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OrganisationUpdate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/OrganisationUpdate"}}}},"x-beai-file-fields":["logo"]},"put":{"tags":["Organisations"],"summary":"Modifier organisations update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"organisations_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OrganisationUpdate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/OrganisationUpdate"}}}},"x-beai-file-fields":["logo"]}},"\/api\/v1\/organisations\/{id}\/subscription-credit":{"put":{"tags":["Organisations"],"summary":"Modifier organisations subscription activate","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"organisations_subscription_activate","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/SubscriptionCreditWrite"}}}}},"delete":{"tags":["Organisations"],"summary":"Supprimer ou revoquer organisations subscription stop","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"organisations_subscription_stop","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/organisations\/{organisationId}\/payment-method":{"get":{"tags":["Organisations"],"summary":"Consulter billing payment method show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"billing_payment_method_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"organisationId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"delete":{"tags":["Organisations"],"summary":"Supprimer ou revoquer billing payment method delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"billing_payment_method_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"organisationId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/organisations\/{organisationId}\/payment-method\/setup":{"post":{"tags":["Organisations"],"summary":"Creer ou executer billing payment method setup","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"billing_payment_method_setup","security":[{"bearerAuth":[]}],"parameters":[{"name":"organisationId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"delete":{"tags":["Organisations"],"summary":"Supprimer ou revoquer billing payment method setup cancel","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"billing_payment_method_setup_cancel","security":[{"bearerAuth":[]}],"parameters":[{"name":"organisationId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/outbound-campaigns":{"get":{"tags":["Campagnes sortantes"],"summary":"Lister outbound campaigns index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"status","in":"query","required":false,"description":"Statut","schema":{"type":"string","enum":["draft","pending","running","completed","cancelled"]}},{"name":"bot_id","in":"query","required":false,"description":"Bot","schema":{"type":"integer"}},{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Campagnes sortantes"],"summary":"Creer ou executer outbound campaigns create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_create","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignCreate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignCreate"}}}},"x-beai-file-fields":["file"]}},"\/api\/v1\/outbound-campaigns\/analyse":{"post":{"tags":["Campagnes sortantes"],"summary":"Analyser outbound campaigns analyse","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_analyse","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignAnalyse"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignAnalyse"}}}},"x-beai-file-fields":["file"]}},"\/api\/v1\/outbound-campaigns\/calls\/{id}":{"get":{"tags":["Campagnes sortantes"],"summary":"Consulter outbound campaigns call show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_call_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/outbound-campaigns\/{id}":{"get":{"tags":["Campagnes sortantes"],"summary":"Consulter outbound campaigns show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Campagnes sortantes"],"summary":"Modifier outbound campaigns update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignUpdate"}}}}},"put":{"tags":["Campagnes sortantes"],"summary":"Modifier outbound campaigns update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignUpdate"}}}}},"delete":{"tags":["Campagnes sortantes"],"summary":"Supprimer ou revoquer outbound campaigns delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/outbound-campaigns\/{id}\/cancel":{"post":{"tags":["Campagnes sortantes"],"summary":"Creer ou executer outbound campaigns cancel","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_cancel","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/outbound-campaigns\/{id}\/contacts":{"post":{"tags":["Campagnes sortantes"],"summary":"Creer ou executer outbound campaigns contact create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_contact_create","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignContactWrite"}}}}}},"\/api\/v1\/outbound-campaigns\/{id}\/contacts\/{callId}":{"patch":{"tags":["Campagnes sortantes"],"summary":"Modifier outbound campaigns contact update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_contact_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"callId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignContactWrite"}}}}},"put":{"tags":["Campagnes sortantes"],"summary":"Modifier outbound campaigns contact update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_contact_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"callId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignContactWrite"}}}}},"delete":{"tags":["Campagnes sortantes"],"summary":"Supprimer ou revoquer outbound campaigns contact delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_contact_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"callId","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/outbound-campaigns\/{id}\/duplicate":{"post":{"tags":["Campagnes sortantes"],"summary":"Creer ou executer outbound campaigns duplicate","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_duplicate","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignDuplicate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignDuplicate"}}}},"x-beai-file-fields":["file"]}},"\/api\/v1\/outbound-campaigns\/{id}\/start":{"post":{"tags":["Campagnes sortantes"],"summary":"Creer ou executer outbound campaigns start","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_start","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/outbound-campaigns\/{id}\/test-call":{"post":{"tags":["Campagnes sortantes"],"summary":"Creer ou executer outbound campaigns test call","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"outbound_campaigns_test_call","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/OutboundCampaignTestCall"}}}}}},"\/api\/v1\/runtime":{"get":{"tags":["Runtime"],"summary":"Lister runtime status","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"runtime_status","security":[{"bearerAuth":[]}],"parameters":[{"name":"bot_ids","in":"query","required":false,"description":"Identifiants de bots","schema":{"type":"array","items":{"type":"integer"}}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/runtime\/conversations\/{id}\/force-close":{"post":{"tags":["Runtime"],"summary":"Creer ou executer runtime force close","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"runtime_force_close","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/runtime\/conversations\/{id}\/guidance":{"post":{"tags":["Runtime"],"summary":"Creer ou executer runtime guidance","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"runtime_guidance","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/GuidanceWrite"}}}}}},"\/api\/v1\/tags":{"get":{"tags":["Tags"],"summary":"Lister tags index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"tags_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Tags"],"summary":"Creer ou executer tags create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"tags_create","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/TagCreate"}}}}}},"\/api\/v1\/tags\/{id}":{"get":{"tags":["Tags"],"summary":"Consulter tags show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"tags_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Tags"],"summary":"Modifier tags update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"tags_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/TagUpdate"}}}}},"put":{"tags":["Tags"],"summary":"Modifier tags update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"tags_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/TagUpdate"}}}}},"delete":{"tags":["Tags"],"summary":"Supprimer ou revoquer tags delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"tags_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/types":{"get":{"tags":["Types"],"summary":"Lister types index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"types_index","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/types\/{id}":{"get":{"tags":["Types"],"summary":"Consulter types show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"types_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}}},"\/api\/v1\/users":{"get":{"tags":["Users"],"summary":"Lister users index","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_index","security":[{"bearerAuth":[]}],"parameters":[{"name":"page","in":"query","required":false,"description":"Page, a partir de 1","schema":{"type":"integer"}},{"name":"limit","in":"query","required":false,"description":"Taille de page, maximum 100","schema":{"type":"integer"}},{"name":"search","in":"query","required":false,"description":"Recherche libre","schema":{"type":"string"}},{"name":"organisation_id","in":"query","required":false,"description":"Organisation","schema":{"type":"integer"}},{"name":"locked","in":"query","required":false,"description":"Comptes verrouilles uniquement","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"post":{"tags":["Users"],"summary":"Creer ou executer users create","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_create","security":[{"bearerAuth":[]}],"parameters":[],"responses":{"201":{"description":"Ressource creee","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":true,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/UserCreate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/UserCreate"}}}},"x-beai-file-fields":["avatar"]}},"\/api\/v1\/users\/{id}":{"get":{"tags":["Users"],"summary":"Consulter users show","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_show","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}}},"patch":{"tags":["Users"],"summary":"Modifier users update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/UserUpdate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/UserUpdate"}}}},"x-beai-file-fields":["avatar"]},"put":{"tags":["Users"],"summary":"Modifier users update","description":"Le perimetre de donnees et les droits sont ceux du compte connecte ou du proprietaire de la cle API. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_update","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"}},"requestBody":{"required":false,"description":"Le schema ci-dessous decrit tous les champs acceptes, leurs formats et leur caractere obligatoire.","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/UserUpdate"}},"multipart\/form-data":{"schema":{"$ref":"#\/components\/schemas\/UserUpdate"}}}},"x-beai-file-fields":["avatar"]},"delete":{"tags":["Users"],"summary":"Supprimer ou revoquer users delete","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_delete","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}},"\/api\/v1\/users\/{id}\/oauth\/{provider}":{"delete":{"tags":["Users"],"summary":"Supprimer ou revoquer users oauth remove","description":"Operation soumise aux memes protections, dependances et droits que la suppression dans le portail. Une ressource inaccessible est masquee par une reponse 404 lorsque cela evite une divulgation.","operationId":"users_oauth_remove","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"description":"Identifiant numerique de la ressource.","schema":{"type":"integer","pattern":"\\d+"}},{"name":"provider","in":"path","required":true,"description":"Valeur de chemin contrainte par la route.","schema":{"type":"string","enum":["google","microsoft"]}}],"responses":{"200":{"description":"Operation reussie","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ApiEnvelope"}}}},"400":{"$ref":"#\/components\/responses\/BadRequest"},"401":{"$ref":"#\/components\/responses\/Unauthorized"},"403":{"$ref":"#\/components\/responses\/Forbidden"},"404":{"$ref":"#\/components\/responses\/NotFound"},"409":{"$ref":"#\/components\/responses\/Conflict"},"422":{"$ref":"#\/components\/responses\/UnprocessableEntity"},"204":{"description":"Operation reussie sans contenu"}},"x-beai-dangerous":true}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"BeAI API key","description":"Token genere dans Mon compte \u003E Cles API. Le token complet est affiche une seule fois."}},"schemas":{"ApiEnvelope":{"type":"object","description":"Enveloppe standard pour une ressource ou une operation.","properties":{"data":{"description":"Ressource retournee. Sa forme depend de l operation."},"meta":{"type":"object","description":"Metadonnees de l operation.","additionalProperties":true}},"additionalProperties":false},"OdooPresetEnvelope":{"type":"object","description":"Catalogue de presets compatible avec la version Odoo demandee.","properties":{"data":{"$ref":"#\/components\/schemas\/OdooPresetCatalog","description":"Voir la definition detaillee OdooPresetCatalog."},"meta":{"type":"object","description":"Version et bot utilises pour filtrer le catalogue.","properties":{"bot_id":{"type":"integer","description":"Identifiant du bot.","minimum":1},"odoo_version":{"type":"string","description":"Version Odoo du catalogue.","enum":["18","19"]}},"additionalProperties":false,"required":["bot_id","odoo_version"]}},"additionalProperties":false,"required":["data","meta"]},"ClusterEnvelope":{"type":"object","description":"Enveloppe du statut du cluster.","properties":{"data":{"$ref":"#\/components\/schemas\/ClusterStatus","description":"Voir la definition detaillee ClusterStatus."},"meta":{"type":"object","description":"Metadonnees du statut.","additionalProperties":true}},"additionalProperties":false,"required":["data"]},"ClusterStatus":{"type":"object","description":"Etat HA et telephonique consolide du cluster.","properties":{"ok":{"type":"boolean","description":"Vrai lorsque la couche HA est saine."},"health":{"type":"string","description":"Sante HA uniquement. Les REGISTER et OPTIONS SIP individuels sont exclus.","enum":["healthy","degraded","critical","unavailable"]},"generated_at":{"type":["string","null"],"description":"Instant UTC de la mesure a convertir dans le fuseau du consommateur.","format":"date-time"},"source_node":{"type":"string","description":"Noeud ayant produit la mesure."},"primary_node":{"type":["string","null"],"description":"Noeud prefere pour les ressources stateful."},"stateful_primary":{"type":["string","null"],"description":"Noeud qui porte actuellement les ressources stateful."},"quorum":{"type":"boolean","description":"Presence du quorum Corosync\/Pacemaker."},"maintenance":{"type":"boolean","description":"Mode maintenance du cluster."},"stonith_enabled":{"type":"boolean","description":"Activation du fencing STONITH."},"active_calls":{"type":"integer","description":"Nombre total d appels actifs.","minimum":0},"nodes":{"type":"object","description":"Etat HA detaille par noeud.","additionalProperties":true},"resources":{"type":"object","description":"Etat des ressources Pacemaker.","additionalProperties":true},"drbd":{"type":"object","description":"Etat de replication DRBD.","additionalProperties":true},"runtimes":{"type":"object","description":"Etat des runtimes applicatifs.","additionalProperties":true},"telephony":{"$ref":"#\/components\/schemas\/ClusterTelephonyStatus","description":"Voir la definition detaillee ClusterTelephonyStatus."},"operations":{"type":"object","description":"Operations de recuperation disponibles.","properties":{"restartable_resources":{"type":"array","description":"Identifiants des services HA autorises au redemarrage individuel.","items":{"type":"string","description":"Identifiant Pacemaker."}},"runtime_restart":{"type":"boolean","description":"Le redemarrage cible d un runtime est disponible."},"emergency_runtime_restart":{"type":"boolean","description":"Le redemarrage force des runtimes est disponible."}},"additionalProperties":false,"required":["restartable_resources","runtime_restart","emergency_runtime_restart"]}},"additionalProperties":false,"required":["health","generated_at","telephony"]},"ClusterTelephonyStatus":{"type":"object","description":"Etat SIP separe de la sante HA.","properties":{"health":{"type":"string","description":"Sante telephonique consolidee. Les echecs SIP individuels ne degradent pas le cluster tant qu au moins un REGISTER et un OPTIONS fonctionnent; un runtime injoignable reste degradant.","enum":["healthy","degraded","critical","unavailable"]},"ok":{"type":"boolean","description":"Vrai lorsqu aucune panne SIP globale ni indisponibilite partielle de runtime n est detectee."},"registrations":{"$ref":"#\/components\/schemas\/ClusterTelephonyCounts","description":"Voir la definition detaillee ClusterTelephonyCounts."},"options":{"$ref":"#\/components\/schemas\/ClusterTelephonyCounts","description":"Voir la definition detaillee ClusterTelephonyCounts."},"nodes_with_issues":{"type":"array","description":"Noeuds presentant au moins une anomalie SIP individuelle, sans implication automatique sur la sante consolidee.","items":{"type":"string","description":"Identifiant du noeud."}},"nodes":{"type":"object","description":"Details SIP par noeud.","additionalProperties":true}},"additionalProperties":false,"required":["health","ok","registrations","options","nodes_with_issues","nodes"]},"ClusterTelephonyCounts":{"type":"object","description":"Compteurs de controles SIP.","properties":{"ok":{"type":"integer","description":"Nombre de controles reussis.","minimum":0},"total":{"type":"integer","description":"Nombre total de controles attendus.","minimum":0}},"additionalProperties":false,"required":["ok","total"]},"Problem":{"type":"object","description":"Erreur au format RFC 9457 problem details.","properties":{"type":{"type":"string","description":"URI identifiant le type de probleme.","format":"uri-reference"},"title":{"type":"string","description":"Titre court du probleme."},"status":{"type":"integer","description":"Code HTTP."},"detail":{"type":"string","description":"Explication lisible de l erreur."},"instance":{"type":"string","description":"URI de la requete concernee.","format":"uri-reference"}},"additionalProperties":false,"required":["title","status","detail"]},"Collection":{"type":"object","description":"Collection paginee.","properties":{"data":{"type":"array","description":"Ressources de la page courante.","items":[]},"meta":{"type":"object","description":"Informations de pagination.","properties":{"page":{"type":"integer","description":"Page courante, a partir de 1.","minimum":1},"limit":{"type":"integer","description":"Nombre maximal de lignes par page.","minimum":1,"maximum":100},"total":{"type":"integer","description":"Nombre total de ressources.","minimum":0},"pages":{"type":"integer","description":"Nombre total de pages.","minimum":0}},"additionalProperties":false}},"additionalProperties":false},"AccountWrite":{"type":"object","description":"Champs modifiables du compte connecte.","properties":{"display_name":{"type":["string","null"],"description":"Nom affiche dans le portail.","maxLength":255,"example":"Marie Dupont"},"preferred_locale":{"type":"string","description":"Langue de l interface.","enum":["fr","en"],"example":"fr"},"timezone":{"type":"string","description":"Fuseau horaire IANA utilise pour afficher les dates.","example":"Europe\/Brussels","maxLength":64},"appearance_mode":{"type":"string","description":"Theme visuel prefere.","enum":["light","dark","system"],"default":"system"},"email":{"type":"string","description":"Nouvelle adresse e-mail. Une confirmation est envoyee.","format":"email"},"password":{"type":"string","description":"Nouveau mot de passe.","format":"password","minLength":10,"writeOnly":true},"current_password":{"type":"string","description":"Mot de passe actuel, obligatoire si email ou password est modifie.","format":"password","writeOnly":true},"remove_avatar":{"type":"boolean","description":"Supprime l avatar actuel avant l eventuel nouvel upload.","default":false},"avatar":{"type":"string","description":"Nouvel avatar envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false,"example":{"display_name":"Marie Dupont","preferred_locale":"fr","timezone":"Europe\/Brussels","appearance_mode":"system"}},"UserWrite":{"type":"object","description":"Champs communs de creation et modification d un utilisateur.","properties":{"email":{"type":"string","description":"Adresse e-mail unique. Modifiable uniquement par la plateforme apres creation.","format":"email","maxLength":180},"display_name":{"type":["string","null"],"description":"Nom affiche.","maxLength":255},"password":{"type":"string","description":"Mot de passe en clair uniquement a l ecriture.","format":"password","minLength":10,"writeOnly":true},"current_password":{"type":"string","description":"Mot de passe actuel, requis pour un changement de mot de passe fait par le compte lui-meme.","format":"password","writeOnly":true},"organisation_id":{"type":"integer","description":"Organisation de rattachement, limitee au perimetre de l acteur.","minimum":1},"parent_id":{"type":["integer","null"],"description":"Utilisateur parent. Champ reserve a la plateforme; les autres creations prennent automatiquement l acteur comme parent.","minimum":1},"roles":{"type":"array","description":"Roles attribues. ROLE_PLATFORM_ADMIN et ROLE_ORGANISATION_OWNER sont reserves a la plateforme.","items":{"type":"string","description":"Role Symfony.","enum":["ROLE_ORGANISATION_USER","ROLE_ORGANISATION_MANAGER","ROLE_ORGANISATION_ADMIN","ROLE_ORGANISATION_OWNER","ROLE_PLATFORM_ADMIN"]},"uniqueItems":true},"tag_ids":{"type":"array","description":"Tags visibles a associer a l utilisateur.","items":{"type":"integer","description":"Identifiant de tag.","minimum":1},"uniqueItems":true},"preferred_locale":{"type":"string","description":"Langue de l interface.","enum":["fr","en"]},"timezone":{"type":"string","description":"Fuseau horaire IANA du compte. Les nouveaux bots en heritent par defaut.","example":"Europe\/Brussels","maxLength":64},"appearance_mode":{"type":"string","description":"Theme visuel.","enum":["light","dark","system"]},"locked":{"type":"boolean","description":"Verrouillage permanent du compte, reserve a la plateforme."},"remove_avatar":{"type":"boolean","description":"Supprime l avatar actuel.","default":false},"avatar":{"type":"string","description":"Avatar envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false},"UserCreate":{"description":"Creation d un utilisateur. email et password sont obligatoires.","allOf":[{"$ref":"#\/components\/schemas\/UserWrite","description":"Voir la definition detaillee UserWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["email","password"]}],"example":{"email":"marie.dupont@example.com","display_name":"Marie Dupont","password":"ChangeMe-2026!","organisation_id":12,"roles":["ROLE_ORGANISATION_USER"],"preferred_locale":"fr","timezone":"Europe\/Brussels"}},"UserUpdate":{"description":"Modification partielle d un utilisateur. Seuls les champs presents sont modifies.","allOf":[{"$ref":"#\/components\/schemas\/UserWrite","description":"Voir la definition detaillee UserWrite."}],"example":{"display_name":"Marie Dupont","preferred_locale":"fr","timezone":"Europe\/Brussels"}},"BillingAddress":{"type":"object","description":"Coordonnees de facturation.","properties":{"name":{"type":["string","null"],"description":"Nom legal ou commercial."},"email":{"type":["string","null"],"description":"Adresse de facturation.","format":"email"},"address_line_1":{"type":["string","null"],"description":"Premiere ligne d adresse."},"address_line_2":{"type":["string","null"],"description":"Deuxieme ligne d adresse."},"postal_code":{"type":["string","null"],"description":"Code postal.","maxLength":20},"city":{"type":["string","null"],"description":"Ville."},"country_code":{"type":["string","null"],"description":"Code pays ISO 3166-1 alpha-2.","pattern":"^[A-Z]{2}$","example":"BE"},"vat_number":{"type":["string","null"],"description":"Numero de TVA."}},"additionalProperties":false},"LowCreditAlert":{"type":"object","description":"Alerte e-mail de credit faible.","properties":{"enabled":{"type":"boolean","description":"Active l alerte.","default":true},"threshold":{"type":"number","description":"Solde en euros sous lequel l alerte est emise.","minimum":0,"default":30},"emails":{"type":"array","description":"Destinataires de l alerte.","items":{"type":"string","description":"Adresse e-mail.","format":"email"},"uniqueItems":true}},"additionalProperties":false},"AutoRecharge":{"type":"object","description":"Recharge automatique via le moyen de paiement enregistre.","properties":{"enabled":{"type":"boolean","description":"Active la recharge automatique."},"threshold":{"type":"number","description":"Solde en euros declenchant la recharge.","minimum":0},"credits":{"type":"number","description":"Montant en euros a recharger.","exclusiveMinimum":0}},"additionalProperties":false},"BillingRates":{"type":"object","description":"Tarifs factures par l organisation. Ils ne peuvent pas etre inferieurs aux tarifs du parent.","properties":{"models":{"type":"object","description":"Prix par minute indexes par identifiant de modele IA.","properties":[],"additionalProperties":{"type":"number","description":"Tarif en euros, superieur ou egal a zero.","minimum":0}},"features":{"type":"object","description":"Prix des fonctions additionnelles, par exemple recording ou auto_improvement.","properties":[],"additionalProperties":{"type":"number","description":"Tarif en euros, superieur ou egal a zero.","minimum":0}},"text":{"type":"object","description":"Prix des sessions et tokens texte, image, audio, video et cache.","properties":[],"additionalProperties":{"type":"number","description":"Tarif en euros, superieur ou egal a zero.","minimum":0}},"sms":{"type":"object","description":"Prix par SMS indexes par DEFAULT ou code pays ISO alpha-2.","propertyNames":{"pattern":"^(DEFAULT|[A-Z]{2})$"},"additionalProperties":{"type":"number","description":"Prix unitaire en euros.","minimum":0}}},"additionalProperties":false},"OrganisationWrite":{"type":"object","description":"Champs communs d une organisation.","properties":{"name":{"type":"string","description":"Nom de l organisation.","minLength":1,"maxLength":255},"parent_id":{"type":"integer","description":"Organisation parente accessible. Beone reste l unique racine.","minimum":1},"default_language_id":{"type":["integer","null"],"description":"Langue par defaut pour utilisateurs, suggestions et resumes.","minimum":1},"default_branding_id":{"type":["integer","null"],"description":"Branding appartenant a cette organisation.","minimum":1},"billing":{"$ref":"#\/components\/schemas\/BillingAddress","description":"Voir la definition detaillee BillingAddress."},"billing_name":{"type":["string","null"],"description":"Alias plat du champ billing.name."},"billing_email":{"type":["string","null"],"description":"Alias plat du champ billing.email.","format":"email"},"billing_address_line_1":{"type":["string","null"],"description":"Alias plat du champ billing.address_line_1."},"billing_address_line_2":{"type":["string","null"],"description":"Alias plat du champ billing.address_line_2."},"billing_postal_code":{"type":["string","null"],"description":"Alias plat du champ billing.postal_code."},"billing_city":{"type":["string","null"],"description":"Alias plat du champ billing.city."},"billing_country_code":{"type":["string","null"],"description":"Alias plat du champ billing.country_code.","pattern":"^[A-Z]{2}$"},"billing_vat_number":{"type":["string","null"],"description":"Alias plat du champ billing.vat_number."},"billing_rates":{"$ref":"#\/components\/schemas\/BillingRates","description":"Voir la definition detaillee BillingRates."},"low_credit_alert":{"$ref":"#\/components\/schemas\/LowCreditAlert","description":"Voir la definition detaillee LowCreditAlert."},"auto_recharge":{"$ref":"#\/components\/schemas\/AutoRecharge","description":"Voir la definition detaillee AutoRecharge."},"reseller":{"type":"boolean","description":"Transforme l organisation en revendeur. Reserve a la plateforme."},"whitelabel":{"type":"boolean","description":"Autorise le white-label. Reserve a la plateforme et force a false si reseller vaut false."},"beta_access_enabled":{"type":"boolean","description":"Autorise les fonctions beta. Reserve a la plateforme."},"reseller_bot_quota":{"type":"integer","description":"Nombre maximal de bots dans l organisation et ses enfants. Zero signifie sans limite. Modifiable par la plateforme ou le revendeur autorise.","minimum":0,"default":0},"reseller_child_organisation_quota":{"type":"integer","description":"Nombre maximal d organisations enfants dans l arborescence d un revendeur. Zero signifie sans limite.","minimum":0,"default":0},"direct_access_user_ids":{"type":"array","description":"Utilisateurs existants autorises a acceder directement a cette organisation exacte. Reserve aux administrateurs plateforme; aucun enfant n est inclus.","items":{"type":"integer","description":"Identifiant utilisateur.","minimum":1},"uniqueItems":true},"remove_logo":{"type":"boolean","description":"Supprime le logo actuel."},"logo":{"type":"string","description":"Logo envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false},"OrganisationCreate":{"description":"Creation d une organisation enfant. name est obligatoire; parent_id est optionnel et derive du compte lorsque absent.","allOf":[{"$ref":"#\/components\/schemas\/OrganisationWrite","description":"Voir la definition detaillee OrganisationWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["name"]}],"example":{"name":"Agence Bruxelles","parent_id":1,"low_credit_alert":{"enabled":true,"threshold":30,"emails":["billing@example.com"]}}},"OrganisationUpdate":{"description":"Modification partielle d une organisation.","allOf":[{"$ref":"#\/components\/schemas\/OrganisationWrite","description":"Voir la definition detaillee OrganisationWrite."}],"example":{"default_language_id":2,"reseller_bot_quota":25,"direct_access_user_ids":[7,12],"low_credit_alert":{"enabled":true,"threshold":25,"emails":["finance@example.com"]}}},"OrganisationArchive":{"type":"object","description":"Options d archivage plateforme.","properties":{"reason":{"type":"string","description":"Motif interne de l archivage.","maxLength":2000},"anonymize":{"type":"boolean","description":"Efface les donnees d identification et de facturation. Cette action est irreversible.","default":false}},"additionalProperties":false,"example":{"reason":"Fin de contrat","anonymize":false}},"CreditAdjustment":{"type":"object","description":"Ajustement manuel ou transfert de credit.","properties":{"amount":{"type":"number","description":"Montant en euros. Positif pour crediter, negatif pour debiter; zero est interdit.","not":{"const":0}},"description":{"type":"string","description":"Libelle du mouvement.","maxLength":255,"default":"Ajustement API"}},"additionalProperties":false,"required":["amount"],"example":{"amount":50,"description":"Geste commercial"}},"SubscriptionCreditWrite":{"type":"object","description":"Activation ou remplacement du credit mensuel.","properties":{"monthly_credits":{"type":"number","description":"Montant mensuel en euros.","exclusiveMinimum":0},"initial_credits":{"type":"number","description":"Solde initial en euros.","minimum":0},"next_reset_at":{"type":"string","description":"Date du prochain renouvellement, aujourd hui ou dans le futur.","format":"date-time"}},"additionalProperties":false,"required":["monthly_credits","initial_credits","next_reset_at"],"example":{"monthly_credits":500,"initial_credits":500,"next_reset_at":"2026-09-01T00:00:00+02:00"}},"CreditRecharge":{"type":"object","description":"amount_eur ou son alias amount est obligatoire.","properties":{"organisation_id":{"type":"integer","description":"Organisation a recharger. Omettre pour l organisation du compte.","minimum":1},"amount_eur":{"type":"number","description":"Montant a recharger en euros.","exclusiveMinimum":0},"amount":{"type":"number","description":"Alias de amount_eur.","exclusiveMinimum":0},"use_saved_method":{"type":"boolean","description":"Utilise le mandat enregistre; false retourne une URL de paiement.","default":true}},"additionalProperties":false,"anyOf":[{"title":"Montant principal","description":"Utiliser le champ amount_eur.","required":["amount_eur"]},{"title":"Alias historique","description":"Utiliser le champ amount.","required":["amount"]}],"example":{"organisation_id":12,"amount_eur":100,"use_saved_method":true}},"SipWrite":{"type":"object","description":"Configuration du point de terminaison SIP.","properties":{"number":{"type":"string","description":"Numero ou identifiant SIP du bot.","maxLength":255},"server":{"type":"string","description":"Adresse IP ou nom DNS du serveur SIP.","maxLength":255},"domain":{"type":"string","description":"Domaine SIP utilise dans les URI.","maxLength":255},"port":{"type":"integer","description":"Port SIP UDP.","minimum":1,"maximum":65535,"default":5060},"username":{"type":"string","description":"Identifiant d authentification SIP; vide pour utiliser le numero."},"password":{"type":"string","description":"Mot de passe SIP. Omettre ou envoyer [configured] pour conserver le secret actuel.","format":"password","writeOnly":true},"need_register":{"type":"boolean","description":"Active les REGISTER periodiques."},"register_on_dev":{"type":"boolean","description":"Reserve a la plateforme: enregistre ce bot sur le runtime de developpement."},"outbound_dtmf_enabled":{"type":"boolean","description":"Autorise le bot a envoyer des chiffres DTMF pendant un appel."},"use_number_as_from_user":{"type":"boolean","description":"Utilise number comme user de l en-tete SIP From."},"codecs":{"type":"array","description":"Codecs autorises, dans l ordre de preference.","items":{"type":"string","description":"Codec.","enum":["alaw","ulaw","g722","pcma","pcmu"]},"uniqueItems":true}},"additionalProperties":false},"SipCreate":{"description":"Configuration SIP requise a la creation d un bot.","allOf":[{"$ref":"#\/components\/schemas\/SipWrite","description":"Voir la definition detaillee SipWrite."},{"type":"object","description":"Champs SIP obligatoires a la creation.","properties":[],"additionalProperties":false,"required":["number","server","domain","port"]}]},"TurnDetectionWrite":{"type":"object","description":"Detection des tours de parole OpenAI Realtime.","properties":{"override_enabled":{"type":"boolean","description":"Utilise cette configuration au lieu des parametres systeme."},"type":{"type":"string","description":"Moteur de detection.","enum":["server_vad","semantic_vad"]},"threshold":{"type":"number","description":"Seuil audio pour server_vad.","minimum":0,"maximum":1},"prefix_padding_ms":{"type":"integer","description":"Audio conserve avant le debut detecte.","minimum":0,"maximum":2000},"silence_duration_ms":{"type":"integer","description":"Silence fermant le tour.","minimum":100,"maximum":5000},"idle_timeout_ms":{"type":["integer","null"],"description":"Relance apres silence prolonge; null desactive la relance.","minimum":5000},"eagerness":{"type":"string","description":"Rapidite de semantic_vad.","enum":["auto","low","medium","high"]},"create_response":{"type":"boolean","description":"Demande automatiquement une reponse a la fin du tour."},"interrupt_response":{"type":"boolean","description":"Interrompt la reponse lorsque l appelant reprend la parole."},"greeting_delay_ms":{"type":"integer","description":"Delai avant le premier message vocal.","minimum":0,"maximum":5000}},"additionalProperties":false},"GeminiLiveAdvancedWrite":{"type":"object","description":"Reglages avances Gemini Live.","properties":{"enabled":{"type":"boolean","description":"Active les valeurs specifiques au bot."},"start_sensitivity":{"type":"string","description":"Sensibilite de debut de parole.","enum":["high","low"]},"end_sensitivity":{"type":"string","description":"Sensibilite de fin de parole.","enum":["high","low"]},"prefix_padding_ms":{"type":"integer","description":"Audio conserve avant la parole.","minimum":0},"silence_duration_ms":{"type":"integer","description":"Silence fermant le tour.","minimum":0},"interrupt_response":{"type":"boolean","description":"Autorise l appelant a interrompre le bot."},"turn_coverage":{"type":"string","description":"Partie du flux audio couverte par la detection.","enum":["only_activity","all_input"]},"proactive_audio":{"type":"boolean","description":"Autorise Gemini a produire de l audio proactif."},"greeting_delay_ms":{"type":"integer","description":"Delai avant le greeting.","minimum":0}},"additionalProperties":false},"AutoImprovementWrite":{"type":"object","description":"Echantillonnage de l auto-amelioration.","properties":{"enabled":{"type":"boolean","description":"Active l analyse automatique."},"sample_rate":{"type":"integer","description":"Pourcentage de conversations analysees.","minimum":0,"maximum":100}},"additionalProperties":false},"TransferDestination":{"type":"object","description":"Destination de transfert autorisee.","properties":{"extension":{"type":"string","description":"Extension composee de 2 a 6 chiffres.","pattern":"^\\d{2,6}$"},"description":{"type":"string","description":"Situations dans lesquelles cette destination doit etre utilisee.","maxLength":300}},"additionalProperties":false,"required":["extension","description"]},"EmailDestination":{"type":"object","description":"Destinataire e-mail autorise.","properties":{"email":{"type":"string","description":"Adresse e-mail.","format":"email","maxLength":254},"description":{"type":"string","description":"Situations dans lesquelles envoyer cet e-mail.","maxLength":300}},"additionalProperties":false,"required":["email","description"]},"SmsDestination":{"type":"object","description":"Numero SMS autorise.","properties":{"number":{"type":"string","description":"Numero de telephone, idealement au format E.164.","pattern":"^[+0-9().\\s-]{6,30}$"},"description":{"type":"string","description":"Situations dans lesquelles envoyer un SMS.","maxLength":300}},"additionalProperties":false,"required":["number","description"]},"OutboundCallDestination":{"type":"object","description":"Numero que le bot peut appeler immediatement.","properties":{"number":{"type":"string","description":"Numero de telephone, idealement au format E.164.","pattern":"^[+0-9().\\s-]{6,30}$"},"description":{"type":"string","description":"Situations et raison autorisant cet appel.","maxLength":500}},"additionalProperties":false,"required":["number","description"]},"SummaryEmailWrite":{"type":"object","description":"Envoi automatique du resume de conversation.","properties":{"enabled":{"type":"boolean","description":"Active l envoi."},"recipients":{"type":"array","description":"Adresses recevant les resumes.","items":{"type":"string","description":"Adresse e-mail.","format":"email"},"uniqueItems":true},"attach_recording":{"type":"boolean","description":"Joint l enregistrement lorsqu il existe."}},"additionalProperties":false},"McpToolWrite":{"type":"object","description":"Serveur MCP expose au bot.","properties":{"enabled":{"type":"boolean","description":"Active ce serveur."},"name":{"type":"string","description":"Nom affiche au modele.","maxLength":120},"url":{"type":"string","description":"URL HTTP(S) du serveur MCP.","format":"uri","maxLength":500},"description":{"type":"string","description":"Capacites exposees par le serveur."},"usage":{"type":"string","description":"Quand et comment le bot doit utiliser ces outils, sur demande ou selon un workflow configure, y compris systematiquement au debut, pendant ou a la fin d un appel."}},"additionalProperties":false},"DatabaseTableWrite":{"type":"object","description":"Table exposee au bot et operations permises.","properties":{"enabled":{"type":"boolean","description":"Expose cette table."},"name":{"type":"string","description":"Nom exact de la table.","maxLength":180},"description":{"type":"string","description":"Contenu et usage fonctionnel de la table."},"canRead":{"type":"boolean","description":"Autorise SELECT."},"canCreate":{"type":"boolean","description":"Autorise INSERT."},"canUpdate":{"type":"boolean","description":"Autorise UPDATE."},"canDelete":{"type":"boolean","description":"Autorise DELETE."}},"additionalProperties":false},"DatabaseToolWrite":{"type":"object","description":"Connexion a une base de donnees controlee.","properties":{"enabled":{"type":"boolean","description":"Active cette connexion."},"name":{"type":"string","description":"Nom fonctionnel de la connexion.","maxLength":120},"type":{"type":"string","description":"Moteur SQL.","enum":["mysql","mariadb","postgresql","sqlserver","sqlite"]},"host":{"type":"string","description":"Hote, obligatoire sauf pour SQLite.","maxLength":255},"port":{"type":["integer","null"],"description":"Port TCP; null utilise le port par defaut du moteur.","minimum":1,"maximum":65535},"database":{"type":"string","description":"Nom de base ou chemin SQLite.","maxLength":180},"username":{"type":"string","description":"Utilisateur SQL en lecture ou avec droits limites.","maxLength":180},"password":{"type":"string","description":"Mot de passe. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"usage":{"type":"string","description":"Instructions donnees au modele: demande utilisateur ou workflow configure, y compris une action systematique au debut, pendant ou a la fin d un appel."},"tables":{"type":"array","description":"Tables explicitement exposees.","items":{"$ref":"#\/components\/schemas\/DatabaseTableWrite","description":"Voir la definition detaillee DatabaseTableWrite."}}},"additionalProperties":false},"AutomationToolWrite":{"type":"object","description":"Webhook ou automatisation externe.","properties":{"enabled":{"type":"boolean","description":"Active cette automatisation."},"name":{"type":"string","description":"Nom de l action visible par le modele.","maxLength":120},"url":{"type":"string","description":"URL HTTP(S) appelee.","format":"uri","maxLength":500},"method":{"type":"string","description":"Methode HTTP.","enum":["GET","POST"]},"secretHeaderName":{"type":"string","description":"Nom optionnel de l en-tete d authentification.","maxLength":120},"secretHeaderValue":{"type":"string","description":"Valeur secrete de l en-tete. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"description":{"type":"string","description":"But fonctionnel de l automatisation."},"usage":{"type":"string","description":"Conditions d appel: demande utilisateur ou workflow configure, y compris un declenchement systematique au debut, pendant ou a la fin d un appel."},"payloadSchema":{"type":"string","description":"Objet JSON encode sous forme de chaine. Chaque cle decrit un champ avec label, type, required et example; les objets imbriques suivent la meme structure.","contentMediaType":"application\/json","example":"{\u0022customer_name\u0022:{\u0022label\u0022:\u0022Nom du client\u0022,\u0022type\u0022:\u0022string\u0022,\u0022required\u0022:true,\u0022example\u0022:\u0022Marie Dupont\u0022}}"}},"additionalProperties":false,"required":["payloadSchema"]},"OdooActionWrite":{"type":"object","description":"Action Odoo exposee au modele.","properties":{"enabled":{"type":"boolean","description":"Active l action.","default":true},"name":{"type":"string","description":"Nom unique de l action dans cette connexion."},"description":{"type":"string","description":"Explication fonctionnelle pour le modele."},"model":{"type":"string","description":"Modele Odoo, par exemple res.partner ou helpdesk.ticket.","pattern":"^[A-Za-z_][A-Za-z0-9_.]*$"},"method":{"type":"string","description":"Methode Odoo.","pattern":"^[A-Za-z_][A-Za-z0-9_]*$","examples":["search_read","create","write","unlink","copy"]},"fields":{"type":"array","description":"Champs retournes par read ou search_read.","items":{"type":"string","description":"Nom technique de champ."}},"writableFields":{"type":"array","description":"Champs acceptes pour create, write ou copy.","items":{"type":"string","description":"Nom technique de champ."}},"domainFields":{"type":"array","description":"Champs autorises dans un domaine search_read.","items":{"type":"string","description":"Nom technique de champ."}},"maxRecords":{"type":"integer","description":"Limite maximale de resultats.","minimum":1,"maximum":100,"default":20},"inputSchema":{"type":"object","description":"Schema des arguments presentes au modele.","additionalProperties":true},"fixedArguments":{"type":"array","description":"Arguments positionnels toujours ajoutes.","items":[]},"fixedKeywordArguments":{"type":"object","description":"Arguments nommes toujours ajoutes.","additionalProperties":true}},"additionalProperties":false,"required":["name","model","method"]},"OdooPreset":{"type":"object","description":"Preset fonctionnel pret a ajouter a une connexion Odoo.","properties":{"label":{"type":"string","description":"Nom affiche dans l assistant."},"description":{"type":"string","description":"Cas d usage couvert."},"category":{"type":"string","description":"Categorie de classement.","enum":["customer","planning","sales","operations","internal"]},"module":{"type":"string","description":"Module Odoo principalement utilise."},"access":{"type":"string","description":"Niveau d acces du preset.","enum":["read","write","mixed"]},"icon":{"type":"string","description":"Classe d icone utilisee par le portail."},"recommended":{"type":"boolean","description":"Indique un preset conseille pour un secretariat telephonique."},"actions":{"type":"array","description":"Actions versionnees a placer dans connections[].actions.","items":{"$ref":"#\/components\/schemas\/OdooActionWrite","description":"Voir la definition detaillee OdooActionWrite."}}},"additionalProperties":false,"required":["label","description","category","module","access","recommended","actions"]},"OdooPresetCatalog":{"type":"object","description":"Presets indexes par leur code stable. En Odoo 18, res.partner utilise mobile. En Odoo 19, mobile est retire des lectures et ecritures, tandis que les recherches telephoniques utilisent phone_mobile_search.","properties":[],"additionalProperties":{"$ref":"#\/components\/schemas\/OdooPreset","description":"Voir la definition detaillee OdooPreset."}},"OdooConnectionWrite":{"type":"object","description":"Connexion Odoo 18 XML-RPC ou Odoo 19 JSON-2.","properties":{"connectionKey":{"type":"string","description":"Identifiant stable de 32 caracteres hexadecimaux. Omettre lors de la creation.","pattern":"^[a-f0-9]{32}$","readOnly":true},"enabled":{"type":"boolean","description":"Active cette connexion."},"name":{"type":"string","description":"Nom de connexion utilise par le modele.","maxLength":120},"version":{"type":"string","description":"Version du protocole Odoo.","enum":["18","19"]},"baseUrl":{"type":"string","description":"URL racine HTTPS de l instance Odoo.","format":"uri","pattern":"^https:\/\/","maxLength":500},"database":{"type":"string","description":"Base Odoo. Obligatoire en v18; optionnelle en v19 si l instance n en expose qu une.","maxLength":180},"username":{"type":"string","description":"Login Odoo. Obligatoire en v18.","maxLength":255},"apiKey":{"type":"string","description":"Cle API Odoo. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"usage":{"type":"string","description":"Contexte general d utilisation de cette connexion."},"callerIdentificationEnabled":{"type":"boolean","description":"Active le preset fixe res.partner qui traduit le numero appelant en nom."},"actions":{"type":"array","description":"Actions configurables exposees au bot.","items":{"$ref":"#\/components\/schemas\/OdooActionWrite","description":"Voir la definition detaillee OdooActionWrite."}},"actionsJson":{"type":"string","description":"Alternative compatible GUI: tableau actions encode en JSON. Preferer actions dans l API.","contentMediaType":"application\/json"}},"additionalProperties":false,"required":["version","baseUrl"]},"SpreadsheetColumnWrite":{"type":"object","description":"Colonne du tableur exposee au modele avec un contrat de saisie strict.","properties":{"key":{"type":"string","description":"Cle technique utilisee dans les arguments du tool call.","pattern":"^[a-z][a-z0-9_]{0,63}$","example":"caller_number"},"label":{"type":"string","description":"Libelle lisible presente dans la configuration.","maxLength":120,"example":"Numero appelant"},"description":{"type":"string","description":"Sens metier de la colonne communique au modele.","maxLength":500,"example":"Numero de telephone du contact au format international."},"type":{"type":"string","description":"Type controle avant ecriture dans le tableur.","enum":["string","number","boolean","date","datetime","phone","email"],"default":"string"},"required":{"type":"boolean","description":"Rend la valeur obligatoire lors de append_row.","default":false}},"additionalProperties":false,"required":["key","label","type","required"]},"SpreadsheetConnectionWrite":{"type":"object","description":"Connexion securisee vers un Google Sheet ou un tableau Microsoft Excel.","properties":{"connection_key":{"type":"string","description":"Identifiant stable de 32 caracteres hexadecimaux. Omettre pour une nouvelle connexion et renvoyer la valeur recue lors des modifications suivantes.","pattern":"^[a-f0-9]{32}$"},"enabled":{"type":"boolean","description":"Active cette connexion. Une connexion active doit avoir au moins une action et une colonne.","default":true},"name":{"type":"string","description":"Nom unique presente au modele pour selectionner le bon tableur.","minLength":1,"maxLength":120,"example":"Journal des appels"},"provider":{"type":"string","description":"Fournisseur du tableur.","enum":["google_sheets","microsoft_excel"]},"oauth_connection_id":{"type":["integer","null"],"description":"Identifiant d une connexion Google ou Microsoft 365 deja rattachee au meme bot. Obligatoire sauf si Google utilise service_account_json.","minimum":1},"service_account_json":{"type":"string","description":"JSON complet d un compte de service Google. Alternative a oauth_connection_id pour Google uniquement; omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true,"contentMediaType":"application\/json"},"spreadsheet_id":{"type":"string","description":"Identifiant Google situe entre \/d\/ et \/edit dans l URL. Obligatoire pour google_sheets.","pattern":"^[A-Za-z0-9_-]{8,255}$","maxLength":255},"drive_item_id":{"type":"string","description":"Identifiant Microsoft Graph du fichier Excel dans OneDrive. Obligatoire pour microsoft_excel.","maxLength":255},"sheet_name":{"type":"string","description":"Nom de l onglet Google. Utilise pour construire la plage quand range est vide.","maxLength":120,"default":"Sheet1"},"table_name":{"type":"string","description":"Nom exact du tableau structure Excel. Obligatoire pour microsoft_excel.","maxLength":120},"range":{"type":"string","description":"Plage A1 Google optionnelle, par exemple Appels!A:F. Quand elle est vide, la plage est calculee depuis sheet_name et columns.","maxLength":120},"usage":{"type":"string","description":"Instructions metier indiquant au modele quand lire ou ecrire dans ce tableur.","maxLength":1500},"actions":{"type":"array","description":"Operations explicitement autorisees.","items":{"type":"string","description":"Action tableur.","enum":["read_rows","find_rows","append_row","update_row"]},"uniqueItems":true,"minItems":1},"columns":{"type":"array","description":"Colonnes accessibles dans leur ordre physique.","items":{"$ref":"#\/components\/schemas\/SpreadsheetColumnWrite","description":"Voir la definition detaillee SpreadsheetColumnWrite."},"minItems":1}},"additionalProperties":false,"required":["name","provider","actions","columns"],"example":{"enabled":true,"name":"Journal des appels","provider":"google_sheets","oauth_connection_id":14,"spreadsheet_id":"1AbCdEfGhIjKlMnOpQrStUvWxYz","sheet_name":"Appels","usage":"Ajouter une ligne apres chaque appel termine.","actions":["read_rows","append_row"],"columns":[{"key":"caller_number","label":"Numero appelant","description":"Numero international du contact.","type":"phone","required":true},{"key":"summary","label":"Resume","description":"Resume concis de l appel.","type":"string","required":true}]}},"WhatsAppConnectionWrite":{"type":"object","description":"Connexion WhatsApp Cloud API du bot.","properties":{"enabled":{"type":"boolean","description":"Active la connexion."},"phone_number_id":{"type":["string","null"],"description":"Identifiant Meta du numero."},"display_phone_number":{"type":["string","null"],"description":"Numero affiche."},"waba_id":{"type":["string","null"],"description":"Identifiant du compte WhatsApp Business."},"graph_api_version":{"type":["string","null"],"description":"Version Graph API, par exemple v23.0."},"access_token":{"type":"string","description":"Jeton permanent Meta. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"app_secret":{"type":"string","description":"Secret de l application Meta. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true}},"additionalProperties":false},"AntispamWrite":{"type":"object","description":"Protection telephonique et conversationnelle.","properties":{"enabled":{"type":"boolean","description":"Active le skill antispam."},"anonymous_call_enabled":{"type":"boolean","description":"Traite les appels anonymes."},"anonymous_call_action":{"type":"string","description":"Action pour un appel anonyme.","enum":["message_hangup","message_transfer","redirect","reject"]},"anonymous_call_redirect":{"type":["string","null"],"description":"Destination SIP pour une action redirect ou message_transfer."},"repeat_call_enabled":{"type":"boolean","description":"Limite les appels repetes."},"repeat_call_max_calls":{"type":"integer","description":"Nombre maximal d appels dans la fenetre.","minimum":1},"repeat_call_window_minutes":{"type":"integer","description":"Fenetre glissante en minutes.","minimum":1},"auto_blacklist_enabled":{"type":"boolean","description":"Ajoute automatiquement les abus a la liste noire."},"blacklisted_numbers":{"type":"array","description":"Numeros toujours bloques.","items":{"type":"string","description":"Numero de telephone."}},"whitelisted_numbers":{"type":"array","description":"Numeros toujours autorises.","items":{"type":"string","description":"Numero de telephone."}},"blocked_call_action":{"type":"string","description":"Action appliquee aux numeros bloques.","enum":["message_hangup","message_transfer","redirect","reject"]},"blocked_call_redirect":{"type":["string","null"],"description":"Destination SIP de redirection."},"conversation_guard_enabled":{"type":"boolean","description":"Active la detection d abus dans la conversation."},"conversation_guard_max_warnings":{"type":"integer","description":"Nombre d avertissements avant action.","minimum":0},"conversation_guard_prompt":{"type":["string","null"],"description":"Consignes additionnelles de moderation."},"inactivity_timeout_enabled":{"type":"boolean","description":"Relance a mi-delai puis termine les appels sans activite vocale detectee."},"inactivity_timeout_seconds":{"type":"integer","description":"Le delai demarre a la fin de la parole du bot et se rearme au debut de la parole caller. La relance de mi-delai ne rearme pas le compteur et le RTP silencieux est ignore.","minimum":5}},"additionalProperties":false},"CalendarItemWrite":{"type":"object","description":"Calendrier distant selectionne et droits accordes au bot.","properties":{"id":{"type":"string","description":"Identifiant distant du calendrier."},"enabled":{"type":"boolean","description":"Selectionne ce calendrier."},"prompt":{"type":"string","description":"Consignes d utilisation propres a ce calendrier."},"canRead":{"type":"boolean","description":"Autorise la lecture des disponibilites et evenements."},"canCreate":{"type":"boolean","description":"Autorise la creation d evenements."},"canUpdate":{"type":"boolean","description":"Autorise la modification d evenements."},"canDelete":{"type":"boolean","description":"Autorise la suppression d evenements."}},"additionalProperties":false,"required":["id"]},"CalendarConnectionWrite":{"type":"object","description":"Connexion a un fournisseur de calendrier.","properties":{"provider":{"type":"string","description":"Fournisseur. Il ne peut plus etre modifie apres creation.","enum":["google","microsoft_365","progenda"]},"name":{"type":"string","description":"Nom affiche de la connexion."},"account_email":{"type":["string","null"],"description":"Compte distant. Obligatoire pour Progenda.","format":"email"},"enabled":{"type":"boolean","description":"Active la connexion.","default":true},"access_token":{"type":"string","description":"Jeton d acces. Obligatoire pour Progenda; pour Google\/M365, utiliser plutot connect_url.","format":"password","writeOnly":true},"refresh_token":{"type":"string","description":"Jeton de renouvellement. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"token_expires_at":{"type":["string","null"],"description":"Expiration du jeton.","format":"date-time"},"scopes":{"type":"array","description":"Scopes OAuth accordes.","items":{"type":"string","description":"Scope fournisseur."}},"selected_calendars":{"type":"array","description":"Calendriers distants exposes au bot.","items":{"$ref":"#\/components\/schemas\/CalendarItemWrite","description":"Voir la definition detaillee CalendarItemWrite."}},"connection_status":{"type":"string","description":"Etat OAuth calcule. reconnect_required, error ou expired imposent une reconnexion interactive sans perdre la configuration.","enum":["connected","disconnected","expired","error","reconnect_required"],"readOnly":true},"reconnect_required":{"type":"boolean","description":"Indique qu il faut reutiliser la route connect sur cette meme connexion. Les calendriers, permissions et prompts sont conserves.","readOnly":true},"token_refresh_error_code":{"type":["string","null"],"description":"Code fournisseur assaini du dernier echec, sans message ni jeton sensible.","readOnly":true},"token_refresh_error_at":{"type":["string","null"],"description":"Date du dernier echec de renouvellement.","format":"date-time","readOnly":true},"token_refresh_last_attempt_at":{"type":["string","null"],"description":"Date de la derniere tentative automatique.","format":"date-time","readOnly":true},"token_refresh_last_success_at":{"type":["string","null"],"description":"Date du dernier renouvellement reussi.","format":"date-time","readOnly":true}},"additionalProperties":false},"CalendarConnectionCreate":{"description":"Creation d une connexion. provider est obligatoire. Pour Progenda, account_email et access_token sont egalement obligatoires.","allOf":[{"$ref":"#\/components\/schemas\/CalendarConnectionWrite","description":"Voir la definition detaillee CalendarConnectionWrite."},{"type":"object","description":"Contraintes communes de creation.","properties":[],"additionalProperties":false,"required":["provider"]},{"description":"Contrainte conditionnelle Progenda.","if":{"properties":{"provider":{"const":"progenda"}},"required":["provider"]},"then":{"description":"Lorsque provider vaut progenda, account_email et access_token sont obligatoires.","required":["account_email","access_token"]}}],"example":{"provider":"progenda","name":"Agenda principal","account_email":"agenda@example.com","access_token":"secret","enabled":true}},"CalendarConnectionUpdate":{"description":"Modification partielle. provider est en lecture seule apres creation.","allOf":[{"$ref":"#\/components\/schemas\/CalendarConnectionWrite","description":"Voir la definition detaillee CalendarConnectionWrite."}],"example":{"enabled":true,"selected_calendars":[{"id":"1033152","enabled":true,"prompt":"Agenda consultations","canRead":true,"canCreate":true,"canUpdate":false,"canDelete":false}]}},"CalendarRefresh":{"type":"object","description":"Identifiants necessaires a la decouverte Progenda. Pour Google et Microsoft 365, le corps peut etre vide.","properties":{"progenda_calendar_id":{"type":["string","null"],"description":"Identifiant du calendrier Progenda."},"progenda_center_id":{"type":["string","null"],"description":"Identifiant du centre Progenda."}},"additionalProperties":false,"example":{"progenda_calendar_id":"1033152","progenda_center_id":"1018670"}},"BotIdentityWrite":{"type":"object","description":"Identite, rattachement et presentation du bot. Les autres reglages utilisent leurs sous-routes dediees.","properties":{"name":{"type":"string","description":"Nom affiche du bot.","minLength":1,"maxLength":255},"organisation_id":{"type":"integer","description":"Organisation proprietaire, dans le perimetre de l acteur.","minimum":1},"owner_id":{"type":"integer","description":"Utilisateur proprietaire appartenant a la meme organisation.","minimum":1},"type_id":{"type":"integer","description":"Type fonctionnel du bot.","minimum":1},"tag_ids":{"type":"array","description":"Tags visibles associes au bot.","items":{"type":"integer","description":"Identifiant de tag.","minimum":1},"uniqueItems":true},"reachable_via":{"type":"string","description":"Libelle du canal ou du numero par lequel le bot est joignable.","minLength":1},"remove_avatar":{"type":"boolean","description":"Supprime l avatar actuel avant l eventuel nouvel upload."},"avatar":{"type":"string","description":"Nouvel avatar envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false,"example":{"name":"Accueil Bruxelles","type_id":1,"reachable_via":"SIP 1001","tag_ids":[3,7]}},"BotPromptingWrite":{"type":"object","description":"Comportement conversationnel, contexte et langue du bot.","properties":{"temperament":{"type":"string","description":"Prompt metier et comportemental principal.","minLength":1},"greeting_message":{"type":["string","null"],"description":"Message d accueil; null laisse le runtime utiliser son comportement par defaut."},"extra_infos":{"type":["string","null"],"description":"Contexte libre additionnel injecte dans le prompt."},"default_lang":{"type":"string","description":"Code de langue vocale, par exemple fr_be ou fr_fr.","pattern":"^[a-z]{2,3}(?:_[a-z0-9]{2,8})?$"},"timezone":{"type":"string","description":"Fuseau horaire IANA utilise par les outils de date, calendrier et rappel.","example":"Europe\/Brussels","maxLength":64}},"additionalProperties":false,"example":{"temperament":"Professionnel, concis et chaleureux.","greeting_message":"Bonjour, comment puis-je vous aider ?","default_lang":"fr_be","timezone":"Europe\/Brussels"}},"BotVoiceWrite":{"type":"object","description":"Modele IA, voix et detection des tours de parole.","properties":{"ai_model":{"type":"string","description":"Identifiant exact du modele disponible dans le catalogue BeAI.","minLength":1,"enum":["gemini-3.1-flash-live-preview","gemini-live-2.5-flash-native-audio","gpt-realtime-2.1","gpt-realtime-2.1-mini"]},"voice":{"type":"string","description":"Identifiant de voix accepte par le modele IA. Les profils beai-openai-santa-elder et beai-gemini-santa-elder sont experimentaux, reserves aux administrateurs plateforme et compatibles uniquement avec leur fournisseur respectif.","minLength":1,"x-platform-admin-only-values":["beai-openai-santa-elder","beai-gemini-santa-elder"]},"speech_speed":{"type":"number","description":"Vitesse de parole.","minimum":0.25,"maximum":1.5},"turn_detection":{"$ref":"#\/components\/schemas\/TurnDetectionWrite","description":"Voir la definition detaillee TurnDetectionWrite."},"gemini_live_advanced":{"oneOf":[{"$ref":"#\/components\/schemas\/GeminiLiveAdvancedWrite","description":"Voir la definition detaillee GeminiLiveAdvancedWrite."},{"type":"null"}],"description":"Reglages avances Gemini Live; null supprime la surcharge du bot."}},"additionalProperties":false,"example":{"ai_model":"gpt-realtime-2.1","voice":"cedar","speech_speed":1}},"BotConversationWrite":{"type":"object","description":"Options generales appliquees aux conversations.","properties":{"test_mode":{"type":"boolean","description":"Utilise le generateur RTP local sans consommation IA."},"auto_mark_conversations_read":{"type":"boolean","description":"Marque automatiquement les nouvelles conversations comme lues."}},"additionalProperties":false,"example":{"test_mode":false,"auto_mark_conversations_read":false}},"BotSkillToggleWrite":{"type":"object","description":"Activation ou desactivation d un skill dont les ressources sont gerees par une API dediee.","properties":{"enabled":{"type":"boolean","description":"Active le skill. DELETE sur la sous-route le desactive sans supprimer ses donnees."}},"additionalProperties":false,"example":{"enabled":true}},"BotSkillTransfersWrite":{"type":"object","description":"Configuration du skill de transfert SIP.","properties":{"enabled":{"type":"boolean","description":"Active le skill de transfert."},"destinations":{"type":"array","description":"Destinations autorisees.","items":{"$ref":"#\/components\/schemas\/TransferDestination","description":"Voir la definition detaillee TransferDestination."}}},"additionalProperties":false,"example":{"enabled":true,"destinations":[{"extension":"200","description":"Support technique"}]}},"BotSkillEmailsWrite":{"type":"object","description":"Configuration des e-mails emis par le bot et des resumes automatiques.","properties":{"enabled":{"type":"boolean","description":"Active le skill e-mail."},"destinations":{"type":"array","description":"Destinataires que le bot peut choisir pendant un appel.","items":{"$ref":"#\/components\/schemas\/EmailDestination","description":"Voir la definition detaillee EmailDestination."}},"summary_email":{"$ref":"#\/components\/schemas\/SummaryEmailWrite","description":"Voir la definition detaillee SummaryEmailWrite."}},"additionalProperties":false,"example":{"enabled":true,"destinations":[{"email":"support@example.com","description":"Demandes de support"}],"summary_email":{"enabled":true,"recipients":["qualite@example.com"],"attach_recording":false}}},"BotSkillSmsWrite":{"type":"object","description":"Configuration des SMS emis par le bot.","properties":{"enabled":{"type":"boolean","description":"Active le skill SMS."},"destinations":{"type":"array","description":"Numeros predetermines autorises.","items":{"$ref":"#\/components\/schemas\/SmsDestination","description":"Voir la definition detaillee SmsDestination."}},"allow_any_number":{"type":"boolean","description":"Autorise un numero communique pendant l appel."},"allow_any_number_description":{"type":["string","null"],"description":"Situations dans lesquelles un numero libre peut etre utilise."}},"additionalProperties":false,"example":{"enabled":true,"destinations":[{"number":"+32470123456","description":"Astreinte"}],"allow_any_number":false}},"BotSkillOutboundCallsWrite":{"type":"object","description":"Configuration des appels sortants immediats.","properties":{"enabled":{"type":"boolean","description":"Active le skill d appel sortant."},"destinations":{"type":"array","description":"Numeros et situations autorises.","items":{"$ref":"#\/components\/schemas\/OutboundCallDestination","description":"Voir la definition detaillee OutboundCallDestination."}}},"additionalProperties":false,"example":{"enabled":true,"destinations":[{"number":"+3221234567","description":"Contacter le service de garde"}]}},"BotSkillContactCallbackWrite":{"type":"object","description":"Configuration des rappels planifies du contact.","properties":{"enabled":{"type":"boolean","description":"Active le skill de rappel."},"allow_alternate_number":{"type":"boolean","description":"Autorise le contact a demander un rappel vers un autre numero."}},"additionalProperties":false,"example":{"enabled":true,"allow_alternate_number":true}},"BotSkillRecordingWrite":{"type":"object","description":"Configuration de l enregistrement des appels.","properties":{"enabled":{"type":"boolean","description":"Enregistre les appels traites par le bot."},"notify_caller":{"type":"boolean","description":"Annonce l enregistrement a l appelant."}},"additionalProperties":false,"example":{"enabled":true,"notify_caller":true}},"BotSkillEnreachWrite":{"type":"object","description":"Connexion Enreach UP utilisee pour le contexte appelant et les transferts.","properties":{"enabled":{"type":"boolean","description":"Active l integration Enreach UP."},"host":{"type":["string","null"],"description":"URL ou hote du service Enreach UP."},"username":{"type":["string","null"],"description":"Identifiant du compte Enreach UP."},"password":{"type":"string","description":"Mot de passe. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true}},"additionalProperties":false,"example":{"enabled":true,"host":"https:\/\/up.example.com","username":"beai"}},"BotSkillMcpWrite":{"type":"object","description":"Serveurs MCP exposes au bot.","properties":{"enabled":{"type":"boolean","description":"Active le skill MCP."},"tools":{"type":"array","description":"Serveurs MCP autorises.","items":{"$ref":"#\/components\/schemas\/McpToolWrite","description":"Voir la definition detaillee McpToolWrite."}}},"additionalProperties":false},"BotSkillDatabasesWrite":{"type":"object","description":"Connexions SQL exposees au bot.","properties":{"enabled":{"type":"boolean","description":"Active le skill bases de donnees."},"connections":{"type":"array","description":"Connexions et tables autorisees.","items":{"$ref":"#\/components\/schemas\/DatabaseToolWrite","description":"Voir la definition detaillee DatabaseToolWrite."}}},"additionalProperties":false},"BotSkillAutomationsWrite":{"type":"object","description":"Webhooks et automatisations exposes au bot.","properties":{"enabled":{"type":"boolean","description":"Active le skill automatisations."},"tools":{"type":"array","description":"Automatisations disponibles.","items":{"$ref":"#\/components\/schemas\/AutomationToolWrite","description":"Voir la definition detaillee AutomationToolWrite."}}},"additionalProperties":false},"BotSkillOdooWrite":{"type":"object","description":"Connexions et actions Odoo exposees au bot.","properties":{"enabled":{"type":"boolean","description":"Active le skill Odoo."},"connections":{"type":"array","description":"Connexions Odoo 18 ou 19.","items":{"$ref":"#\/components\/schemas\/OdooConnectionWrite","description":"Voir la definition detaillee OdooConnectionWrite."}}},"additionalProperties":false},"BotSkillHubspotWrite":{"type":"object","description":"Configuration HubSpot limitee aux operations explicitement autorisees.","properties":{"enabled":{"type":"boolean","description":"Active le skill. Si true, access_token doit etre configure et actions ne peut pas etre vide."},"name":{"type":"string","description":"Nom fonctionnel de la connexion.","maxLength":120,"default":"HubSpot"},"access_token":{"type":"string","description":"Jeton d application privee HubSpot. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"usage":{"type":"string","description":"Instructions metier donnees au modele.","maxLength":1500},"actions":{"type":"array","description":"Actions CRM autorisees.","items":{"type":"string","description":"Action HubSpot.","enum":["lookup_contact","create_contact","create_ticket","create_deal"]},"uniqueItems":true},"ticket_pipeline":{"type":"string","description":"Identifiant interne du pipeline de tickets. Requis avec create_ticket.","maxLength":120},"ticket_stage":{"type":"string","description":"Identifiant interne de l etape initiale du ticket. Requis avec create_ticket.","maxLength":120},"deal_pipeline":{"type":"string","description":"Identifiant interne du pipeline commercial. Requis avec create_deal.","maxLength":120},"deal_stage":{"type":"string","description":"Identifiant interne de l etape initiale de l opportunite. Requis avec create_deal.","maxLength":120}},"additionalProperties":false,"example":{"enabled":true,"name":"HubSpot principal","access_token":"pat-...","usage":"Identifier les appelants et creer les demandes commerciales confirmees.","actions":["lookup_contact","create_contact","create_deal"],"deal_pipeline":"default","deal_stage":"appointmentscheduled"}},"BotSkillZendeskWrite":{"type":"object","description":"Configuration Zendesk limitee aux operations explicitement autorisees.","properties":{"enabled":{"type":"boolean","description":"Active le skill. Si true, subdomain, email, api_token et au moins une action sont requis."},"name":{"type":"string","description":"Nom fonctionnel de la connexion.","maxLength":120,"default":"Zendesk"},"subdomain":{"type":"string","description":"Sous-domaine avant .zendesk.com.","pattern":"^[A-Za-z0-9][A-Za-z0-9-]{0,62}$","example":"beone"},"email":{"type":"string","description":"E-mail du compte utilise avec le jeton API.","format":"email","maxLength":255},"api_token":{"type":"string","description":"Jeton API Zendesk. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"usage":{"type":"string","description":"Instructions metier donnees au modele.","maxLength":1500},"actions":{"type":"array","description":"Actions de support autorisees.","items":{"type":"string","description":"Action Zendesk.","enum":["lookup_user","search_tickets","create_ticket","add_comment","update_status"]},"uniqueItems":true},"default_priority":{"type":"string","description":"Priorite appliquee aux nouveaux tickets quand le modele n en fournit pas.","enum":["low","normal","high","urgent"],"default":"normal"}},"additionalProperties":false,"example":{"enabled":true,"name":"Support","subdomain":"beone","email":"support@example.com","api_token":"...","usage":"Consulter puis creer un ticket lorsque la demande requiert un suivi.","actions":["lookup_user","search_tickets","create_ticket"],"default_priority":"normal"}},"BotSkillSpreadsheetsWrite":{"type":"object","description":"Connexions Google Sheets et Microsoft Excel exposees au bot.","properties":{"enabled":{"type":"boolean","description":"Active le skill. DELETE le desactive en conservant les connexions."},"connections":{"type":"array","description":"Liste complete des tableurs autorises.","items":{"$ref":"#\/components\/schemas\/SpreadsheetConnectionWrite","description":"Voir la definition detaillee SpreadsheetConnectionWrite."}}},"additionalProperties":false},"BotCreate":{"type":"object","description":"Creation minimale d un bot. Configurez ensuite chaque section et skill via les liens retournes dans la reponse.","properties":{"name":{"type":"string","description":"Nom affiche du bot.","minLength":1,"maxLength":255},"organisation_id":{"type":"integer","description":"Organisation proprietaire. Omettre pour utiliser celle du compte.","minimum":1},"owner_id":{"type":"integer","description":"Utilisateur proprietaire de la meme organisation.","minimum":1},"type_id":{"type":"integer","description":"Type fonctionnel du bot.","minimum":1},"tag_ids":{"type":"array","description":"Tags visibles associes au bot.","items":{"type":"integer","description":"Identifiant de tag.","minimum":1},"uniqueItems":true},"temperament":{"type":"string","description":"Prompt metier initial.","minLength":1},"greeting_message":{"type":["string","null"],"description":"Message d accueil initial."},"extra_infos":{"type":["string","null"],"description":"Contexte initial optionnel."},"default_lang":{"type":"string","description":"Code langue vocal.","pattern":"^[a-z]{2,3}(?:_[a-z0-9]{2,8})?$"},"timezone":{"type":"string","description":"Fuseau horaire IANA. Omettre pour heriter de celui du compte createur.","example":"Europe\/Brussels","maxLength":64},"voice":{"type":"string","description":"Identifiant de voix.","minLength":1},"speech_speed":{"type":"number","description":"Vitesse de parole initiale.","minimum":0.25,"maximum":1.5},"ai_model":{"type":"string","description":"Modele IA initial.","minLength":1,"enum":["gemini-3.1-flash-live-preview","gemini-live-2.5-flash-native-audio","gpt-realtime-2.1","gpt-realtime-2.1-mini"]},"reachable_via":{"type":"string","description":"Libelle du canal joignable.","minLength":1},"sip":{"$ref":"#\/components\/schemas\/SipCreate","description":"Voir la definition detaillee SipCreate."},"test_mode":{"type":"boolean","description":"Utilise le generateur RTP local."},"auto_mark_conversations_read":{"type":"boolean","description":"Marque automatiquement les conversations comme lues."},"avatar":{"type":"string","description":"Avatar initial en multipart\/form-data.","format":"binary"}},"additionalProperties":false,"required":["name","type_id","temperament","default_lang","voice","ai_model","reachable_via","sip"],"example":{"name":"Accueil","type_id":1,"temperament":"Professionnel et chaleureux.","default_lang":"fr_be","timezone":"Europe\/Brussels","voice":"cedar","ai_model":"gemini-live-2.5-flash-native-audio","reachable_via":"SIP","sip":{"number":"1001","server":"sip.example.com","domain":"example.com","port":5060,"need_register":true,"codecs":["alaw","ulaw"]}}},"BotDuplicate":{"type":"object","description":"Surcharges appliquees a la copie du bot.","properties":{"name":{"type":"string","description":"Nom de la copie. Un nom est genere lorsque le champ est absent."},"sip":{"type":"object","description":"Surcharge SIP de la copie.","properties":{"number":{"type":"string","description":"Numero SIP unique de la copie. Une valeur est generee lorsque le champ est absent."}},"additionalProperties":false}},"additionalProperties":false,"example":{"name":"Accueil - test","sip":{"number":"1001-test"}}},"BotTemplateWrite":{"type":"object","description":"Configuration d un template de bot. Les connexions, secrets et calendriers ne sont jamais conserves dans un template.","properties":{"source_bot_id":{"type":"integer","description":"Bot existant utilise comme base avant application des autres champs. En creation, ce champ remplace le couple name et type_id.","minimum":1},"name":{"type":"string","description":"Nom du template. Obligatoire en creation lorsque source_bot_id est absent.","minLength":1,"maxLength":255},"description":{"type":"string","description":"Description affichee dans le catalogue de templates."},"type_id":{"type":"integer","description":"Type du bot genere. Obligatoire en creation lorsque source_bot_id est absent.","minimum":1},"temperament":{"type":"string","description":"Prompt metier du template."},"greeting_message":{"type":["string","null"],"description":"Message d accueil propose."},"extra_infos":{"type":["string","null"],"description":"Contexte additionnel propose."},"default_lang":{"type":"string","description":"Code langue propose.","pattern":"^[a-z]{2,3}(?:_[a-z0-9]{2,8})?$"},"voice":{"type":"string","description":"Identifiant de voix propose."},"speech_speed":{"type":"number","description":"Vitesse de parole proposee.","minimum":0.25,"maximum":1.5},"ai_model":{"type":"string","description":"Modele IA propose.","enum":["gemini-3.1-flash-live-preview","gemini-live-2.5-flash-native-audio","gpt-realtime-2.1","gpt-realtime-2.1-mini"]},"reachable_via":{"type":"string","description":"Libelle du canal ou du numero propose."},"enabled_skills":{"type":"array","description":"Skills proposes, hors connexions non supportees par les templates.","items":{"type":"string","description":"Code de skill."}},"recording":{"type":"boolean","description":"Active l enregistrement sur les bots crees depuis ce template."},"notify_recording":{"type":"boolean","description":"Annonce l enregistrement."},"auto_mark_conversations_read":{"type":"boolean","description":"Marque automatiquement les conversations comme lues."},"allowed_transfers":{"type":"array","description":"Destinations de transfert proposees.","items":{"$ref":"#\/components\/schemas\/TransferDestination","description":"Voir la definition detaillee TransferDestination."}},"allowed_emails":{"type":"array","description":"Destinataires e-mail proposes.","items":{"$ref":"#\/components\/schemas\/EmailDestination","description":"Voir la definition detaillee EmailDestination."}},"allowed_sms":{"type":"array","description":"Destinations SMS proposees.","items":{"$ref":"#\/components\/schemas\/SmsDestination","description":"Voir la definition detaillee SmsDestination."}},"allowed_outbound_calls":{"type":"array","description":"Destinations d appels sortants proposees.","items":{"$ref":"#\/components\/schemas\/OutboundCallDestination","description":"Voir la definition detaillee OutboundCallDestination."}},"summary_email":{"$ref":"#\/components\/schemas\/SummaryEmailWrite","description":"Voir la definition detaillee SummaryEmailWrite."},"antispam":{"$ref":"#\/components\/schemas\/AntispamWrite","description":"Voir la definition detaillee AntispamWrite."},"enabled":{"type":"boolean","description":"Rend le template selectionnable."},"scope":{"type":"string","description":"Portee du template. global est reserve a la plateforme.","enum":["organisation","global"]},"organisation_id":{"type":"integer","description":"Organisation proprietaire lorsque scope vaut organisation.","minimum":1},"shared_with_children":{"type":"boolean","description":"Partage le template avec les organisations descendantes."}},"additionalProperties":false},"BotTemplateCreate":{"description":"Creation d un template. Fournir source_bot_id, ou fournir ensemble name et type_id. Les autres champs surchargent les valeurs issues du bot source.","allOf":[{"$ref":"#\/components\/schemas\/BotTemplateWrite","description":"Voir la definition detaillee BotTemplateWrite."},{"description":"Choix de la source du template.","anyOf":[{"title":"Depuis un bot","description":"Copie un bot accessible.","required":["source_bot_id"]},{"title":"Configuration directe","description":"Cree le template sans bot source.","required":["name","type_id"]}]}],"example":{"name":"Accueil standard","description":"Accueil generaliste","type_id":1,"scope":"organisation","enabled":true}},"BotTemplateUpdate":{"description":"Modification partielle d un template.","allOf":[{"$ref":"#\/components\/schemas\/BotTemplateWrite","description":"Voir la definition detaillee BotTemplateWrite."}]},"DocumentCreate":{"type":"object","description":"bot_id est obligatoire. Fournir exactement file ou url\/source_url.","properties":{"bot_id":{"type":"integer","description":"Bot auquel rattacher le document.","minimum":1},"name":{"type":"string","description":"Nom affiche. S il est absent, il est derive du fichier ou de l URL."},"url":{"type":"string","description":"URL HTTP(S) a indexer.","format":"uri"},"source_url":{"type":"string","description":"Alias de url.","format":"uri"},"auto_refresh_delay":{"type":["integer","null"],"description":"Frequence de reindexation automatique en secondes; null desactive.","minimum":1},"file":{"type":"string","description":"Fichier envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false,"required":["bot_id"],"oneOf":[{"title":"Fichier","description":"Importer un fichier multipart.","required":["file"]},{"title":"URL","description":"Indexer une URL HTTP(S).","anyOf":[{"description":"Champ URL principal.","required":["url"]},{"description":"Alias historique de URL.","required":["source_url"]}]}],"example":{"bot_id":42,"name":"Conditions generales","url":"https:\/\/example.com\/conditions.pdf","auto_refresh_delay":86400}},"DocumentUpdate":{"type":"object","description":"Modification des metadonnees d un document deja indexe.","properties":{"name":{"type":"string","description":"Nouveau nom affiche.","minLength":1},"auto_refresh_delay":{"type":["integer","null"],"description":"Frequence de reindexation en secondes; null desactive.","minimum":1}},"additionalProperties":false,"example":{"name":"Conditions generales 2026","auto_refresh_delay":86400}},"OutboundCampaignContact":{"type":"object","description":"phone ou number est obligatoire. Toute autre cle est transmise telle quelle comme variable metier au bot.","properties":{"phone":{"type":"string","description":"Numero a appeler.","pattern":"^[+0-9().\\s-]{6,30}$"},"number":{"type":"string","description":"Alias de phone.","pattern":"^[+0-9().\\s-]{6,30}$"},"name":{"type":"string","description":"Nom du contact, transmis au bot et conserve sur l appel."}},"additionalProperties":true,"anyOf":[{"title":"Numero principal","description":"Utiliser phone.","required":["phone"]},{"title":"Alias du numero","description":"Utiliser number.","required":["number"]}]},"OutboundCampaignContactWrite":{"type":"object","description":"phone ou number est obligatoire a la creation. Lors d une modification, les champs omis conservent leur valeur.","properties":{"phone":{"type":"string","description":"Numero a appeler, normalise en E.164 par BeAI.","pattern":"^[+0-9().\\s-]{6,30}$"},"number":{"type":"string","description":"Alias de phone.","pattern":"^[+0-9().\\s-]{6,30}$"},"name":{"type":["string","null"],"description":"Nom facultatif du contact."},"fields":{"type":"object","description":"Valeurs des colonnes mappees de la campagne, indexees par cle de colonne.","additionalProperties":{"type":"string","description":"Valeur transmise au bot."}}},"additionalProperties":false,"anyOf":[{"required":["phone"]},{"required":["number"]}],"example":{"phone":"+32470123456","name":"Marie Dupont","fields":{"amount":"125,40 EUR","invoice":"INV\/2026\/0042"}}},"OutboundCampaignTestCall":{"type":"object","description":"Programme un appel d essai immediat sans modifier la progression de la campagne.","properties":{"phone":{"type":"string","description":"Numero de test a appeler.","pattern":"^[+0-9().\\s-]{6,30}$"},"number":{"type":"string","description":"Alias de phone.","pattern":"^[+0-9().\\s-]{6,30}$"},"name":{"type":["string","null"],"description":"Nom fictif ou reel utilise pendant le test."},"fields":{"type":"object","description":"Valeurs de test pour chaque colonne mappee.","additionalProperties":{"type":"string","description":"Valeur de test transmise au bot."}}},"additionalProperties":false,"anyOf":[{"required":["phone"]},{"required":["number"]}],"example":{"phone":"+32470123456","name":"Test interne","fields":{"amount":"125,40 EUR"}}},"OutboundCampaignAnalyse":{"type":"object","description":"Analyse la structure d un fichier Excel ou CSV avant creation.","properties":{"file":{"type":"string","description":"Fichier Excel .xlsx\/.xls ou CSV envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false,"required":["file"]},"OutboundCampaignWrite":{"type":"object","description":"Champs communs d une campagne sortante.","properties":{"name":{"type":"string","description":"Nom de la campagne.","minLength":1,"maxLength":255},"bot_id":{"type":"integer","description":"Bot charge d executer les appels.","minimum":1},"prompt":{"type":"string","description":"Objectif et consignes specifiques de la campagne.","minLength":1},"schedule":{"type":"boolean","description":"Place la campagne en attente pour scheduled_at. false la conserve en brouillon.","default":false},"scheduled_at":{"type":["string","null"],"description":"Date de lancement. Obligatoire lorsque schedule vaut true.","format":"date-time"},"phone_column":{"type":"string","description":"Nom de la colonne contenant les numeros dans le fichier importe."},"column_mapping":{"type":"object","description":"Description fonctionnelle de chaque colonne transmise au bot.","additionalProperties":{"type":"string","description":"Consigne associee a la colonne."}},"contacts":{"type":"array","description":"Contacts fournis directement en JSON a la place du fichier.","items":{"$ref":"#\/components\/schemas\/OutboundCampaignContact","description":"Voir la definition detaillee OutboundCampaignContact."},"minItems":1},"max_concurrent_calls":{"type":"integer","description":"Nombre maximal d appels simultanes pour cette campagne. Le plafond serveur reste prioritaire.","minimum":1,"maximum":100,"default":1},"call_interval_seconds":{"type":"integer","description":"Delai minimal entre deux demarrages d appels de cette campagne.","minimum":0,"maximum":3600,"default":0},"file":{"type":"string","description":"Fichier Excel ou CSV envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false},"OutboundCampaignCreate":{"description":"Creation d une campagne. name, bot_id et prompt sont obligatoires. Fournir soit file avec phone_column, soit contacts.","allOf":[{"$ref":"#\/components\/schemas\/OutboundCampaignWrite","description":"Voir la definition detaillee OutboundCampaignWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["name","bot_id","prompt"]},{"description":"Source des contacts de la campagne.","anyOf":[{"title":"Fichier importe","description":"Importer un fichier et indiquer sa colonne telephone.","required":["file","phone_column"]},{"title":"Contacts JSON","description":"Fournir directement la liste contacts.","required":["contacts"]}]}],"example":{"name":"Rappels factures juillet","bot_id":42,"prompt":"Rappeler le paiement en retard.","schedule":true,"scheduled_at":"2026-08-10T09:00:00+02:00","contacts":[{"phone":"+32470123456","data":{"customer_name":"Marie Dupont","amount":125.4}}]}},"OutboundCampaignDuplicate":{"description":"Duplique les consignes et limites d une campagne, puis importe obligatoirement une nouvelle liste de contacts. Tous les champs communs sont optionnels et heritent de la campagne source.","allOf":[{"$ref":"#\/components\/schemas\/OutboundCampaignWrite","description":"Voir la definition detaillee OutboundCampaignWrite."},{"anyOf":[{"required":["file","phone_column"]},{"required":["contacts"]}]}],"example":{"name":"Rappels factures aout","contacts":[{"phone":"+32470123456","name":"Marie Dupont","amount":"125,40 EUR"}]}},"OutboundCampaignUpdate":{"type":"object","description":"Modification partielle d une campagne encore modifiable.","properties":{"name":{"type":"string","description":"Nouveau nom.","minLength":1,"maxLength":255},"prompt":{"type":"string","description":"Nouvelles consignes.","minLength":1},"schedule":{"type":"boolean","description":"Passe la campagne en attente lorsque true."},"scheduled_at":{"type":["string","null"],"description":"Nouvelle date de lancement.","format":"date-time"},"max_concurrent_calls":{"type":"integer","description":"Nouveau maximum simultane, limite par le plafond serveur.","minimum":1,"maximum":100},"call_interval_seconds":{"type":"integer","description":"Nouveau delai minimal entre deux departs.","minimum":0,"maximum":3600}},"additionalProperties":false,"example":{"schedule":true,"scheduled_at":"2026-08-10T09:00:00+02:00"}},"ReadStateWrite":{"type":"object","description":"Modifie l etat lu d une ressource.","properties":{"read":{"type":"boolean","description":"true marque comme lu; false remet comme non lu.","default":true}},"additionalProperties":false,"example":{"read":true}},"BulkReadWrite":{"type":"object","description":"Modifie l etat lu de plusieurs ressources.","properties":{"ids":{"type":"array","description":"Identifiants a traiter.","items":{"type":"integer","description":"Identifiant de ressource.","minimum":1},"minItems":1,"uniqueItems":true},"read":{"type":"boolean","description":"true marque comme lu; false remet comme non lu.","default":true}},"additionalProperties":false,"required":["ids"],"example":{"ids":[12,13],"read":true}},"IdList":{"type":"object","description":"Selection de plusieurs ressources.","properties":{"ids":{"type":"array","description":"Identifiants a traiter.","items":{"type":"integer","description":"Identifiant de ressource.","minimum":1},"minItems":1,"uniqueItems":true}},"additionalProperties":false,"required":["ids"],"example":{"ids":[12,13]}},"GuidanceWrite":{"type":"object","description":"message ou text est obligatoire.","properties":{"message":{"type":"string","description":"Instruction a appliquer. L alias text est egalement accepte.","minLength":1},"text":{"type":"string","description":"Alias de message.","minLength":1}},"additionalProperties":false,"anyOf":[{"title":"Message principal","description":"Utiliser message.","required":["message"]},{"title":"Alias texte","description":"Utiliser text.","required":["text"]}],"example":{"message":"Proposez un rendez-vous demain matin."}},"AdminChatMessageWrite":{"type":"object","description":"Message envoye a l assistant de configuration du bot.","properties":{"message":{"type":"string","description":"Question ou instruction de configuration.","minLength":1}},"additionalProperties":false,"required":["message"],"example":{"message":"Rendez le message d accueil plus concis."}},"DatabaseDiscoverWrite":{"type":"object","description":"Teste une connexion SQL et decouvre les bases ou tables accessibles.","properties":{"type":{"type":"string","description":"Moteur SQL.","enum":["mysql","mariadb","postgresql","sqlserver","sqlite"]},"host":{"type":"string","description":"Hote. Obligatoire sauf pour SQLite."},"port":{"type":["integer","null"],"description":"Port TCP; null utilise la valeur par defaut.","minimum":1,"maximum":65535},"database":{"type":"string","description":"Nom de base ou chemin SQLite. Une valeur vide liste les bases accessibles lorsque le moteur le permet."},"username":{"type":"string","description":"Utilisateur SQL."},"password":{"type":"string","description":"Mot de passe. Peut etre omis avec bot_id pour reutiliser un secret deja configure.","format":"password","writeOnly":true},"bot_id":{"type":"integer","description":"Bot dont une connexion configuree peut fournir le mot de passe.","minimum":1},"name":{"type":"string","description":"Nom de la connexion a retrouver dans le bot lorsque bot_id est fourni."}},"additionalProperties":false,"required":["type"],"allOf":[{"description":"host est obligatoire pour tous les moteurs sauf SQLite.","if":{"properties":{"type":{"not":{"const":"sqlite"}}},"required":["type"]},"then":{"description":"Lorsque type est different de sqlite, host est obligatoire.","required":["host"]}}],"example":{"type":"postgresql","host":"db.internal","port":5432,"database":"crm","username":"beai_reader","password":"secret"}},"ClusterAction":{"type":"object","description":"Action d administration du cluster HA.","properties":{"action":{"type":"string","description":"Action a executer.","enum":["standby","online","takeover","promote","failback","clear","maintenance_on","maintenance_off","cleanup","restart_runtime","restart_resource","emergency_restart_runtimes"]},"node":{"type":["string","null"],"description":"Noeud cible. Obligatoire pour standby, online, takeover, promote et restart_runtime."},"resource":{"type":["string","null"],"description":"Identifiant Pacemaker du service. Obligatoire pour restart_resource et limite a la liste retournee par operations.restartable_resources."},"temporary_for":{"type":["string","null"],"description":"Duree du standby temporaire.","pattern":"^[1-9][0-9]*(s|m|h|d)$","example":"30m"},"allow_active_calls":{"type":"boolean","description":"Autorise explicitement une action malgre des appels actifs.","default":false},"confirmation":{"type":"string","description":"CLUSTER pour les actions normales; URGENCE pour emergency_restart_runtimes.","enum":["CLUSTER","URGENCE"]}},"additionalProperties":false,"required":["action","confirmation"],"allOf":[{"if":{"properties":{"action":{"enum":["standby","online","takeover","promote","restart_runtime"]}}},"then":{"required":["node"]}},{"if":{"properties":{"action":{"const":"restart_resource"}}},"then":{"required":["resource"]}},{"if":{"properties":{"action":{"const":"emergency_restart_runtimes"}}},"then":{"properties":{"confirmation":{"const":"URGENCE"}}}}],"examples":[{"action":"restart_runtime","node":"beai-dev2","allow_active_calls":false,"confirmation":"CLUSTER"},{"action":"restart_resource","resource":"p_rag","allow_active_calls":false,"confirmation":"CLUSTER"},{"action":"emergency_restart_runtimes","confirmation":"URGENCE"}]},"PaymentFtpWrite":{"type":"object","description":"Depot FTP des factures.","properties":{"host":{"type":["string","null"],"description":"Serveur FTP ou FTPS."},"directory":{"type":["string","null"],"description":"Repertoire distant."},"username":{"type":["string","null"],"description":"Utilisateur FTP."},"password":{"type":"string","description":"Mot de passe FTP. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true}},"additionalProperties":false},"PaymentSellerWrite":{"type":"object","description":"Coordonnees de l emetteur de factures.","properties":{"name":{"type":["string","null"],"description":"Nom legal."},"address_line_1":{"type":["string","null"],"description":"Adresse."},"postal_code":{"type":["string","null"],"description":"Code postal."},"city":{"type":["string","null"],"description":"Ville."},"country_code":{"type":["string","null"],"description":"Code pays ISO 3166-1 alpha-2.","pattern":"^[A-Z]{2}$"},"vat_number":{"type":["string","null"],"description":"Numero de TVA."}},"additionalProperties":false},"PaymentConfigurationWrite":{"type":"object","description":"Configuration de paiement et de facturation d une plateforme ou d un revendeur.","properties":{"enabled":{"type":"boolean","description":"Active la facturation automatique."},"invoice_code":{"type":"string","description":"Prefixe ou code des factures.","maxLength":5},"invoice_product_code":{"type":["string","null"],"description":"Reference article vendeur placee dans chaque ligne UBL (BT-155).","maxLength":64,"example":"AITOK"},"invoice_delivery_mode":{"type":"string","description":"Mode de livraison.","enum":["email","ftp"]},"invoice_email":{"type":["string","null"],"description":"Adresse destinataire en mode email.","format":"email"},"mollie_api_key":{"type":"string","description":"Cle Mollie. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"seller":{"$ref":"#\/components\/schemas\/PaymentSellerWrite","description":"Voir la definition detaillee PaymentSellerWrite."},"seller_name":{"type":["string","null"],"description":"Alias plat de seller.name."},"seller_address_line_1":{"type":["string","null"],"description":"Alias plat de seller.address_line_1."},"seller_postal_code":{"type":["string","null"],"description":"Alias plat de seller.postal_code."},"seller_city":{"type":["string","null"],"description":"Alias plat de seller.city."},"seller_country_code":{"type":["string","null"],"description":"Alias plat de seller.country_code.","pattern":"^[A-Z]{2}$"},"seller_vat_number":{"type":["string","null"],"description":"Alias plat de seller.vat_number."},"ftp":{"$ref":"#\/components\/schemas\/PaymentFtpWrite","description":"Voir la definition detaillee PaymentFtpWrite."}},"additionalProperties":false,"example":{"enabled":true,"invoice_code":"RSLR","invoice_product_code":"AITOK","invoice_delivery_mode":"email","invoice_email":"factures@example.com","seller":{"name":"Agence SA","country_code":"BE"}}},"TagWrite":{"type":"object","description":"Tag de segmentation des utilisateurs et bots.","properties":{"name":{"type":"string","description":"Nom unique du tag.","minLength":1,"maxLength":255},"color":{"type":["string","null"],"description":"Couleur hexadecimal #RRGGBB; une chaine vide retire la couleur.","pattern":"^#[0-9A-Fa-f]{6}$"},"organisation_id":{"type":"integer","description":"Organisation proprietaire.","minimum":1},"system":{"type":"boolean","description":"Cree un tag systeme global. Reserve a la plateforme."}},"additionalProperties":false},"TagCreate":{"description":"Creation d un tag. name est obligatoire.","allOf":[{"$ref":"#\/components\/schemas\/TagWrite","description":"Voir la definition detaillee TagWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["name"]}],"example":{"name":"Support","color":"#ED3658","organisation_id":12}},"TagUpdate":{"description":"Modification partielle d un tag.","allOf":[{"$ref":"#\/components\/schemas\/TagWrite","description":"Voir la definition detaillee TagWrite."}]},"BotTypeWrite":{"type":"object","description":"Type fonctionnel propose lors de la creation d un bot.","properties":{"name":{"type":"string","description":"Nom du type.","minLength":1},"description":{"type":"string","description":"Description affichee a l utilisateur.","minLength":1},"prompt":{"type":"string","description":"Prompt technique ajoute aux bots de ce type.","minLength":1},"icon":{"type":"string","description":"Classe d icone Font Awesome.","default":"fa-solid fa-robot"}},"additionalProperties":false},"BotTypeCreate":{"description":"Creation d un type. name, description et prompt sont obligatoires.","allOf":[{"$ref":"#\/components\/schemas\/BotTypeWrite","description":"Voir la definition detaillee BotTypeWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["name","description","prompt"]}],"example":{"name":"Reception","description":"Accueil et routage des appels","prompt":"Assurez l accueil de l appelant.","icon":"fa-solid fa-headset"}},"BotTypeUpdate":{"description":"Modification partielle d un type.","allOf":[{"$ref":"#\/components\/schemas\/BotTypeWrite","description":"Voir la definition detaillee BotTypeWrite."}]},"LanguageWrite":{"type":"object","description":"Langue disponible pour les bots et le portail.","properties":{"code":{"type":"string","description":"Code langue en minuscules.","pattern":"^[a-z]{2,3}(?:_[a-z0-9]{2,8})?$"},"name":{"type":"string","description":"Libelle de la langue.","minLength":1},"prompt_injection":{"type":["string","null"],"description":"Contrainte linguistique injectee dans le prompt."},"inject_into_prompt":{"type":"boolean","description":"Ajoute prompt_injection au prompt principal."},"inject_into_greeting":{"type":"boolean","description":"Applique aussi la contrainte au message d accueil."},"enabled":{"type":"boolean","description":"Rend la langue selectionnable."}},"additionalProperties":false},"LanguageCreate":{"description":"Creation d une langue. code et name sont obligatoires.","allOf":[{"$ref":"#\/components\/schemas\/LanguageWrite","description":"Voir la definition detaillee LanguageWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["code","name"]}],"example":{"code":"fr_be","name":"Francais (Belgique)","prompt_injection":"Repondez en francais belge.","inject_into_prompt":true,"inject_into_greeting":true,"enabled":true}},"LanguageUpdate":{"description":"Modification partielle d une langue.","allOf":[{"$ref":"#\/components\/schemas\/LanguageWrite","description":"Voir la definition detaillee LanguageWrite."}]},"TechnicalPromptWrite":{"type":"object","description":"Fragment de prompt technique gere par la plateforme.","properties":{"code":{"type":"string","description":"Code technique unique.","minLength":1,"maxLength":120},"name":{"type":"string","description":"Nom affiche.","minLength":1},"category":{"type":"string","description":"Categorie de classement.","minLength":1},"content":{"type":"string","description":"Contenu injecte dans les prompts.","minLength":1},"enabled":{"type":"boolean","description":"Active ce fragment."}},"additionalProperties":false},"TechnicalPromptCreate":{"description":"Creation d un prompt technique. code, name, category et content sont obligatoires.","allOf":[{"$ref":"#\/components\/schemas\/TechnicalPromptWrite","description":"Voir la definition detaillee TechnicalPromptWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["code","name","category","content"]}]},"TechnicalPromptUpdate":{"description":"Modification partielle d un prompt technique.","allOf":[{"$ref":"#\/components\/schemas\/TechnicalPromptWrite","description":"Voir la definition detaillee TechnicalPromptWrite."}]},"ThemePalette":{"type":"object","description":"Palette limitee aux six roles visuels du portail.","properties":{"canvas":{"type":"string","description":"Couleur canvas au format hexadecimal #RRGGBB.","pattern":"^#[0-9A-Fa-f]{6}$","example":"#FFFFFF"},"surface":{"type":"string","description":"Couleur surface au format hexadecimal #RRGGBB.","pattern":"^#[0-9A-Fa-f]{6}$","example":"#FFFFFF"},"text":{"type":"string","description":"Couleur text au format hexadecimal #RRGGBB.","pattern":"^#[0-9A-Fa-f]{6}$","example":"#FFFFFF"},"muted":{"type":"string","description":"Couleur muted au format hexadecimal #RRGGBB.","pattern":"^#[0-9A-Fa-f]{6}$","example":"#FFFFFF"},"primary":{"type":"string","description":"Couleur primary au format hexadecimal #RRGGBB.","pattern":"^#[0-9A-Fa-f]{6}$","example":"#ED3658"},"secondary":{"type":"string","description":"Couleur secondary au format hexadecimal #RRGGBB.","pattern":"^#[0-9A-Fa-f]{6}$","example":"#FFFFFF"}},"additionalProperties":false,"required":["canvas","surface","text","muted","primary","secondary"]},"ThemePalettePair":{"type":"object","description":"Palettes light et dark du branding.","properties":{"light":{"$ref":"#\/components\/schemas\/ThemePalette","description":"Voir la definition detaillee ThemePalette."},"dark":{"$ref":"#\/components\/schemas\/ThemePalette","description":"Voir la definition detaillee ThemePalette."}},"additionalProperties":false,"required":["light","dark"]},"PaletteSuggestionWrite":{"description":"Couleurs light utilisees pour calculer une proposition dark. Les deux formes documentees sont acceptees.","oneOf":[{"type":"object","description":"Palette enveloppee.","properties":{"light":{"$ref":"#\/components\/schemas\/ThemePalette","description":"Voir la definition detaillee ThemePalette."}},"additionalProperties":false,"required":["light"]},{"$ref":"#\/components\/schemas\/ThemePalette","description":"Voir la definition detaillee ThemePalette."}],"example":{"light":{"canvas":"#F7F7F8","surface":"#FFFFFF","text":"#171522","muted":"#716E7C","primary":"#ED3658","secondary":"#F5822A"}}},"BrandingWrite":{"type":"object","description":"Identite visuelle d un domaine BeAI.","properties":{"domain":{"type":"string","description":"Nom DNS complet. Obligatoire a la creation et non modifiable ensuite.","format":"hostname","pattern":"^(?=.{1,253}$)(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z]{2,63}$"},"product_name":{"type":"string","description":"Nom du produit affiche.","minLength":1,"maxLength":255},"support_email":{"type":"string","description":"Adresse de support affichee aux utilisateurs.","format":"email"},"organisation_id":{"type":"integer","description":"Organisation proprietaire du branding.","minimum":1},"theme_palette":{"$ref":"#\/components\/schemas\/ThemePalettePair","description":"Voir la definition detaillee ThemePalettePair."},"background_style":{"type":"string","description":"Motif de fond adaptatif utilise dans le portail.","enum":["contours","waves","grid","diagonals","arches","topography","rays","dots","weave","plain"],"default":"contours","example":"topography"},"full_whitelabel":{"type":"boolean","description":"Masque les references BeAI. Reserve a la plateforme."},"google_sso_enabled":{"type":"boolean","description":"Active la connexion Google. Reserve a la plateforme."},"microsoft_sso_enabled":{"type":"boolean","description":"Active la connexion Microsoft 365. Reserve a la plateforme."},"remove_logo":{"type":"boolean","description":"Supprime le logo light."},"remove_dark_logo":{"type":"boolean","description":"Supprime le logo dark."},"remove_favicon":{"type":"boolean","description":"Supprime le favicon."},"logo":{"type":"string","description":"Logo light envoye en multipart\/form-data.","format":"binary"},"dark_logo":{"type":"string","description":"Logo dark envoye en multipart\/form-data.","format":"binary"},"favicon":{"type":"string","description":"Favicon envoye en multipart\/form-data.","format":"binary"}},"additionalProperties":false},"BrandingCreate":{"description":"Creation d un branding. domain, product_name et support_email sont obligatoires.","allOf":[{"$ref":"#\/components\/schemas\/BrandingWrite","description":"Voir la definition detaillee BrandingWrite."},{"type":"object","description":"Contraintes de creation.","properties":[],"additionalProperties":false,"required":["domain","product_name","support_email"]}],"example":{"domain":"ai.example.com","product_name":"Example AI","support_email":"support@example.com","organisation_id":12,"background_style":"topography","theme_palette":{"light":{"canvas":"#F7F7F8","surface":"#FFFFFF","text":"#171522","muted":"#716E7C","primary":"#ED3658","secondary":"#F5822A"},"dark":{"canvas":"#111116","surface":"#1C1B22","text":"#F6F5F8","muted":"#AAA6B2","primary":"#FF5674","secondary":"#FFA04D"}}}},"BrandingUpdate":{"description":"Modification partielle d un branding. domain ne peut pas changer.","allOf":[{"$ref":"#\/components\/schemas\/BrandingWrite","description":"Voir la definition detaillee BrandingWrite."}]},"PlatformDefaultBrandingWrite":{"type":"object","description":"Selection du branding par defaut de la plateforme.","properties":{"branding_id":{"type":"integer","description":"Branding appartenant a l organisation racine Beone.","minimum":1}},"additionalProperties":false,"required":["branding_id"],"example":{"branding_id":1}},"SystemPaymentConfigurationWrite":{"type":"object","description":"Configuration de paiement globale stockee sur Beone.","properties":{"enabled":{"type":"boolean","description":"Active la facturation automatique."},"invoice_code":{"type":"string","description":"Code des factures.","maxLength":5},"invoice_product_code":{"type":["string","null"],"description":"Reference article vendeur placee dans chaque ligne UBL (BT-155).","maxLength":64,"example":"AITOK"},"invoice_delivery_mode":{"type":"string","description":"Mode de livraison.","enum":["email","ftp"]},"invoice_email":{"type":["string","null"],"description":"Adresse destinataire.","format":"email"},"mollie_api_key":{"type":"string","description":"Cle Mollie. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"ftp_host":{"type":["string","null"],"description":"Serveur FTP."},"ftp_directory":{"type":["string","null"],"description":"Repertoire FTP."},"ftp_username":{"type":["string","null"],"description":"Utilisateur FTP."},"ftp_password":{"type":"string","description":"Mot de passe FTP. Omettre ou envoyer [configured] pour conserver le secret.","format":"password","writeOnly":true},"seller_name":{"type":["string","null"],"description":"Nom legal du vendeur."},"seller_address_line_1":{"type":["string","null"],"description":"Adresse du vendeur."},"seller_postal_code":{"type":["string","null"],"description":"Code postal du vendeur."},"seller_city":{"type":["string","null"],"description":"Ville du vendeur."},"seller_country_code":{"type":["string","null"],"description":"Code pays ISO alpha-2.","pattern":"^[A-Z]{2}$"},"seller_vat_number":{"type":["string","null"],"description":"Numero de TVA du vendeur."}},"additionalProperties":false},"SystemTurnDetectionWrite":{"type":"object","description":"Valeurs par defaut de detection des tours de parole.","properties":{"type":{"type":"string","description":"Moteur de detection.","enum":["server_vad","semantic_vad"],"default":"server_vad"},"threshold":{"type":"number","description":"Seuil audio server_vad.","minimum":0,"maximum":1,"default":0.62},"prefix_padding_ms":{"type":"integer","description":"Audio conserve avant le debut detecte.","minimum":0,"maximum":2000,"default":200},"silence_duration_ms":{"type":"integer","description":"Silence fermant le tour.","minimum":100,"maximum":5000,"default":750},"idle_timeout_ms":{"type":["integer","null"],"description":"Relance apres silence; null desactive.","minimum":5000},"eagerness":{"type":"string","description":"Rapidite de semantic_vad.","enum":["auto","low","medium","high"],"default":"auto"},"create_response":{"type":"boolean","description":"Genere automatiquement une reponse.","default":true},"interrupt_response":{"type":"boolean","description":"Autorise l interruption par l appelant.","default":true},"greeting_delay_ms":{"type":"integer","description":"Delai avant le premier message.","minimum":0,"maximum":5000,"default":1000}},"additionalProperties":false},"AiModelPricingWrite":{"type":"object","description":"Prix fournisseurs par million de tokens.","properties":{"currency":{"type":"string","description":"Devise ISO utilisee pour les prix.","pattern":"^[A-Z]{3,12}$","default":"USD"},"models":{"type":"object","description":"Modeles indexes par identifiant.","minProperties":1,"additionalProperties":{"type":"object","description":"Prix indexes par compteur de tokens.","minProperties":1,"additionalProperties":{"type":"number","description":"Prix par million de tokens.","minimum":0}}}},"additionalProperties":false,"required":["models"],"example":{"currency":"USD","models":{"gemini-live-2.5-flash-native-audio":{"input_token_details.text_tokens":0.5,"input_token_details.audio_tokens":3,"output_token_details.audio_tokens":12}}}},"TextSessionBillingWrite":{"type":"object","description":"Modele et region utilises pour les conversations texte.","properties":{"model":{"type":"string","description":"Identifiant du modele.","maxLength":255,"default":"gemini-3.5-flash"},"location":{"type":"string","description":"Region Vertex AI; vide utilise la region par defaut.","maxLength":80}},"additionalProperties":false},"WhatsAppSystemWrite":{"type":"object","description":"Reglages globaux de cycle de vie WhatsApp.","properties":{"reminder_enabled":{"type":"boolean","description":"Envoie un rappel avant fermeture.","default":true},"inactivity_reminder_minutes":{"type":"integer","description":"Minutes d inactivite avant le rappel.","minimum":5,"maximum":1440,"default":5},"close_after_reminder_minutes":{"type":"integer","description":"Minutes apres le rappel avant fermeture.","minimum":5,"maximum":1440,"default":5}},"additionalProperties":false},"DailyOperationsAlertsWrite":{"type":"object","description":"Seuils du rapport quotidien adresse aux administrateurs plateforme.","properties":{"enabled":{"type":"boolean","description":"Active le rapport quotidien.","default":true},"rag_bot_daily_threshold":{"type":"integer","description":"Nombre journalier d utilisations RAG par bot declenchant une alerte.","minimum":1,"default":100},"rag_organisation_daily_threshold":{"type":"integer","description":"Nombre journalier d utilisations RAG par organisation declenchant une alerte.","minimum":1,"default":500},"minimum_margin_eur_per_minute":{"type":"number","description":"Marge minimale souhaitee par minute en euros.","minimum":0,"default":0.05},"minimum_call_seconds":{"type":"integer","description":"Duree minimale d un appel pris en compte.","minimum":1,"default":30},"usd_to_eur_rate":{"type":"number","description":"Taux de conversion USD vers EUR.","minimum":0.1,"maximum":2,"default":0.92}},"additionalProperties":false},"OutboundCampaignSettingsWrite":{"type":"object","description":"Limites globales des campagnes sortantes.","properties":{"max_concurrent_calls_per_campaign":{"type":"integer","description":"Nombre maximal d appels simultanes par campagne.","minimum":1,"maximum":100,"default":10}},"additionalProperties":false},"SystemSettingsWrite":{"description":"Le corps depend du parametre de chemin section. Choisir exactement la variante portant le meme titre que section.","oneOf":[{"title":"platform-default-branding","allOf":[{"$ref":"#\/components\/schemas\/PlatformDefaultBrandingWrite","description":"Voir la definition detaillee PlatformDefaultBrandingWrite."}]},{"title":"payment-configuration","allOf":[{"$ref":"#\/components\/schemas\/SystemPaymentConfigurationWrite","description":"Voir la definition detaillee SystemPaymentConfigurationWrite."}]},{"title":"realtime-turn-detection","allOf":[{"$ref":"#\/components\/schemas\/SystemTurnDetectionWrite","description":"Voir la definition detaillee SystemTurnDetectionWrite."}]},{"title":"ai-model-pricing","allOf":[{"$ref":"#\/components\/schemas\/AiModelPricingWrite","description":"Voir la definition detaillee AiModelPricingWrite."}]},{"title":"billing-rates","allOf":[{"$ref":"#\/components\/schemas\/BillingRates","description":"Voir la definition detaillee BillingRates."}]},{"title":"text-session-billing","allOf":[{"$ref":"#\/components\/schemas\/TextSessionBillingWrite","description":"Voir la definition detaillee TextSessionBillingWrite."}]},{"title":"whatsapp","allOf":[{"$ref":"#\/components\/schemas\/WhatsAppSystemWrite","description":"Voir la definition detaillee WhatsAppSystemWrite."}]},{"title":"daily-operations-alerts","allOf":[{"$ref":"#\/components\/schemas\/DailyOperationsAlertsWrite","description":"Voir la definition detaillee DailyOperationsAlertsWrite."}]},{"title":"outbound-campaigns","allOf":[{"$ref":"#\/components\/schemas\/OutboundCampaignSettingsWrite","description":"Voir la definition detaillee OutboundCampaignSettingsWrite."}]}]},"AntispamAudioUpload":{"type":"object","description":"Fichier audio antispam encode en multipart\/form-data.","properties":{"audio":{"type":"string","description":"Fichier audio source converti en WAV par le serveur.","format":"binary"}},"additionalProperties":false,"required":["audio"]}},"responses":{"BadRequest":{"description":"Requete invalide","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"Unauthorized":{"description":"Cle absente, invalide, expiree ou revoquee","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"Forbidden":{"description":"Droits insuffisants","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"NotFound":{"description":"Ressource introuvable ou hors perimetre","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"Conflict":{"description":"Conflit avec l etat courant de la ressource","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"PaymentRequired":{"description":"Credit insuffisant","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"UnprocessableEntity":{"description":"Validation echouee","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}},"BadGateway":{"description":"Service externe indisponible ou en erreur","content":{"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Problem"}}}}}}}