> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Exécuter l’analyse de conversation

POST https://api.elevenlabs.io/v1/convai/conversations/{conversation_id}/analysis/run

Exécute l’analyse d’une conversation à l’aide des critères d’évaluation actuels et des paramètres de collecte de données de l’agent.

Reference: https://elevenlabs.io/docs/api-reference/conversations/analysis/run-analysis

## Servers

- `https://api.elevenlabs.io` (Production, default)
- `https://api.us.elevenlabs.io` (Production US)
- `https://api.eu.residency.elevenlabs.io` (Production EU)
- `https://api.in.residency.elevenlabs.io` (Production India)
- `https://api.sg.residency.elevenlabs.io` (Production Singapore)

## Request

### Path parameters

- `conversation_id` (string, required) — ID de la conversation

## Response

### 200

Réponse réussie

- `agent_id` (string, required)
- `status` (enum, required)
  - Allowed values: `initiated`, `in-progress`, `processing`, `done`, `failed`
- `metadata` (ConversationHistoryMetadataCommonModel, required)
- `conversation_id` (string, required)
- `has_audio` (boolean, required)
- `has_user_audio` (boolean, required)
- `has_response_audio` (boolean, required)
- `has_auxiliary_audio` (boolean, required)
- `transcript` (list of ConversationHistoryTranscriptResponseModel, required)
- `agent_name` (string, optional, nullable)
- `conversation_product` (string, optional, default: agent)
- `user_id` (string, optional, nullable)
- `branch_id` (string, optional, nullable)
- `version_id` (string, optional, nullable) — L’ID de la version de l’agent utilisée pour cette conversation
- `analysis` (ConversationHistoryAnalysisCommonModel, optional, nullable)
- `visited_agents` (list of VisitedAgentRef, optional)
- `conversation_initiation_client_data` (ConversationInitiationClientDataRequest-Output, optional)
- `environment` (string, optional, default: production)
- `tag_ids` (list of string, optional) — ID des étiquettes de conversation attribuées à cette conversation.
- `otlp_traces` (map from string to any, optional, nullable) — Charge utile de traçage OpenTelemetry lorsque la requête utilise format=opentelemetry ; sinon, omise.

## Errors

### 422 Unprocessable Entity Error

Erreur de validation

- `detail` (list of ValidationError, optional)

## Types

### ConversationHistoryMetadataCommonModel

- `start_time_unix_secs` (integer, required)
- `call_duration_secs` (integer, required)
- `cost_fiat` (double, required, nullable) — Coût total de la conversation en USD, c’est-à-dire la somme du prix du LLM et du prix de la plateforme hors LLM, l’équivalent monétaire de ``cost``. ``None`` lorsqu’aucun des deux n’est défini, par exemple pour les conversations antérieures au suivi des coûts monétaires.
- `accepted_time_unix_secs` (integer, optional, nullable)
- `queue_wait_secs` (double, optional, nullable) — Secondes pendant lesquelles l’appelant a été maintenu dans la file d’attente des requêtes simultanées. Exclues de call_duration_secs et du temps facturé. None si la conversation n’a jamais été mise en file d’attente.
- `cost` (integer, optional, nullable)
- `deletion_settings` (ConversationDeletionSettings, optional)
- `feedback` (ConversationHistoryFeedbackCommonModel, optional)
- `authorization_method` (enum, optional, default: public)
  - Allowed values: `invalid`, `public`, `authorization_header`, `signed_url`, `shareable_link`, `livekit_token`, `livekit_token_website`, `genesys_api_key`, `avaya_api_key`, `audiocodes_api_key`, `whatsapp`, `sms`
- `charging` (ConversationChargingCommonModel, optional)
- `phone_call` (ConversationHistoryMetadataCommonModelPhoneCall, optional, nullable)
- `batch_call` (ConversationHistoryBatchCallModel, optional, nullable)
- `termination_reason` (string, optional, default: )
- `error` (ConversationHistoryErrorCommonModel, optional, nullable)
- `warnings` (list of string, optional)
- `main_language` (string, optional, nullable)
- `rag_usage` (ConversationHistoryRagUsageCommonModel, optional, nullable)
- `text_only` (boolean, optional, default: false)
- `features_usage` (FeaturesUsageCommonModel, optional)
- `eleven_assistant` (ConversationHistoryElevenAssistantCommonModel, optional)
- `initiator_id` (string, optional, nullable)
- `conversation_initiation_source` (enum, optional, default: unknown) — Énumération représentant les sources possibles d'initiation d'une conversation.
  - Allowed values: `unknown`, `android_sdk`, `node_js_sdk`, `react_native_sdk`, `react_sdk`, `js_sdk`, `python_sdk`, `widget`, `sip_trunk`, `twilio`, `exotel`, `genesys`, `avaya`, `audiocodes`, `swift_sdk`, `whatsapp`, `twilio_sms`, `flutter_sdk`, `zendesk_integration`, `slack_integration`, `telegram_integration`, `intercom_integration`, `freshdesk_integration`, `salesforce_integration`, `template_preview`, `genesys_bot_connector`, `subagent_tool`
- `conversation_initiation_source_version` (string, optional, nullable)
- `timezone` (string, optional, nullable)
- `async_metadata` (AsyncConversationMetadata, optional, nullable) — Métadonnées de livraison asynchrone des conversations, Zendesk, Slack, etc.
- `whatsapp` (WhatsAppConversationInfo, optional, nullable)
- `sms` (SMSConversationInfo, optional, nullable)
- `agent_created_from` (enum, optional, default: unknown)
  - Allowed values: `cli`, `ui`, `api`, `template`, `unknown`
- `agent_last_updated_from` (enum, optional, default: unknown)
  - Allowed values: `cli`, `ui`, `api`, `template`, `unknown`
- `voice_rewards` (list of ConversationVoiceRewardModel, optional)

### ConversationHistoryTranscriptResponseModel

- `role` (enum, required)
  - Allowed values: `user`, `agent`
- `time_in_call_secs` (integer, required)
- `agent_metadata` (AgentMetadata, optional, nullable)
- `message` (string, optional, nullable)
- `multivoice_message` (ConversationHistoryMultivoiceMessageModel, optional, nullable) — Représente un message provenant d'un agent à plusieurs voix.
- `tool_calls` (list of ConversationHistoryTranscriptToolCallCommonModel-Output, optional)
- `tool_results` (list of ConversationHistoryTranscriptResponseModelToolResultsItems, optional)
- `feedback` (UserFeedback, optional, nullable)
- `llm_override` (string, optional, nullable)
- `producing_llm` (string, optional, nullable)
- `conversation_turn_metrics` (ConversationTurnMetrics, optional, nullable)
- `rag_retrieval_info` (RagRetrievalInfo, optional, nullable)
- `llm_usage` (LLMUsage-Output, optional, nullable)
- `interrupted` (boolean, optional, default: false)
- `ignored_as_backchannel` (boolean, optional, default: false)
- `platform_event` (enum, optional, nullable)
  - Allowed values: `user_turn_timeout`, `skip_turn_wait_elapsed`
- `original_message` (string, optional, nullable)
- `reasoning` (list of ConversationReasoningModel, optional)
- `source_medium` (enum, optional, nullable)
  - Allowed values: `audio`, `dtmf`, `text`, `image`, `file`
- `source_event_id` (integer, optional, nullable)
- `used_static_kb_document_ids` (list of string, optional)
- `user_identifier` (string, optional, nullable)
- `id` (string, optional, nullable)
- `triggered_guardrails` (list of TriggeredGuardrailCommonModel, optional)
- `file_input` (ConversationHistoryTranscriptFileInputResponseModel, optional, nullable) — Obsolète : la première pièce jointe de ce tour. Utilisez `file_inputs` pour voir toutes les pièces jointes.
- `file_inputs` (list of ConversationHistoryTranscriptFileInputResponseModel, optional) — Tous les fichiers joints à ce tour, dans l'ordre où l'utilisateur les a joints.
- `contextual_update_info` (ContextualUpdateInfo, optional, nullable)
- `reasoned` (boolean, optional, default: false)

### ConversationHistoryAnalysisCommonModel

- `call_successful` (enum, required)
  - Allowed values: `success`, `failure`, `unknown`
- `transcript_summary` (string, required)
- `evaluation_criteria_results` (map from string to ConversationHistoryEvaluationCriteriaResultCommonModel, optional)
- `data_collection_results` (map from string to DataCollectionResultCommonModel, optional)
- `evaluation_criteria_results_list` (list of ConversationHistoryEvaluationCriteriaResultCommonModel, optional)
- `data_collection_results_list` (list of DataCollectionResultCommonModel, optional)
- `call_success_score` (double, optional, nullable)
- `call_summary_title` (string, optional, nullable)
- `scoped` (list of ScopedAnalysisResult, optional)

### VisitedAgentRef

Un agent, et éventuellement sa branche, ayant participé à l'appel, dans l'ordre de première apparition dans la transcription.

- `agent_id` (string, required)
- `branch_id` (string, optional, nullable)

### ConversationInitiationClientDataRequest-Output

- `conversation_config_override` (ConversationConfigClientOverride-Output, optional)
- `custom_llm_extra_body` (map from string to any, optional)
- `user_id` (string, optional, nullable) — ID de l’utilisateur final participant à cette conversation, pour l’identification de l’utilisateur propriétaire de l’agent
- `source_info` (ConversationInitiationSourceInfo, optional) — Informations sur l’origine de l’initiation de la conversation
- `branch_id` (string, optional, nullable) — ID de la branche d’agent à utiliser pour cette conversation
- `environment` (string, optional, nullable) — Environnement à utiliser pour résoudre les variables d'environnement
- `starting_workflow_node_id` (string, optional, nullable) — Si défini, démarre le workflow à cet ID de nœud au lieu du point d’entrée par défaut.
- `procedure_ids` (list of string, optional, nullable) — Si défini, seules ces procédures sont disponibles pour l’agent initial. Chaque ID doit être associé à cet agent ; les ID inconnus empêchent le démarrage de la conversation. Une liste vide désactive toutes les procédures de cet agent. Ne s’applique pas après un transfert d’agent. Nécessite enable_procedure_ids_from_client.
- `dynamic_variables` (map from string to any, optional)

### ValidationError

- `loc` (list of ValidationErrorLocItems, required)
- `msg` (string, required)
- `type` (string, required)

### ConversationDeletionSettings

- `deletion_time_unix_secs` (integer, optional, nullable)
- `deleted_logs_at_time_unix_secs` (integer, optional, nullable)
- `deleted_audio_at_time_unix_secs` (integer, optional, nullable)
- `deleted_transcript_at_time_unix_secs` (integer, optional, nullable)
- `delete_transcript_and_pii` (boolean, optional, default: false)
- `delete_audio` (boolean, optional, default: false)

### ConversationHistoryFeedbackCommonModel

- `type` (enum, optional, nullable)
  - Allowed values: `thumbs`, `rating`
- `overall_score` (enum, optional, nullable)
  - Allowed values: `like`, `dislike`
- `likes` (integer, optional, default: 0)
- `dislikes` (integer, optional, default: 0)
- `rating` (integer, optional, nullable)
- `comment` (string, optional, nullable)

### ConversationChargingCommonModel

- `dev_discount` (boolean, optional, default: false)
- `is_burst` (boolean, optional, default: false)
- `tier` (string, optional, nullable)
- `llm_usage` (LLMCategoryUsage, optional)
- `llm_price` (double, optional, nullable)
- `llm_charge` (integer, optional, nullable)
- `call_charge` (integer, optional, nullable)
- `platform_charge` (integer, optional, nullable)
- `platform_usage` (PlatformUsage, optional) — Répartition par catégorie de ``platform_charge`` (l’équivalent de ``llm_usage``).
- `platform_price` (double, optional, nullable)
- `free_minutes_consumed` (double, optional, default: 0)
- `free_llm_dollars_consumed` (double, optional, default: 0)
- `tts_usage` (ConversationTTSUsageModel, optional, nullable) — Utilisation TTS agrégée pour une conversation, à des fins d'analyse uniquement et non de facturation.
- `asr_usage` (ConversationASRUsageModel, optional, nullable) — Utilisation ASR agrégée pour une conversation, à des fins d'analyse uniquement et non de facturation.
- `analysis` (AnalysisCharging, optional, nullable) — Coût de l'exécution de l'analyse post-appel sur cette conversation. Présent dès qu'une analyse a été effectuée, qu'elle soit facturée ou non.
- `voice_surcharge_charge` (integer, optional, nullable) — Crédits facturés au titre de la rémunération du doubleur pour les voix de la Voice Library utilisées dans cette conversation. Ils ne sont pas inclus dans `cost`.

### ConversationHistoryMetadataCommonModelPhoneCall

- `type`: `exotel` (ConversationHistoryExotelPhoneCallModel)
  - `agent_number` (string, required)
  - `call_sid` (string, required)
  - `direction` (enum, required, default: inbound)
    - Allowed values: `inbound`, `outbound`
  - `external_number` (string, required)
  - `phone_number_id` (string, required)
  - `stream_sid` (string, required)
  - `call_result` (enum, optional, nullable)
    - Allowed values: `answered`, `voicemail`, `busy`, `no_answer`, `failed`
- `type`: `sip_trunking` (ConversationHistorySIPTrunkingPhoneCallModel)
  - `agent_number` (string, required)
  - `call_sid` (string, required)
  - `direction` (enum, required, default: inbound)
    - Allowed values: `inbound`, `outbound`
  - `external_number` (string, required)
  - `phone_number_id` (string, required)
  - `call_id` (string, optional, nullable)
  - `call_result` (enum, optional, nullable)
    - Allowed values: `answered`, `voicemail`, `busy`, `no_answer`, `failed`
  - `sip_header_dynamic_variables` (map from string to string, optional)
- `type`: `twilio` (ConversationHistoryTwilioPhoneCallModel)
  - `agent_number` (string, required)
  - `call_sid` (string, required)
  - `direction` (enum, required, default: inbound)
    - Allowed values: `inbound`, `outbound`
  - `external_number` (string, required)
  - `phone_number_id` (string, required)
  - `stream_sid` (string, required)
  - `call_result` (enum, optional, nullable)
    - Allowed values: `answered`, `voicemail`, `busy`, `no_answer`, `failed`

### ConversationHistoryBatchCallModel

- `batch_call_id` (string, required)
- `batch_call_recipient_id` (string, required)
- `campaign` (BatchCallingCampaignInformation, optional, nullable)

### ConversationHistoryErrorCommonModel

- `code` (integer, required)
- `reason` (string, optional, nullable)

### ConversationHistoryRagUsageCommonModel

- `usage_count` (integer, required)
- `embedding_model` (string, required)

### FeaturesUsageCommonModel

- `language_detection` (FeatureStatusCommonModel, optional)
- `transfer_to_agent` (FeatureStatusCommonModel, optional)
- `transfer_to_number` (FeatureStatusCommonModel, optional)
- `multivoice` (FeatureStatusCommonModel, optional)
- `dtmf_tones` (FeatureStatusCommonModel, optional)
- `external_mcp_servers` (FeatureStatusCommonModel, optional)
- `pii_zrm_workspace` (boolean, optional, default: false)
- `pii_zrm_agent` (boolean, optional, default: false)
- `tool_dynamic_variable_updates` (FeatureStatusCommonModel, optional)
- `is_livekit` (boolean, optional, default: false)
- `voicemail_detection` (FeatureStatusCommonModel, optional)
- `dtmf_input` (FeatureStatusCommonModel, optional)
- `workflow` (WorkflowFeaturesUsageCommonModel, optional)
- `agent_testing` (TestsFeatureUsageCommonModel, optional)
- `versioning` (FeatureStatusCommonModel, optional)
- `file_input` (FeatureStatusCommonModel, optional)
- `freeform_procedure` (FeatureStatusCommonModel, optional)
- `structured_procedure` (FeatureStatusCommonModel, optional)

### ConversationHistoryElevenAssistantCommonModel

- `is_eleven_assistant` (boolean, optional, default: false)

### AsyncConversationMetadata

Métadonnées de livraison asynchrone des conversations, Zendesk, Slack, etc.

- `delivery_status` (enum, required)
  - Allowed values: `pending`, `success`, `failed`
- `delivery_timestamp` (integer, required)
- `external_system` (string, required)
- `external_id` (string, required)
- `delivery_error` (string, optional, nullable)
- `external_link` (string, optional, nullable)
- `retry_count` (integer, optional, default: 0)
- `last_retry_timestamp` (integer, optional, nullable)
- `last_processed_external_message_id` (string, optional, nullable)

### WhatsAppConversationInfo

- `whatsapp_user_id` (string, required)
- `direction` (enum, optional, default: unknown)
  - Allowed values: `inbound`, `outbound`, `unknown`
- `whatsapp_phone_number_id` (string, optional, nullable)
- `awaiting_first_user_message` (boolean, optional, nullable)
- `recipient` (WhatsAppRecipient, optional, nullable) — Un utilisateur WhatsApp identifié par son numéro de téléphone et/ou son BSUID ; le numéro de téléphone prévaut lorsqu’un seul est nécessaire.
- `call_permission_request` (WhatsAppCallPermissionRequest, optional, nullable)

### SMSConversationInfo

- `direction` (enum, required)
  - Allowed values: `inbound`, `outbound`
- `sms_user_phone_number` (string, required)
- `phone_number_id` (string, optional, nullable)
- `agent_phone_number` (string, optional, nullable)

### ConversationVoiceRewardModel

- `voice_id` (string, required)
- `reward_usd_cents` (double, required)

### AgentMetadata

- `agent_id` (string, required)
- `branch_id` (string, optional, nullable)
- `workflow_node_id` (string, optional, nullable)
- `version_id` (string, optional, nullable)

### ConversationHistoryMultivoiceMessageModel

Représente un message provenant d'un agent à plusieurs voix.

- `parts` (list of ConversationHistoryMultivoiceMessagePartModel, required)

### ConversationHistoryTranscriptToolCallCommonModel-Output

- `request_id` (string, required)
- `tool_name` (string, required)
- `params_as_json` (string, required)
- `tool_has_been_called` (boolean, required)
- `type` (enum, optional, nullable)
  - Allowed values: `system`, `webhook`, `client`, `mcp`, `workflow`, `api_integration_webhook`, `smb`
- `tool_id` (string, optional, nullable) — ID de l’outil appelé. Non défini pour les outils sans ID, tels que les outils système.
- `tool_details` (ConversationHistoryTranscriptToolCallCommonModelOutputToolDetails, optional, nullable)

### ConversationHistoryTranscriptResponseModelToolResultsItems

- ConversationHistoryTranscriptOtherToolsResultCommonModel: ConversationHistoryTranscriptOtherToolsResultCommonModel
- ConversationHistoryTranscriptSystemToolResultCommonModel: ConversationHistoryTranscriptSystemToolResultCommonModel-Output
- ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel: ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Output
- ConversationHistoryTranscriptWorkflowToolsResultCommonModel: ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Output

### UserFeedback

- `score` (enum, required)
  - Allowed values: `like`, `dislike`
- `time_in_call_secs` (integer, required)

### ConversationTurnMetrics

- `metrics` (map from string to MetricRecord, optional)
- `convai_asr_provider` (string, optional, nullable)
- `convai_tts_model` (string, optional, nullable)
- `convai_tts_cascade` (string, optional, nullable)
- `voice_id` (string, optional, nullable)

### RagRetrievalInfo

- `chunks` (list of RagChunkMetadata, required)
- `embedding_model` (enum, required, default: e5_mistral_7b_instruct)
  - Allowed values: `e5_mistral_7b_instruct`, `multilingual_e5_large_instruct`
- `retrieval_query` (string, required)
- `rag_latency_secs` (double, required)
- `used_chunk_ids` (list of string, optional)

### LLMUsage-Output

- `model_usage` (map from string to LLMInputOutputTokensUsage, optional)

### ConversationReasoningModel

- `summary` (string, optional, nullable)
- `provider_redact` (boolean, optional, default: false)

### TriggeredGuardrailCommonModel

- `guardrail_type` (enum, required)
  - Allowed values: `custom`, `prompt_injection`, `self_harm_intent`, `violence_graphic`, `sexual`, `violence`, `harassment`, `sexual_minors`, `self_harm`, `self_harm_instructions`, `harassment_threatening`, `hate`, `hate_threatening`, `profanity`, `religion_or_politics`, `medical_and_legal`, `guardrail`
- `guardrail_name` (string, optional, nullable)

### ConversationHistoryTranscriptFileInputResponseModel

- `file_id` (string, required)
- `original_filename` (string, required)
- `mime_type` (string, required)
- `file_url` (string, required)

### ContextualUpdateInfo

- `context_id` (string, required) — Identifiant fourni par le client regroupant les mises à jour contextuelles associées.
- `is_superseded` (boolean, optional, default: false) — True lorsque cette mise à jour contextuelle a été remplacée par une mise à jour plus récente avec le même context_id.

### ConversationHistoryEvaluationCriteriaResultCommonModel

- `criteria_id` (string, required)
- `result` (enum, required)
  - Allowed values: `success`, `failure`, `unknown`
- `rationale` (string, required)
- `scoring_mode` (enum, optional, nullable, default: binary)
  - Allowed values: `binary`, `numeric_uniform`
- `score` (integer, optional, nullable)
- `max_score` (integer, optional, nullable)

### DataCollectionResultCommonModel

- `data_collection_id` (string, required)
- `rationale` (string, required)
- `name` (string, optional, nullable)
- `value` (any, optional)
- `json_schema` (LiteralJsonSchemaProperty, optional, nullable) — Propriété de schéma pour les types JSON littéraux. IMPORTANT : UN SEUL des champs suivants peut être défini : description (le LLM fournit la valeur), dynamic_variable (valeur issue d’une variable), is_system_provided (le système fournit la valeur), constant_value (valeur fixe) ou is_omitted (le paramètre est omis). Ils sont mutuellement exclusifs.

### ScopedAnalysisResult

- `scope` (enum, required, default: conversation) — La portée de l'analyse. « conversation » utilise la transcription complète ; « agent » utilise uniquement la partie durant laquelle l'agent défini était actif.
  - Allowed values: `conversation`, `agent`
- `source_agent_id` (string, required)
- `successful` (enum, required)
  - Allowed values: `success`, `failure`, `unknown`
- `source_branch_id` (string, optional, nullable) — Branche de l'agent pour ce bloc avec portée, permet de distinguer les agent_id répétés.
- `evaluation_criteria_results` (map from string to ConversationHistoryEvaluationCriteriaResultCommonModel, optional)
- `data_collection_results` (map from string to DataCollectionResultCommonModel, optional)
- `success_score` (double, optional, nullable)

### ConversationConfigClientOverride-Output

- `asr` (ASRConversationalConfigOverride, optional, nullable) — Configuration de la transcription conversationnelle
- `turn` (TurnConfigOverride, optional, nullable) — Configuration de la détection des tours de parole
- `tts` (TTSConversationalConfigOverride, optional, nullable) — Configuration de la synthèse vocale conversationnelle
- `conversation` (ConversationConfigOverride, optional, nullable) — Configuration des événements conversationnels
- `agent` (AgentConfigOverride-Output, optional, nullable) — Configuration spécifique à l'agent

### ConversationInitiationSourceInfo

Informations sur l’origine de l’initiation de la conversation

- `source` (enum, optional, nullable, default: unknown) — Source de l’initiation de la conversation
  - Allowed values: `unknown`, `android_sdk`, `node_js_sdk`, `react_native_sdk`, `react_sdk`, `js_sdk`, `python_sdk`, `widget`, `sip_trunk`, `twilio`, `exotel`, `genesys`, `avaya`, `audiocodes`, `swift_sdk`, `whatsapp`, `twilio_sms`, `flutter_sdk`, `zendesk_integration`, `slack_integration`, `telegram_integration`, `intercom_integration`, `freshdesk_integration`, `salesforce_integration`, `template_preview`, `genesys_bot_connector`, `subagent_tool`
- `version` (string, optional, nullable) — Le numéro de version du SDK

### ValidationErrorLocItems

- string
- integer

### LLMCategoryUsage

- `irreversible_generation` (LLMUsage-Output, optional)
- `initiated_generation` (LLMUsage-Output, optional)

### PlatformUsage

Répartition par catégorie de ``platform_charge`` (l’équivalent de ``llm_usage``).

- `category_usage` (map from string to PlatformCategoryUsage, optional)

### ConversationTTSUsageModel

Utilisation TTS agrégée pour une conversation, à des fins d'analyse uniquement et non de facturation.

- `primary_tts_model` (string, optional, nullable)
- `total_audio_output_seconds` (double, optional, default: 0)
- `total_characters` (integer, optional, default: 0)
- `per_voice_usage` (list of ConversationVoiceUsageModel, optional)

### ConversationASRUsageModel

Utilisation ASR agrégée pour une conversation, à des fins d'analyse uniquement et non de facturation.

- `asr_model` (string, optional, nullable)
- `total_transcription_calls` (integer, optional, default: 0)
- `total_audio_input_seconds` (double, optional, default: 0)

### AnalysisCharging

Coût de l'exécution de l'analyse post-appel sur cette conversation. Présent dès qu'une analyse a été effectuée, qu'elle soit facturée ou non.

- `total` (AnalysisRunningTotal, required) — Coût cumulé du LLM pour l'analyse post-appel de cette conversation.
- `last_run` (AnalysisRunSnapshot, required) — Coût LLM de la plus récente analyse post-appel de cette conversation.

### BatchCallingCampaignInformation

- `campaign_id` (string, required)
- `campaign_lead_id` (string, required)
- `cold_attempt` (integer, optional, nullable)
- `conversation_type` (enum, optional, nullable)
  - Allowed values: `initial`, `retry`, `callback`, `redirect`

### FeatureStatusCommonModel

- `enabled` (boolean, optional, default: false)
- `used` (boolean, optional, default: false)

### WorkflowFeaturesUsageCommonModel

- `enabled` (boolean, optional, default: false)
- `tool_node` (FeatureStatusCommonModel, optional)
- `standalone_agent_node` (FeatureStatusCommonModel, optional)
- `phone_number_node` (FeatureStatusCommonModel, optional)
- `end_node` (FeatureStatusCommonModel, optional)
- `override_agent_node` (FeatureStatusCommonModel, optional)

### TestsFeatureUsageCommonModel

- `enabled` (boolean, optional, default: false)
- `tests_ran_after_last_modification` (boolean, optional, default: false)
- `tests_ran_in_last_7_days` (boolean, optional, default: false)

### WhatsAppRecipient

Un utilisateur WhatsApp identifié par son numéro de téléphone et/ou son BSUID ; le numéro de téléphone prévaut lorsqu’un seul est nécessaire.

- `phone` (string, optional, nullable)
- `bsuid` (string, optional, nullable)

### WhatsAppCallPermissionRequest

- `state` (enum, required)
  - Allowed values: `blocked`, `sent`, `accepted`, `declined`
- `requested_at_unix` (integer, optional, nullable)

### ConversationHistoryMultivoiceMessagePartModel

Représente une partie vocale unique d'un message à plusieurs voix.

- `text` (string, required)
- `voice_label` (string, required, nullable)
- `time_in_call_secs` (integer, required, nullable)

### ConversationHistoryTranscriptToolCallCommonModelOutputToolDetails

- `type`: `api_integration_webhook` (ConversationHistoryTranscriptToolCallApiIntegrationWebhookDetails)
  - `credential_id` (string, required, default: )
  - `integration_connection_id` (string, required, default: )
  - `integration_id` (string, required, default: )
  - `webhook_details` (ConversationHistoryTranscriptToolCallWebhookDetails, required)
- `type`: `client` (ConversationHistoryTranscriptToolCallClientDetails)
  - `parameters` (string, required)
- `type`: `mcp` (ConversationHistoryTranscriptToolCallMCPDetails)
  - `approval_policy` (string, required)
  - `integration_type` (string, required)
  - `mcp_server_id` (string, required)
  - `mcp_server_name` (string, required)
  - `mcp_tool_description` (string, optional, default: )
  - `mcp_tool_name` (string, optional, default: )
  - `parameters` (map from string to string, optional)
  - `requires_approval` (boolean, optional, default: false)
- `type`: `webhook` (ConversationHistoryTranscriptToolCallWebhookDetails)
  - `method` (string, required)
  - `url` (string, required)
  - `body` (string, optional, nullable)
  - `headers` (map from string to string, optional)
  - `path_params` (map from string to string, optional)
  - `query_params` (map from string to string, optional)

### ConversationHistoryTranscriptOtherToolsResultCommonModel

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `type` (enum, optional, nullable)
  - Allowed values: `client`, `webhook`, `mcp`, `code`

### ConversationHistoryTranscriptSystemToolResultCommonModel-Output

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("system", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `result` (ConversationHistoryTranscriptSystemToolResultCommonModelOutputResult, optional, nullable)

### ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Output

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `is_blocked` (boolean, required, default: false)
- `tool_has_been_called` (boolean, required)
- `tool_latency_secs` (double, required, default: 0)
- `error_type` (string, required, default: )
- `raw_error_message` (string, required, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, required)
- `type` ("api_integration_webhook", required)
- `integration_id` (string, required, default: )
- `credential_id` (string, required, default: )
- `integration_connection_id` (string, required, default: )

### ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Output

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("workflow", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `result` (WorkflowToolResponseModel-Output, optional, nullable) — Modèle commun pour les réponses d’outils de workflow.

### MetricRecord

- `elapsed_time` (double, required)

### RagChunkMetadata

- `document_id` (string, required)
- `chunk_id` (string, required)
- `vector_distance` (double, required)

### LLMInputOutputTokensUsage

- `input` (LLMTokensCategoryUsage, optional)
- `input_cache_read` (LLMTokensCategoryUsage, optional)
- `input_cache_write` (LLMTokensCategoryUsage, optional)
- `output_total` (LLMTokensCategoryUsage, optional)

### LiteralJsonSchemaProperty

Propriété de schéma pour les types JSON littéraux. IMPORTANT : UN SEUL des champs suivants peut être défini : description (le LLM fournit la valeur), dynamic_variable (valeur issue d’une variable), is_system_provided (le système fournit la valeur), constant_value (valeur fixe) ou is_omitted (le paramètre est omis). Ils sont mutuellement exclusifs.

- `type` (LiteralJsonSchemaPropertyType, required)
- `description` (string, optional, default: ) — La description de la propriété. Lorsqu’elle est définie, le LLM fournit la valeur à partir de cette description. S’exclut mutuellement avec dynamic_variable, is_system_provided, constant_value et is_omitted.
- `enum` (list of string, optional, nullable) — List of allowed string values for string type parameters
- `is_system_provided` (boolean, optional, default: false) — Si true, la valeur sera renseignée par le système au moment de l’exécution. Utilisé par les outils Webhook d’intégration API pour le templating. Mutuellement exclusif avec description, dynamic_variable, constant_value et is_omitted.
- `dynamic_variable` (string, optional, default: ) — Le nom de la variable dynamique à utiliser pour la valeur de cette propriété. S’exclut mutuellement avec description, is_system_provided, constant_value et is_omitted.
- `allowed_values` (AllowedValues, optional, nullable) — Garde-fou de rejet côté serveur pour une valeur fournie par un LLM : l’environnement d’exécution rejette toute valeur en dehors de l’ensemble autorisé désigné par cet objet, et cet ensemble n’est pas communiqué au LLM comme une énumération. Pris en charge uniquement lorsque la source de la valeur est `description` ; toute combinaison avec dynamic_variable, is_system_provided, constant_value ou is_omitted est rejetée.
- `constant_value` (LiteralJsonSchemaPropertyConstantValue, optional, nullable, default: ) — Valeur constante à utiliser pour cette propriété. S’exclut mutuellement avec description, dynamic_variable, is_system_provided et is_omitted.
- `is_omitted` (boolean, optional, default: false) — Si true, ce paramètre sera entièrement omis de la requête. Valide uniquement pour les paramètres facultatifs. Mutuellement exclusif avec description, dynamic_variable, is_system_provided et constant_value.
- `allowed_values_dynamic_variable` (string, optional, default: , deprecated) — OBSOLÈTE : utilisez plutôt `allowed_values`. Lorsqu'il est défini, le LLM fournit la valeur, mais l'environnement d'exécution rejette toute valeur absente de la liste contenue dans cette variable dynamique (doit être un tableau JSON tel que ["ws_alpha", "ws_beta"]). Utilisez-le pour permettre au LLM de choisir dans un ensemble vérifié par le serveur, par exemple les ID auxquels l'utilisateur actuel est autorisé à accéder. Requiert description ; mutuellement exclusif avec dynamic_variable, is_system_provided, constant_value et is_omitted.

### ASRConversationalConfigOverride

- `keywords` (list of string, optional, nullable) — Mots-clés dont la probabilité de prédiction doit être augmentée

### TurnConfigOverride

- `soft_timeout_config` (SoftTimeoutConfigOverride, optional, nullable) — Configuration de la fonctionnalité de délai d'expiration souple. Fournit un retour immédiat pendant les réponses plus longues des LLM.

### TTSConversationalConfigOverride

- `model_id` (enum, optional, nullable, default: eleven_v4_turbo) — Le modèle à utiliser pour le TTS
  - Allowed values: `eleven_turbo_v2`, `eleven_turbo_v2_5`, `eleven_flash_v2`, `eleven_flash_v2_5`, `eleven_multilingual_v2`, `eleven_v3_conversational`, `eleven_v4`, `eleven_v4_turbo`
- `voice_id` (string, optional, nullable) — L’ID de voix à utiliser pour le TTS
- `supported_voices` (list of SupportedVoice, optional, nullable) — Voix supplémentaires prises en charge pour l'agent
- `stability` (double, optional, nullable) — La stabilité de la parole générée
- `speed` (double, optional, nullable) — La vitesse de la parole générée
- `similarity_boost` (double, optional, nullable) — L'amélioration de similarité pour la parole générée
- `pronunciation_dictionary_locators` (list of PydanticPronunciationDictionaryVersionLocator, optional, nullable) — Les localisateurs de dictionnaires de prononciation

### ConversationConfigOverride

- `text_only` (boolean, optional, nullable) — Si cette option est activée, l’audio ne sera pas traité et seul le texte sera utilisé, afin d’éviter la tarification audio.
- `max_duration_seconds` (integer, optional, nullable) — La durée maximale d’une conversation, en secondes

### AgentConfigOverride-Output

- `first_message` (string, optional, nullable) — S’il n’est pas vide, premier message que l’agent prononcera. S’il est vide, l’agent attend que l’utilisateur commence la discussion.
- `language` (string, optional, nullable) — Langue de l'agent, utilisée pour l'ASR et le TTS
- `max_conversation_duration_message` (string, optional, nullable) — S’il n’est pas vide, message que l’agent enverra lorsque la durée maximale de la conversation sera atteinte.
- `prompt` (PromptAgentAPIModelOverride-Output, optional, nullable) — Le prompt de l’agent

### PlatformCategoryUsage

Frais cumulés pour une seule :class:`PlatformCategory`.

- `credits` (integer, optional, default: 0)
- `price` (double, optional, default: 0)
- `quantity` (double, optional, default: 0)

### ConversationVoiceUsageModel

- `voice_id` (string, required)
- `audio_output_seconds` (double, optional, default: 0)

### AnalysisRunningTotal

Coût cumulé du LLM pour l'analyse post-appel de cette conversation.

- `price` (double, optional, default: 0)
- `charge` (integer, optional, default: 0)
- `runs` (integer, optional, default: 0)
- `price_per_feature` (map from string to double, optional)
- `charge_per_feature` (map from string to integer, optional)

### AnalysisRunSnapshot

Coût LLM de la plus récente analyse post-appel de cette conversation.

- `price` (double, optional, default: 0)
- `charge` (integer, optional, default: 0)
- `price_per_feature` (map from string to double, optional)
- `charge_per_feature` (map from string to integer, optional)

### ConversationHistoryTranscriptToolCallWebhookDetails

- `method` (string, required)
- `url` (string, required)
- `headers` (map from string to string, optional)
- `path_params` (map from string to string, optional)
- `query_params` (map from string to string, optional)
- `body` (string, optional, nullable)

### DynamicVariableUpdateCommonModel

Enregistre une mise à jour de variable dynamique survenue pendant l’exécution de l’outil.

- `variable_name` (string, required)
- `old_value` (string, required, nullable)
- `new_value` (string, required)
- `updated_at` (double, required)
- `tool_name` (string, required)
- `tool_request_id` (string, required)

### ConversationHistoryTranscriptSystemToolResultCommonModelOutputResult

- `result_type`: `dummy` (DummyToolResultModel)
- `result_type`: `end_call_success` (EndCallToolResultModel)
  - `message` (string, optional, nullable)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `end_procedure_error` (EndProcedureToolResultErrorModel)
  - `message` (string, required)
  - `status` (enum, required)
    - Allowed values: `not_found`, `invalid_id`
  - `procedure_id` (string, optional, nullable)
- `result_type`: `end_procedure_success` (EndProcedureToolResultSuccessModel)
  - `procedure_id` (string, required)
  - `procedure_name` (string, required)
  - `message` (string, optional, default: )
  - `status` ("success", optional, default: success)
- `result_type`: `knowledge_base_rag_success` (KnowledgeBaseRagToolResultModel)
  - `chunk_count` (integer, optional, default: 0) — Nombre de segments pertinents récupérés
  - `chunks` (list of KnowledgeBaseRagChunkModel, optional) — Fragments récupérés, renseignés uniquement en mode rag-result-in-tool-result
  - `message` (string, optional, default: Referenced knowledge base.) — Statut lisible destiné au LLM concernant les résultats de recherche
  - `status` (enum, optional, default: success)
    - Allowed values: `success`, `no_documents`, `no_results`
- `result_type`: `knowledge_base_success` (KnowledgeBaseToolResultModel)
  - `chunk_count` (integer, optional, default: 0)
  - `message` (string, optional, default: Referenced knowledge base.)
  - `status` (enum, optional, default: success)
    - Allowed values: `success`, `no_matching_documents`, `no_results`
- `result_type`: `language_detection_success` (LanguageDetectionToolResultModel)
  - `language` (string, optional, nullable)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `play_dtmf_error` (PlayDTMFResultErrorModel)
  - `error` (string, required)
  - `details` (string, optional, nullable)
  - `status` ("error", optional, default: error)
- `result_type`: `play_dtmf_success` (PlayDTMFResultSuccessModel)
  - `dtmf_tones` (string, required)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `skip_turn_success` (SkipTurnToolResponseModel)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `start_procedure_error` (StartProcedureToolResultErrorModel)
  - `message` (string, required)
  - `status` (enum, required)
    - Allowed values: `not_found`, `invalid_name`, `already_active`
  - `procedure_id` (string, optional, nullable)
- `result_type`: `start_procedure_success` (StartProcedureToolResultSuccessModel)
  - `procedure_id` (string, required)
  - `procedure_name` (string, required)
  - `message` (string, optional, default: Procedure is now started. Follow its instructions from the <active-procedures> section of your system prompt.)
  - `procedure_entry_workflow_node` (string, optional, nullable)
  - `procedure_return_workflow_node` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `testing_tool_result` (TestToolResultModel)
  - `reason` (string, optional, default: Skipping tool call in test mode)
  - `status` ("success", optional, default: success)
  - `to_agent` (string, optional, nullable)
  - `to_node` (string, optional, nullable)
- `result_type`: `transfer_to_agent_error` (TransferToAgentToolResultErrorModel)
  - `error` (string, required)
  - `from_agent` (string, required)
  - `status` ("error", optional, default: error)
- `result_type`: `transfer_to_agent_success` (TransferToAgentToolResultSuccessModel)
  - `condition` (string, required)
  - `from_agent` (string, required)
  - `to_agent` (string, required)
  - `branch_info` (TransferToAgentToolResultSuccessModelOutputBranchInfo, optional, nullable)
  - `delay_ms` (integer, optional, default: 0)
  - `enable_transferred_agent_first_message` (boolean, optional, default: false)
  - `preserve_client_tts_overrides` (boolean, optional, default: false)
  - `preserve_voice_settings` (boolean, optional, default: false)
  - `status` ("success", optional, default: success)
  - `to_node` (string, optional, nullable)
  - `transfer_message` (string, optional, nullable)
- `result_type`: `transfer_to_number_amazon_connect_success` (TransferToNumberResultAmazonConnectSuccessModel)
  - `client_message` (string, optional, nullable) — Message prononcé à l’appelant avant que la session ne soit rendue à Amazon Connect.
  - `note` (string, optional, nullable) — Défini lorsque l’agent a répété une option non valide et que la seule option configurée a été utilisée.
  - `reason` (string, optional, nullable) — Motif de l’escalade par l’agent, envoyé à Amazon Connect avec le résultat Escalate.
  - `status` ("success", optional, default: success)
- `result_type`: `transfer_to_number_error` (TransferToNumberResultErrorModel)
  - `error` (string, required)
  - `details` (string, optional, nullable)
  - `status` ("error", optional, default: error)
- `result_type`: `transfer_to_number_exotel_success` (TransferToNumberResultExotelSuccessModel)
  - `transfer_number` (string, required)
  - `agent_message` (string, optional, nullable)
  - `note` (string, optional, nullable)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `transfer_to_number_sip_success` (TransferToNumberResultSipSuccessModel)
  - `transfer_number` (string, required)
  - `note` (string, optional, nullable)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `transfer_to_number_twilio_success` (TransferToNumberResultTwilioSuccessModel)
  - `agent_message` (string, required)
  - `conference_name` (string, required)
  - `transfer_number` (string, required)
  - `client_message` (string, optional, nullable)
  - `note` (string, optional, nullable)
  - `post_dial_digits` (string, optional, nullable)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
- `result_type`: `voicemail_detection_success` (VoiceMailDetectionResultSuccessModel)
  - `reason` (string, optional, nullable)
  - `status` ("success", optional, default: success)
  - `voicemail_message` (string, optional, nullable)

### WorkflowToolResponseModel-Output

Modèle commun pour les réponses d’outils de workflow.

- `steps` (list of WorkflowToolResponseModelOutputStepsItems, optional)

### LLMTokensCategoryUsage

- `tokens` (integer, optional, default: 0)
- `price` (double, optional, default: 0)

### LiteralJsonSchemaPropertyType

- enum
  - Allowed values: `boolean`, `string`, `integer`, `number`
- list of string

### AllowedValues

- `dynamic_variable` (string, required) — Nom d’une variable dynamique qui doit correspondre à un tableau JSON de valeurs autorisées, par exemple ["ws_alpha", "ws_beta"]. Les variables système ne fonctionnent que si elles correspondent à une liste.

### LiteralJsonSchemaPropertyConstantValue

Valeur constante à utiliser pour cette propriété. S’exclut mutuellement avec description, dynamic_variable, is_system_provided et is_omitted.

- string
- integer
- double
- boolean

### SoftTimeoutConfigOverride

- `message` (string, optional, nullable) — Message à afficher lorsque le premier délai d’expiration souple est atteint pendant l’attente d’une réponse LLM. Prend en charge les variables dynamiques, par exemple \{\{system\_\_time}} et \{\{custom\_variable}}.
- `additional_soft_timeout_messages` (list of string, optional, nullable) — Messages statiques de remplissage supplémentaires pour les délais d'attente souples suivants dans la même génération LLM. Le premier délai utilise `message`. Si moins de messages sont configurés que `max_soft_timeouts_per_generation`, le dernier message configuré est répété ; sinon, un message de remplissage intégré est utilisé.

### SupportedVoice

- `label` (string, required)
- `voice_id` (string, required)
- `description` (string, optional, nullable)
- `language` (string, optional, nullable)
- `model_family` (enum, optional, nullable)
  - Allowed values: `turbo`, `flash`, `multilingual`, `v3_conversational`, `v4`, `v4_turbo`
- `optimize_streaming_latency` (enum, optional, nullable)
  - Allowed values: `0`, `1`, `2`, `3`, `4`
- `stability` (double, optional, nullable)
- `speed` (double, optional, nullable)
- `similarity_boost` (double, optional, nullable)

### PydanticPronunciationDictionaryVersionLocator

Un localisateur permettant à d'autres documents de référencer un dictionnaire spécifique et sa version. Il s'agit d'une version Pydantic de PronunciationDictionaryVersionLocatorDBModel. Requis pour assurer la compatibilité avec les autres modèles de données de l'agent.

- `pronunciation_dictionary_id` (string, required) — L’ID du dictionnaire de prononciation
- `version_id` (string, required, nullable) — L’ID de la version du dictionnaire de prononciation

### PromptAgentAPIModelOverride-Output

- `prompt` (string, optional, nullable) — Le prompt de l’agent
- `llm` (enum, optional, nullable) — Le LLM à interroger avec le prompt et l’historique de discussion. En cas de résidence des données européenne, le LLM doit être pris en charge dans l’environnement de résidence des données.
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `tool_ids` (list of string, optional, nullable) — Liste des ID des outils utilisés par l’agent.
- `tool_ids_strict` (boolean, optional, nullable) — Only applies as a conversation override, allowed whenever tool_ids may be overridden. When true, the overridden tool_ids is the full list of tools allowed in the conversation, including tools on workflow nodes. Ignored when set on the agent.
- `native_mcp_server_ids` (list of string, optional, nullable) — Liste des identifiants de serveurs MCP natifs à utiliser par l'agent
- `knowledge_base` (list of KnowledgeBaseLocator, optional, nullable) — Liste des bases de connaissances à utiliser par l'agent

### KnowledgeBaseRagChunkModel

- `chunk_id` (string, required)
- `document_id` (string, required)
- `content` (string, required)

### TransferToAgentToolResultSuccessModelOutputBranchInfo

- `branch_reason`: `configured` (TransferBranchInfoConfigured)
  - `branch_id` (string, required)
- `branch_reason`: `defaulting_to_main` (TransferBranchInfoDefaultingToMain)
  - `branch_id` (string, required)
- `branch_reason`: `traffic_split` (TransferBranchInfoTrafficSplit)
  - `branch_id` (string, required)
  - `traffic_percentage` (double, required)

### WorkflowToolResponseModelOutputStepsItems

- `type`: `edge` (WorkflowToolEdgeStepModel)
  - `edge_id` (string, required)
  - `step_latency_secs` (double, required)
  - `target_node_id` (string, required)
- `type`: `max_iterations_exceeded` (WorkflowToolMaxIterationsExceededStepModel)
  - `max_iterations` (integer, required)
  - `step_latency_secs` (double, required)
- `type`: `nested_tools` (WorkflowToolNestedToolsStepModel)
  - `is_successful` (boolean, required)
  - `node_id` (string, required)
  - `requests` (list of ConversationHistoryTranscriptToolCallCommonModel-Output, required)
  - `results` (list of WorkflowToolResponseModelOutputStepsItemsDiscriminatorMappingNestedToolsResultsItems, required)
  - `step_latency_secs` (double, required)

### KnowledgeBaseLocator

- `type` (enum, required) — Le type de base de connaissances.
  - Allowed values: `file`, `url`, `text`, `folder`
- `name` (string, required) — Le nom de la base de connaissances
- `id` (string, required) — L’ID de la base de connaissances
- `usage_mode` (enum, optional, default: auto) — Le mode d’utilisation de la base de connaissances
  - Allowed values: `prompt`, `auto`

### WorkflowToolResponseModelOutputStepsItemsDiscriminatorMappingNestedToolsResultsItems

- ConversationHistoryTranscriptOtherToolsResultCommonModel: ConversationHistoryTranscriptOtherToolsResultCommonModel
- ConversationHistoryTranscriptSystemToolResultCommonModel: ConversationHistoryTranscriptSystemToolResultCommonModel-Output
- ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel: ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModel-Output
- ConversationHistoryTranscriptWorkflowToolsResultCommonModel: ConversationHistoryTranscriptWorkflowToolsResultCommonModel-Output

## Examples

**Response**

```json
{
  "agent_id": "agent_3701k3ttaq12ewp8b7qv5rfyszkz",
  "status": "processing",
  "metadata": {
    "start_time_unix_secs": 1714423232,
    "call_duration_secs": 10,
    "cost_fiat": 1.1
  },
  "conversation_id": "conv_7401k5m9x2p8ec3rqv6dtnhb0fzw",
  "has_audio": true,
  "has_user_audio": true,
  "has_response_audio": true,
  "has_auxiliary_audio": true,
  "transcript": [
    {
      "role": "user",
      "time_in_call_secs": 10,
      "message": "Hello, how are you?"
    }
  ],
  "agent_name": "My agent",
  "version_id": "agtvrsn_5xM3yVvZQKV0EfqQpLr2",
  "environment": "production",
  "tag_ids": []
}
```

**SDK Code**

```python
import requests

url = "https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run"

response = requests.post(url)

print(response.json())
```

```javascript
const url = 'https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run';
const options = {method: 'POST'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run"

	req, _ := http.NewRequest("POST", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run');

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run");
var request = new RestRequest(Method.POST);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "https://api.elevenlabs.io/v1/convai/conversations/conversation_id/analysis/run")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```