{
  "commercial": {
    "authority": "owner_approved_business_input",
    "commercial_use_in_customer_product": true,
    "official_offer_licence_agreement": true,
    "permission_contact": "mailto:support@ailoot.ai",
    "promo_discount_max_percent": 50,
    "reseller_licence_on_request": true,
    "subscription_effect": "reduces_effective_token_cost",
    "use_cases": [
      "customer_products",
      "agents",
      "applications",
      "automations"
    ],
    "written_project_permission_on_request": true
  },
  "company": {
    "authority": "owner_approved_business_input",
    "claims": [
      "established operating experience",
      "large client base",
      "stable service",
      "ongoing KPI control"
    ],
    "scale": {
      "clients": "des millions de clients",
      "currency": null,
      "monthly_sales": "des ventes qui se chiffrent en milliards chaque mois",
      "scope": "L’entreprise et son portefeuille de projets"
    },
    "source": "https://ailoot.ai/ru/",
    "source_language": "ru"
  },
  "connection": {
    "api_server": "https://api.ailoot.ai",
    "authentication": {
      "alternative_http_headers": [
        "x-api-key",
        "x-goog-api-key"
      ],
      "example": "Bearer ${AILOOT_API_KEY}",
      "header": "Authorization",
      "mode": "clientBearer",
      "realtime_mode": "Bearer header only",
      "scheme": "bearer",
      "type": "http"
    },
    "directory_placement": {
      "status": "unknown",
      "url": null
    },
    "mcp": {
      "endpoint": null,
      "status": "unknown"
    },
    "protocols": [
      {
        "id": "models",
        "label": "Model discovery",
        "operations": [
          {
            "http_method": "GET",
            "operation_id": "listModels",
            "path": "/v1/models",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "listGeminiModels",
            "path": "/v1beta/models",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "chat",
        "label": "OpenAI Chat Completions",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createChatCompletion",
            "path": "/v1/chat/completions",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "responses",
        "label": "OpenAI Responses",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createResponse",
            "path": "/v1/responses",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "messages",
        "label": "Anthropic Messages",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createMessage",
            "path": "/v1/messages",
            "status": "documented"
          },
          {
            "description": "Documented token-counting path; unavailable for models in the current public catalogue.",
            "http_method": "POST",
            "operation_id": "countMessageTokens",
            "path": "/v1/messages/count_tokens",
            "status": "unavailable"
          }
        ],
        "transport": "https"
      },
      {
        "id": "gemini",
        "label": "Gemini generateContent",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "generateContent",
            "path": "/v1beta/models/{model}:generateContent",
            "status": "documented"
          },
          {
            "http_method": "POST",
            "operation_id": "generateContentCompatibility",
            "path": "/antigravity/v1beta/models/{model}:generateContent",
            "status": "documented"
          },
          {
            "http_method": "POST",
            "operation_id": "streamGenerateContent",
            "path": "/v1beta/models/{model}:streamGenerateContent",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "embeddings",
        "label": "Text embeddings",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createEmbeddings",
            "path": "/v1/embeddings",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "images",
        "label": "OpenAI Images",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createImage",
            "path": "/v1/images/generations",
            "status": "documented"
          },
          {
            "http_method": "POST",
            "operation_id": "editImage",
            "path": "/v1/images/edits",
            "status": "documented"
          },
          {
            "description": "Save task_id and poll_url. Streaming is rejected. A task has processing/completed/failed status and an expires_at field.",
            "http_method": "POST",
            "operation_id": "createImageTask",
            "path": "/v1/images/generations/async",
            "status": "documented"
          },
          {
            "description": "Save task_id and poll_url. Streaming is rejected. A task has processing/completed/failed status and an expires_at field.",
            "http_method": "POST",
            "operation_id": "createImageEditTask",
            "path": "/v1/images/edits/async",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getImageTask",
            "path": "/v1/images/tasks/{task_id}",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "speech",
        "label": "Speech audio",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createSpeech",
            "path": "/v1/audio/speech",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "transcriptions",
        "label": "Audio transcription",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createTranscription",
            "path": "/v1/audio/transcriptions",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "videos",
        "label": "Video generation and retrieval",
        "operations": [
          {
            "description": "Save the returned task identifier. Poll status and download content; do not repeat creation after a timeout or unknown result. Required media parameters differ by model; this documented example is not a parameter guarantee for every video model.",
            "http_method": "POST",
            "operation_id": "createVideo",
            "path": "/v1/videos/generations",
            "status": "documented"
          },
          {
            "description": "Save the returned task identifier. Poll status and download content; do not repeat creation after a timeout or unknown result. Required media parameters differ by model; this documented example is not a parameter guarantee for every video model.",
            "http_method": "POST",
            "operation_id": "createVideoCompatible",
            "path": "/v1/videos",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideo",
            "path": "/v1/videos/{request_id}",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideoContent",
            "path": "/v1/videos/{request_id}/content",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideoGeneration",
            "path": "/v1/videos/generations/{request_id}",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideoGenerationContent",
            "path": "/v1/videos/generations/{request_id}/content",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "music",
        "label": "Music generation",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createMusic",
            "path": "/v1/music/generations",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "systemone",
        "label": "System One decisions",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createSystemOne",
            "path": "/v1/systemone",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "realtime",
        "label": "Realtime voice WebSocket",
        "operations": [
          {
            "http_method": "GET",
            "operation_id": "openRealtimeSession",
            "path": "/v1/realtime",
            "status": "documented"
          }
        ],
        "transport": "websocket"
      }
    ],
    "provenance": {
      "approved_offer_sha256": "03ba9f99acb815bdfd97051de0b513aeb11dcad811723225ed2f1192cddab0ca",
      "client_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22",
      "proof_scope": "accepted-static-public-contract",
      "public_operation_count": 26,
      "sources": [
        {
          "name": "public-api-contract-v1.json",
          "sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
        },
        {
          "name": "openapi-contract-v1.md",
          "sha256": "eebcd42781235054b93f763d84cb0fbc27c6c5762515c2b4990c390accba8763"
        },
        {
          "name": "openapi.py",
          "sha256": "0e502577f8a9a347a3ba5a514294a336b06aea78cac41b9fa1e4871b69fbf4e8"
        },
        {
          "name": "agent-facts-contract-v1.json",
          "sha256": "856af0544f85dc29b915132a3c762698ae9162555b24b79cfabfec63b05bc43a"
        },
        {
          "name": "locale-routes.py",
          "sha256": "920d2b69bf735d7298eb24f06cf7bd4eb373b5f76639b61fb6e98e8f94bfec7a"
        },
        {
          "name": "approved-offer-copy-v1.json",
          "sha256": "03ba9f99acb815bdfd97051de0b513aeb11dcad811723225ed2f1192cddab0ca"
        },
        {
          "name": "offer-copy.py",
          "sha256": "fe062036873acf8abb23a182248ce508c3679979455dadc634dcd5063d60cb1f"
        }
      ]
    },
    "sdk_validation": {
      "status": "unknown"
    },
    "status": "documented"
  },
  "documentation": {
    "api_guide": {
      "status": "documented",
      "url": "https://ailoot.ai/openapi.md"
    },
    "entrypoints": {
      "docs": "https://ailoot.ai/docs/fr-ca/",
      "integrations": "https://ailoot.ai/integrations/fr-ca/",
      "models": "https://ailoot.ai/models/fr-ca/"
    },
    "licence": {
      "label": "Offre officielle et contrat de licence",
      "url": "https://ailoot.ai/legal/offer?lang=fr-ca"
    },
    "locale": "fr-ca",
    "offer": {
      "label": "Offre officielle et contrat de licence",
      "url": "https://ailoot.ai/legal/offer?lang=fr-ca"
    },
    "openapi": {
      "format": "3.1.1",
      "status": "documented",
      "url": "https://ailoot.ai/openapi.json"
    },
    "provenance": {
      "approved_offer_sha256": "03ba9f99acb815bdfd97051de0b513aeb11dcad811723225ed2f1192cddab0ca",
      "locale_routes_sha256": "920d2b69bf735d7298eb24f06cf7bd4eb373b5f76639b61fb6e98e8f94bfec7a"
    },
    "reseller_licence": {
      "label": "Demander une licence revendeur",
      "url": "mailto:support@ailoot.ai"
    },
    "support": {
      "url": "mailto:support@ailoot.ai"
    },
    "written_project_permission": {
      "url": "mailto:support@ailoot.ai"
    }
  },
  "integrations": [
    {
      "application": "Claude Code",
      "application_id": "claude-code",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse sans /v1 : Claude Code ajoute lui-même /v1/messages. ANTHROPIC_AUTH_TOKEN est transmis via Authorization : Bearer, et ANTHROPIC_API_KEY via x-api-key ; Ailoot accepte les deux. CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 charge nos modèles dans /model via /v1/models. En cas d’erreur 400 sur des champs inconnus, utilisez CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1. La documentation Anthropic ne prend pas en charge l’utilisation de modèles non-Claude avec Claude Code via une passerelle, même si notre /v1/messages les sert ; nous recommandons les modèles Claude. Remote Control et la saisie vocale sont indisponibles via la passerelle.",
        "description": "Agent dans le terminal · Anthropic Messages",
        "formats": [
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "67b4c5e9ab897d47abb6610aa970edf748e4ca7a7f4171d9565762afb4097a4b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/claude-code/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "67b4c5e9ab897d47abb6610aa970edf748e4ca7a7f4171d9565762afb4097a4b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI Codex CLI",
      "application_id": "openai-codex-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Codex utilise uniquement OpenAI Responses API ; la documentation indique seulement wire_api = \"responses\". Notre /v1/responses est donc nécessaire. Les ID de fournisseurs openai, ollama et lmstudio sont réservés. Autre option : openai_base_url = \"https://api.ailoot.ai/v1\" pour le fournisseur openai intégré. Ailoot fournit à Codex une liste des modèles au format manifeste Codex, GET /v1/models avec client_version. Choisissez un modèle précis dont le catalogue indique OpenAI Responses. Dans l’instantané du 2026-09-30, gemini-3.6-flash possède OpenAI Chat, Anthropic Messages et Gemini, mais pas Responses : il ne convient donc pas à Codex. Vérifiez les formats dans la fiche du modèle plutôt qu’à partir du nom de sa famille de modèles.",
        "description": "Agent dans le terminal · OpenAI Responses",
        "formats": [
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "b983e46a7760c229bf1b55ddd4b9f6ef3e9a11a03d91f045c9eb99342798ef7c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/openai-codex-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "b983e46a7760c229bf1b55ddd4b9f6ef3e9a11a03d91f045c9eb99342798ef7c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Hermes Agent",
      "application_id": "hermes-agent",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. transport : chat_completions, pour OpenAI Chat ; anthropic_messages, pour Anthropic Messages ; codex_responses, pour OpenAI Responses. LLM_MODEL dans .env n’est plus utilisé ; OPENAI_BASE_URL s’applique seulement au fournisseur openai-api. Pour anthropic_messages, donnez une adresse sans /v1 : le SDK Anthropic ajoute lui-même /v1/messages. Les tâches auxiliaires, comme l’analyse des images et la compression de l’historique, utilisent par défaut le même modèle principal.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "9f1c15e77e2bde3e1634f19e867d5c0aec34bb0433515ce418f50b51eb734a0d",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/hermes-agent/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "9f1c15e77e2bde3e1634f19e867d5c0aec34bb0433515ce418f50b51eb734a0d",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenClaw",
      "application_id": "openclaw",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adaptateurs api : openai-completions, par défaut si baseUrl est défini ; openai-responses, uniquement si le serveur prend en charge /v1/responses, ce qui est le cas d’Ailoot ; anthropic-messages ; google-generative-ai ; et d’autres. Les exemples OpenClaw donnent baseUrl sans /v1 pour anthropic-messages. OpenClaw peut transmettre des images si input du modèle contient \"image\". Les exemples Claude restent en texte seul : dans l’instantané du catalogue du 2026-09-30, ces méthodes n’annoncent pas d’entrée image. Ajoutez \"image\" uniquement pour un modèle dont la fiche actuelle annonce les images en entrée et le format API choisi. Par exemple, gemini-3.6-flash annonce une entrée image dans OpenAI Chat dans cet instantané ; la prise en charge réelle dépend de la fiche et du format. Le chemin du fichier principal provient de l’usage courant d’OpenClaw ; la page consultée mentionne aussi ~/.openclaw/agents/<agentId>/agent/models.json.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "2a0fc98056c2284ab08bee888996cbe1c2ca211cff274caca636a4b8356f4fc1",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/openclaw/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "2a0fc98056c2284ab08bee888996cbe1c2ca211cff274caca636a4b8356f4fc1",
      "version_match": null,
      "versions": null
    },
    {
      "application": "opencode",
      "application_id": "opencode",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. @ai-sdk/openai-compatible utilise /v1/chat/completions. Pour les modèles nécessitant /v1/responses, la documentation opencode indique @ai-sdk/openai. Elle ne décrit pas de fournisseur compatible Anthropic avec baseURL personnalisé. Choisissez un modèle dont le catalogue actuel annonce OpenAI Chat. Dans l’instantané du 2026-09-30, gemini-3.6-flash possède ce format ; vérifiez les fiches des autres modèles Gemini. Ce chemin n’utilise pas le format natif Gemini. Une méthode dans le catalogue ne prouve pas un essai réel d’une version précise du client.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "9c8221250c05615e88beb4e9e1db2ef1000d34b96a0cb6bf8dd45745c8642a1f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/opencode/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "9c8221250c05615e88beb4e9e1db2ef1000d34b96a0cb6bf8dd45745c8642a1f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Qwen Code",
      "application_id": "qwen-code",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Types de protocole : openai, pour Chat Completions ; anthropic ; gemini ; vertex-ai. Pour openai, baseUrl inclut /v1. Les exemples anthropic et gemini de la documentation ne donnent pas de baseUrl : nous recommandons donc openai. Choisissez pour ce type un modèle dont le catalogue indique OpenAI Chat : gemini-3.6-flash le possède. Les autres modèles Gemini peuvent avoir des formats différents ; vérifiez chaque fiche. La configuration settings.json lit la clé dans AILOOT_API_KEY, via envKey : définissez-la avec export AILOOT_API_KEY=sk-... ou AILOOT_API_KEY=sk-... dans ~/.qwen/.env, sinon Qwen Code démarre avec une clé vide et reçoit une erreur 401.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "5bc5e6c5ea5cc985fc85920bdac6e74cd0a3b85e03f41aeb77f60eacc75d2f41",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/qwen-code/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "5bc5e6c5ea5cc985fc85920bdac6e74cd0a3b85e03f41aeb77f60eacc75d2f41",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Gemini CLI",
      "application_id": "gemini-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse sans /v1beta : le SDK ajoute lui-même /v1beta/models/<model> :generateContent. L’adresse doit utiliser HTTPS. La clé est transmise dans l’en-tête x-goog-api-key, accepté par Ailoot. Seuls les modèles dont le catalogue indique le format Gemini conviennent. Avant de lancer une requête, vérifiez que l’ID exact et cette méthode sont disponibles pour votre clé. Ailoot fournit la réponse payante Gemini en entier après le calcul du coût, et non mot à mot : le texte n’apparaît donc pas immédiatement lors des réponses longues.",
        "description": "Agent dans le terminal · Gemini",
        "formats": [
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "1354ff07fdf2c46693042ebde67742b75d3dcf2d64d1c3012d4e41580a816f7e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/gemini-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "1354ff07fdf2c46693042ebde67742b75d3dcf2d64d1c3012d4e41580a816f7e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Kimi CLI",
      "application_id": "kimi-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Types : openai_legacy pour Chat Completions avec base_url incluant /v1 ; openai_responses pour Responses avec /v1 ; anthropic sans /v1 ; gemini avec base_url à la racine Google, soit https://api.ailoot.ai chez nous. SearchWeb fonctionne seulement sur la plateforme Moonshot ; avec une autre adresse API, FetchURL passe au téléchargement local.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "49389a9d917cc1041b829844cfe2864f790478f0eac17621f908a775356e722f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/kimi-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "49389a9d917cc1041b829844cfe2864f790478f0eac17621f908a775356e722f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Crush",
      "application_id": "crush",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le type openai-compat utilise OpenAI Chat avec une adresse incluant /v1. Le type anthropic utilise Messages avec une adresse sans /v1 : Crush la transmet à anthropic-sdk-go, qui ajoute lui-même /v1/messages. L’exemple du README Crush avec /v1 produirait /v1/v1/messages et une erreur 404. La clé est transmise dans x-api-key, accepté par Ailoot. Si la liste des modèles est vide, openai-compat la charge depuis /v1/models. crushrc est exécuté comme du code : ne lancez pas Crush dans des dossiers tiers contenant ce fichier. Dans cet exemple, Claude utilise supports-images = false : l’instantané du catalogue du 2026-09-30 n’annonce que du texte pour le format Messages choisi. Si votre version de Crush accepte cette option, ne l’activez que pour un modèle dont la fiche actuelle annonce une entrée image dans le format API choisi ; une option du client n’ajoute pas cette capacité au modèle.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "361d690e0c7e49afb7ccd707a6492761314599f181d4af2ca26a66c089b7fb0f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/crush/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "361d690e0c7e49afb7ccd707a6492761314599f181d4af2ca26a66c089b7fb0f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Aider",
      "application_id": "aider",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le préfixe openai/ est obligatoire : Aider envoie ainsi, via LiteLLM, les requêtes à /v1/chat/completions, compatible OpenAI. Pour un modèle inconnu d’Aider, un avertissement indique que le contexte est inconnu ; ce n’est pas une erreur. Cette page de documentation ne décrit pas d’adresse Anthropic avec une base URL personnalisée.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "1d54551c5ceed976dc46a6b2118a8dde1713fcc3b11b3f31f386276345142ca8",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/aider/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "1d54551c5ceed976dc46a6b2118a8dde1713fcc3b11b3f31f386276345142ca8",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Goose",
      "application_id": "goose",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Moteurs de fournisseur personnalisé : openai, anthropic, ollama. L’exemple Goose définit base_url pour engine openai avec le chemin complet jusqu’à /v1/chat/completions. Pour le fournisseur intégré, OPENAI_HOST est la racine sans chemin, et OPENAI_BASE_PATH le chemin, par défaut v1/chat/completions. Goose ignore la clé dans config.yaml : utilisez une variable ou le trousseau de clés. Le dépôt a été déplacé vers aaif-goose/goose.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "1a4bca360201ce785c2821c4bdbfa1754c7ae8b7f7c7f6e0f949eb940ce28474",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/goose/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "1a4bca360201ce785c2821c4bdbfa1754c7ae8b7f7c7f6e0f949eb940ce28474",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Factory Droid",
      "application_id": "factory-droid",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. provider : anthropic utilise Messages API, avec baseUrl comme chez Anthropic, sans /v1 ; openai utilise Responses API avec /v1 ; generic-chat-completion-api utilise Chat Completions avec /v1. Pour anthropic, la clé est transmise par défaut dans x-api-key, accepté par Ailoot ; \"authMode\" : \"bearer\" bascule vers Authorization. Les clés restent locales. Factory ne teste intégralement que les API officielles Anthropic et OpenAI.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "7bacf475ee68d04cab7939c7b4c0a0f2eb71f0ba7c9f9e0793433aa2b66d4a23",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/factory-droid/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "7bacf475ee68d04cab7939c7b4c0a0f2eb71f0ba7c9f9e0793433aa2b66d4a23",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Amp",
      "application_id": "amp",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Formats Custom URL : chat-completions (<base>/chat/completions), responses (<base>/responses), anthropic-messages (<base>/v1/messages, sans doubler /v1), google-genai (<base>/models/<model> :streamGenerateContent). La clé est transmise via Authorization : Bearer. Le mapping utilise les ID canoniques Amp de forme provider/model ; la flèche définit l’ID envoyé à Ailoot. Les modèles non couverts par la connexion sont fournis directement par Amp contre ses propres crédits. La documentation exige un hôte accessible depuis Amp : l’adresse est publique, cette condition est remplie.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "2471c74417dac59b56506e82b7790606a39ce241e9e916278bee734d764574a8",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/amp/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "2471c74417dac59b56506e82b7790606a39ce241e9e916278bee734d764574a8",
      "version_match": null,
      "versions": null
    },
    {
      "application": "AIChat",
      "application_id": "aichat",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Dans l’exemple de configuration AIChat, api_base pour claude inclut /v1, et celui pour gemini inclut /v1beta; utilisez les mêmes suffixes pour Ailoot. Les trois clients donnent accès aux trois formats Ailoot : OpenAI, Anthropic et Gemini.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "d67387b184e5d1a760d14cf339a4bc3043f71d9f8722948bcc971e1f611b699a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/aichat/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "d67387b184e5d1a760d14cf339a4bc3043f71d9f8722948bcc971e1f611b699a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Continue CLI",
      "application_id": "continue-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Pour les services compatibles OpenAI, Continue utilise provider : openai et apiBase avec /v1. L’extension et le CLI partagent le même format de configuration ; le fichier est transmis avec --config.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "6b931869e96b97d9070b2940d5081f5910052b35f9bd885d20ad344de269cec4",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/continue-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "6b931869e96b97d9070b2940d5081f5910052b35f9bd885d20ad344de269cec4",
      "version_match": null,
      "versions": null
    },
    {
      "application": "ForgeCode",
      "application_id": "forge",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La configuration via .env est marquée comme obsolète : au premier lancement, Forge transfère les variables dans son stockage de fichiers. Le README ne donne pas les libellés exacts de l’assistant provider login.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "b550a92f4872923a5989c5e71d095608c651e448fb714b75620782c74de4ef5e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/forge/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "b550a92f4872923a5989c5e71d095608c651e448fb714b75620782c74de4ef5e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "GitHub Copilot CLI",
      "application_id": "github-copilot-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Types : openai, par défaut, pour tout serveur compatible OpenAI ; azure ; anthropic. Le modèle doit prendre en charge les appels d’outils et le streaming. COPILOT_PROVIDER_WIRE_API permet de choisir le protocole, mais ses valeurs ne sont pas listées sur la page. Les limites peuvent être définies avec COPILOT_PROVIDER_MAX_PROMPT_TOKENS / MAX_OUTPUT_TOKENS.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "2fb817592f821117fad97ec26242cd120c8b20c946ee93c4394d8d8ede9b820c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/github-copilot-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "2fb817592f821117fad97ec26242cd120c8b20c946ee93c4394d8d8ede9b820c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "gptme",
      "application_id": "gptme",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Tout serveur compatible OpenAI ; la clé est recherchée dans api_key, puis api_key_env, puis <NAME>_API_KEY. Liste des fournisseurs : gptme-util providers list.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "c9d427e0d9609d9effbfb1e157a6721ec0ef89f71b8c1257f6fdaf395d30dfb7",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/gptme/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "c9d427e0d9609d9effbfb1e157a6721ec0ef89f71b8c1257f6fdaf395d30dfb7",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Kilo Code CLI",
      "application_id": "kilo-code-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La boîte de dialogue Custom provider propose les protocoles OpenAI Compatible (Chat Completions), OpenAI Responses et Anthropic Messages. {env:VAR} fonctionne uniquement dans la configuration globale de confiance, ~/.config/kilo ; dans le kilo.json du projet, la clé n’est pas chargée depuis la variable.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "bc9cc5fd72406bf0fd7c9f7fbbcb8f2e80a830b1d81a77a3b828dea1ed484a67",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/kilo-code-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "bc9cc5fd72406bf0fd7c9f7fbbcb8f2e80a830b1d81a77a3b828dea1ed484a67",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LLM",
      "application_id": "llm-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Chat Completions est utilisé par défaut ; responses : true fait passer le modèle à /responses. Avec api_base défini, la clé OpenAI n’est pas envoyée : api_key_name est nécessaire. Il s’agit d’un utilitaire CLI pour envoyer des requêtes, pas d’un agent.",
        "description": "Agent dans le terminal · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "e62393c65682008ce91cda6eca84886bf0428f96ecad248909f7124eab0449f1",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/llm-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "e62393c65682008ce91cda6eca84886bf0428f96ecad248909f7124eab0449f1",
      "version_match": null,
      "versions": null
    },
    {
      "application": "mini-SWE-agent",
      "application_id": "mini-swe-agent",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Utilise LiteLLM : model_kwargs est transmis directement à litellm.completion. Sans registre de prix, LiteLLM signale un coût inconnu ; désactivez le suivi avec cost_tracking : \"ignore_errors\", ou MSWEA_COST_TRACKING=ignore_errors. L’utilisation d’OPENAI_API_KEY est standard pour LiteLLM, mais n’est pas présentée sur cette page mini-SWE-agent.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "c0c551bc81b0ffa0cabc8643c842d9f2574c9f9e69abfaba7f35306faa81c778",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/mini-swe-agent/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "c0c551bc81b0ffa0cabc8643c842d9f2574c9f9e69abfaba7f35306faa81c778",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenHands CLI",
      "application_id": "openhands-cli",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. OpenHands utilise LiteLLM ; pour un proxy OpenAI, la documentation demande Custom Model sous la forme openai/<model> et Base URL du proxy. Les changements via --override-with-envs ne sont pas enregistrés. Dans l’interface web : Settings → LLM → Advanced → Custom Model, Base URL, API Key.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "487fd2296ab010cd320b05215ed51122dec5d9f3908681d53450ef4f37caa16f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/openhands-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "487fd2296ab010cd320b05215ed51122dec5d9f3908681d53450ef4f37caa16f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Pi",
      "application_id": "pi",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation Pi autorise explicitement les endpoints compatibles OpenAI, Anthropic et Google via models.json ; l’exemple utilise api : openai-completions. apiKey accepte $NAME/${NAME}, une valeur littérale ou une !commande. Le fichier est relu lors de l’ouverture de /model.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "8d0842ad090d1280381d1cf7af577639c8b7690b2a0c6e1b3c6eb3367fc33472",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/pi/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "8d0842ad090d1280381d1cf7af577639c8b7690b2a0c6e1b3c6eb3367fc33472",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Plandex",
      "application_id": "plandex",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Les fournisseurs personnalisés fonctionnent uniquement dans Plandex autohébergé ; dans le cloud avec des clés BYO, seuls les fournisseurs intégrés sont acceptés. Tous les fournisseurs personnalisés doivent être compatibles OpenAI, Chat Completions. Ajoutez ensuite le modèle à votre model pack.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "8c2eb5f184c64e85aa3854acf554871c8081d635add76a8e7a1a12c2ecfb783c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/plandex/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "8c2eb5f184c64e85aa3854acf554871c8081d635add76a8e7a1a12c2ecfb783c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Trae Agent",
      "application_id": "trae-agent",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. YAML doit utiliser uniquement des espaces, sans tabulations. Pour le format Anthropic, utilisez provider : anthropic et ANTHROPIC_BASE_URL. Le README ne précise pas l’attente exacte concernant /v1 pour anthropic ; utilisez https://api.ailoot.ai.",
        "description": "Agent dans le terminal · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "56b53bd921eb32a48bdb02c283e3d57df43b0cec4503658ef3279841a014c9ff",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/trae-agent/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "56b53bd921eb32a48bdb02c283e3d57df43b0cec4503658ef3279841a014c9ff",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Warp",
      "application_id": "warp",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. OpenAI Chat Completions uniquement, POST /v1/chat/completions. Les requêtes passent par les serveurs Warp : la clé est stockée localement, mais transmise au backend Warp à chaque requête. Le mode Auto et les routeurs personnalisés utilisent toujours des crédits Warp ; les agents cloud n’utilisent pas cet endpoint. Disponible avec Free et les offres payantes, pour les particuliers et les équipes jusqu’à 10 personnes. Choisissez un modèle dont le catalogue actuel annonce OpenAI Chat. Dans l’instantané du 2026-09-30, gemini-3.6-flash possède ce format ; vérifiez les fiches des autres modèles Gemini. Ce chemin n’utilise pas le format natif Gemini. Une méthode dans le catalogue ne prouve pas un essai réel d’une version précise du client.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "41cd2a9f36fb4fef66da72b99cd4e09772becdfca4009914b3e409d76eb86cbf",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/warp/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "41cd2a9f36fb4fef66da72b99cd4e09772becdfca4009914b3e409d76eb86cbf",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cline",
      "application_id": "cline",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. OpenAI Compatible utilise /v1/chat/completions : l’adresse inclut donc /v1. Le mode Anthropic utilise /v1/messages avec une adresse sans /v1, mais sa liste ne contient que les noms de modèles Anthropic ; les autres modèles Ailoot sont accessibles via OpenAI Compatible. Le mode agent nécessite un modèle capable d’appeler des outils. Gemini 3.1 Pro n’est pas disponible via chat/completions, seulement via Gemini et Anthropic : utilisez ici gemini-3.6-flash.",
        "description": "Extension d’éditeur · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "ec9a1853a0cd468fdb5e0215fad17844e8164e8e18ee80f04a312f5df3ee5e06",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/cline/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "ec9a1853a0cd468fdb5e0215fad17844e8164e8e18ee80f04a312f5df3ee5e06",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Roo Code",
      "application_id": "roo-code",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Roo Code appelle les outils uniquement au format OpenAI : le modèle doit donc prendre en charge tools dans /v1/chat/completions. Le mode Anthropic utilise /v1/messages avec une adresse sans /v1.",
        "description": "Extension d’éditeur · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "bb8ca38bf910d2dafff7f67f91149b2259b95233a74561c859de4aa51a0eb339",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/roo-code/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "bb8ca38bf910d2dafff7f67f91149b2259b95233a74561c859de4aa51a0eb339",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Kilo Code",
      "application_id": "kilo-code",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Kilo appelle {Base URL}/models et affiche automatiquement les modèles ; notre GET /v1/models renvoie tout le catalogue. Vous pouvez également définir le chemin complet .../v1/chat/completions. Les en-têtes personnalisés sont pris en charge.",
        "description": "Extension d’éditeur · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "0fc75ca96b3d2b303b0347ef99fb6cc6a9af4d75da5ac29d538f41b296253dc2",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/kilo-code/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "0fc75ca96b3d2b303b0347ef99fb6cc6a9af4d75da5ac29d538f41b296253dc2",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Continue",
      "application_id": "continue",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. apiBase doit se terminer par /v1. Pour les noms de type gpt-5 ou de la série o, Continue peut choisir /v1/responses automatiquement ; nos gpt-* prennent en charge /v1/responses et /v1/chat/completions. useResponsesApi : false impose chat/completions. useLegacyCompletionsEndpoint n’est pas nécessaire.",
        "description": "Extension d’éditeur · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "3cd18bbf965e8f45c1558f0af4ab13caf941c74e1449a3045fd8efb25937b96f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/continue/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "3cd18bbf965e8f45c1558f0af4ab13caf941c74e1449a3045fd8efb25937b96f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Zed",
      "application_id": "zed",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Pour openai_compatible, l’adresse inclut /v1 et utilise /v1/chat/completions ; capabilities.chat_completions = false fait passer le modèle à /v1/responses. Pour anthropic_compatible, l’adresse exclut /v1 et utilise /v1/messages ; Zed transmet la clé dans x-api-key, accepté par Ailoot. Par défaut, images = false et parallel_tool_calls = false. Zed peut transmettre des images, mais n’activez images que pour un modèle dont la fiche actuelle annonce une entrée image dans le format API choisi. Les exemples GPT et Claude gardent images = false : l’instantané du 2026-09-30 n’annonce que du texte pour eux. Par exemple, gemini-3.6-flash annonce une entrée image pour OpenAI Chat dans cet instantané ; la prise en charge réelle dépend de la fiche et du format. reasoning_effort existe pour les modèles de raisonnement. Les valeurs max_tokens de l’exemple correspondent au contexte ; consultez le catalogue pour les limites exactes.",
        "description": "Éditeur de code · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "144786b5199c2efcb1540fc44f7dea19e96870212dec8e4f47e30b92f4edac85",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/zed/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "144786b5199c2efcb1540fc44f7dea19e96870212dec8e4f47e30b92f4edac85",
      "version_match": null,
      "versions": null
    },
    {
      "application": "VS Code + Copilot Chat",
      "application_id": "vscode-copilot-byok",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. url est le chemin COMPLET de l’endpoint. Valeurs apiType : chat-completions ; responses, url .../v1/responses ; messages, url .../v1/messages. BYOK fonctionne sans offre Copilot ni connexion GitHub, mais uniquement dans le chat et l’agent ; les suggestions intégrées restent sur Copilot. Les administrateurs d’organisation Business/Enterprise peuvent désactiver la politique BYOK. Les limites de tokens ci-dessus sont des exemples : utilisez les valeurs du catalogue. Dans ces exemples, vision = false : l’instantané du catalogue du 2026-09-30 n’annonce que du texte pour GPT/OpenAI Chat et Claude/Anthropic Messages. Si votre version de VS Code propose vision, ne l’activez que pour un modèle dont la fiche actuelle annonce une entrée image dans le format API choisi ; un champ dans le client ne confirme pas cette capacité du modèle.",
        "description": "Extension d’éditeur · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "4eefe63407f04b40f9fed69d6db662cb1c72d0716f6457c242c4e57bf391b93a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/vscode-copilot-byok/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "4eefe63407f04b40f9fed69d6db662cb1c72d0716f6457c242c4e57bf391b93a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "JetBrains AI Assistant",
      "application_id": "jetbrains-ai-assistant",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Sélectionnez OpenAI-compatible, indiquez https://api.ailoot.ai/v1 dans URL et saisissez votre API Key. Cliquez sur Test Connection, puis Apply, et choisissez un modèle dans AI Chat. Affectez-le aux fonctions de l’IDE dans Models Assignment. Activez Tool calling uniquement si le modèle prend en charge les outils ; la complétion se configure séparément.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "dee6fc239e3cca4a5c636bf9e1c977192a766d2831a0f7ffd1717e6bae3fff90",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/jetbrains-ai-assistant/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "dee6fc239e3cca4a5c636bf9e1c977192a766d2831a0f7ffd1717e6bae3fff90",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Xcode",
      "application_id": "xcode",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Apple exige la prise en charge de Chat Completions et des réponses à {URL}/v1/models et {URL}/v1/chat/completions. Ailoot accepte la clé dans x-api-key et Authorization : Bearer ; d’après les retours, lorsque l’en-tête Authorization est choisi, Xcode ajoute lui-même le préfixe Bearer. Les agents Xcode se configurent séparément et ne sont pas couverts par cette instruction.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "c53e956b9da5e0ce71d6b40d4518a02d280a634af8c99dab6b81092c928a6e92",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/xcode/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "c53e956b9da5e0ce71d6b40d4518a02d280a634af8c99dab6b81092c928a6e92",
      "version_match": null,
      "versions": null
    },
    {
      "application": "avante.nvim",
      "application_id": "avante-nvim",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Dans le wiki du plugin, l’adresse compatible OpenAI se termine par /v1 ; le plugin ajoute /chat/completions. Le fournisseur intégré claude utilise une adresse comme https://api.anthropic.com : pour Ailoot, n’ajoutez donc pas /v1. Les fournisseurs personnalisés sans __inherited_from nécessitent une adresse complète et leurs propres fonctions d’analyse de réponse.",
        "description": "Module d’extension Neovim · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "cb4c38a80a07cd25387e525bbfce3e0d7d01aec21ef862e51e50b68bfa112879",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/avante-nvim/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "cb4c38a80a07cd25387e525bbfce3e0d7d01aec21ef862e51e50b68bfa112879",
      "version_match": null,
      "versions": null
    },
    {
      "application": "codecompanion.nvim",
      "application_id": "codecompanion-nvim",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. openai_compatible distingue l’hôte, env.url sans /v1, du chemin, env.chat_url. Les valeurs env peuvent être un nom de variable d’environnement, cmd :..., file :... ou une fonction Lua. L’adaptateur anthropic peut également être étendu avec une url personnalisée pour /v1/messages.",
        "description": "Module d’extension Neovim · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "82cedf4fa941e32a3043531eb7d1ae00c27cda8fd13e4fa0211115a7bbb11669",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/codecompanion-nvim/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "82cedf4fa941e32a3043531eb7d1ae00c27cda8fd13e4fa0211115a7bbb11669",
      "version_match": null,
      "versions": null
    },
    {
      "application": "gptel",
      "application_id": "gptel",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. :host contient seulement le nom d’hôte, sans https:// ni chemin ; le chemin se définit dans :endpoint. gptel-make-anthropic envoie x-api-key et anthropic-version, acceptés par Ailoot.",
        "description": "Paquet Emacs · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "71b7bb8054ad48b8d99b996c9bffebc44e3384a8c3cd8e4b75a566359b60086f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/gptel/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "71b7bb8054ad48b8d99b996c9bffebc44e3384a8c3cd8e4b75a566359b60086f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Theia IDE",
      "application_id": "theia",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. url est l’adresse de base et se termine par /v1. Pour les modèles non-OpenAI, developerMessageSettings : \"system\" est un choix sûr.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "2bf9e2dd54ec74258e7f313e307ad0204220adf3000dcac002d2745d24af446a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/theia/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "2bf9e2dd54ec74258e7f313e307ad0204220adf3000dcac002d2745d24af446a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Trae IDE",
      "application_id": "trae",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Avec Full URL désactivé, Trae ajoute le chemin du format choisi : adresse avec /v1 pour OpenAI, sans /v1 pour Anthropic. Avec Full URL activé, saisissez https://api.ailoot.ai/v1/chat/completions ou https://api.ailoot.ai/v1/messages. Model Series adapte les suggestions à la famille de modèles.",
        "description": "Éditeur de code · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "97fdaa68d69025f0236865333cf1f6825989782faab330f7ff16f294b6952d1c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/trae/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "97fdaa68d69025f0236865333cf1f6825989782faab330f7ff16f294b6952d1c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Open WebUI",
      "application_id": "open-webui",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Format OpenAI Chat Completions ; l’URL doit inclure /v1, sans slash final. La liste vient de /v1/models. Avec un grand catalogue, 252 modèles, limitez Model IDs et activez le cache de liste avec Cache Base Model List / ENABLE_BASE_MODELS_CACHE=True. Les embeddings RAG possèdent un réglage distinct, RAG_OPENAI_API_BASE_URL.",
        "description": "Clavardage Web, serveur autohébergé · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "8c2509673e47b5bf810c0dc7b4a7d1c96791731936565be0568ea179533e1bad",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/open-webui/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "8c2509673e47b5bf810c0dc7b4a7d1c96791731936565be0568ea179533e1bad",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LibreChat",
      "application_id": "librechat",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Un custom endpoint ordinaire utilise OpenAI Chat Completions avec baseURL incluant /v1. provider : 'anthropic' active le client natif /v1/messages ; l’exemple de documentation donne baseURL sans /v1 pour Anthropic, https://api.anthropic.com : utilisez donc https://api.ailoot.ai. fetch : true charge la liste depuis /v1/models.",
        "description": "Clavardage Web, serveur autohébergé · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "07b92cb168b8838e9bfd68a7460ea910595d522078557901cd9351e696359176",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/librechat/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "07b92cb168b8838e9bfd68a7460ea910595d522078557901cd9351e696359176",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cherry Studio",
      "application_id": "cherry-studio",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation confirme les protocoles OpenAI, Anthropic, OpenAI Responses et Gemini, ainsi que l’aperçu du chemin final sous le champ, sans décrire les règles d’ajout de /v1 : fiez-vous à l’aperçu. Nos trois formats, Chat Completions, Responses et Messages, conviennent.",
        "description": "Application de bureau · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "7005ed796423657b87dc101d226715b8bf2d4c85d1e99c32be673581ad105b5e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/cherry-studio/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "7005ed796423657b87dc101d226715b8bf2d4c85d1e99c32be673581ad105b5e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Chatbox",
      "application_id": "chatbox",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation donne API Host sans /v1, par exemple https://api.openai.com, et le chemin par défaut /v1/chat/completions. Le type Google Gemini compatible existe aussi, mais n’a pas été vérifié pour notre /v1beta. L’import JSON de configuration, type : 'openai', apiHost et apiPath, est disponible depuis 1.15.1 via chatbox://provider/import?config=<base64>. Pour les GPT et Claude présentés, vision est désactivé : l’instantané du catalogue du 2026-09-30 n’annonce que du texte au format OpenAI Chat. Si votre version de Chatbox propose vision, ne l’activez que pour un modèle dont la fiche actuelle annonce une entrée image dans le format API choisi ; pouvoir joindre une image dans le client ne prouve pas sa prise en charge par le modèle.",
        "description": "Ordinateur et téléphone · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "dc437ed319179be08b510101e8642afa324f00dbb189735e31e5142777654b58",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/chatbox/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "dc437ed319179be08b510101e8642afa324f00dbb189735e31e5142777654b58",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LobeChat",
      "application_id": "lobechat",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. OPENAI_PROXY_URL vaut par défaut https://api.openai.com/v1 : incluez donc /v1. ANTHROPIC_PROXY_URL vaut par défaut https://api.anthropic.com, sans /v1. GOOGLE_PROXY_URL permet en principe de connecter le format Gemini, https://api.ailoot.ai, mais nous n’avons pas vérifié cette option. Utilisez le mode serveur : les appels directs depuis le navigateur peuvent actuellement être refusés par l’API Ailoot selon les règles CORS.",
        "description": "Clavardage Web, serveur autohébergé · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "34a68f5562fcc6aa466016aae9d4c8bc7973c8313ae1544cb3369124dedf9c5a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/lobechat/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "34a68f5562fcc6aa466016aae9d4c8bc7973c8313ae1544cb3369124dedf9c5a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Jan",
      "application_id": "jan",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Selon la documentation, Base URL doit inclure /v1 pour les fournisseurs compatibles OpenAI, sinon une erreur 404 est renvoyée ; le slash final est retiré. L’exemple LiteLLM pour le mode Anthropic est sans /v1. Les capacités du modèle, tools et vision, se définissent manuellement pour les fournisseurs personnalisés. Des clés de secours sont prises en charge, avec nouvelle tentative uniquement pour 401/403/429.",
        "description": "Application de bureau · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "ae9ed3ff8559dbfdc2ee25974e8dcf7a480de05d00e799b4ab067ab34aa8d45b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/jan/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "ae9ed3ff8559dbfdc2ee25974e8dcf7a480de05d00e799b4ab067ab34aa8d45b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "SillyTavern",
      "application_id": "sillytavern",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Selon la documentation, en cas de problème de connexion, ajoutez /v1, mais PAS /chat/completions. La liste des modèles est chargée si le serveur fournit /v1/models, ce qui est notre cas.",
        "description": "Clavardage de jeu de rôle · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "bfa59d26c7b694d6f2aa9c7a1835c80e56dbc77235979162e1b96a2f9e41bc8a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/sillytavern/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "bfa59d26c7b694d6f2aa9c7a1835c80e56dbc77235979162e1b96a2f9e41bc8a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "AnythingLLM",
      "application_id": "anythingllm",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation présente ce fournisseur comme destiné aux développeurs. Au besoin, utilisez GENERIC_OPEN_AI_MODEL_MAX_TOKEN_KEY='max_completion_tokens'. Pour les embeddings, un composant generic-openai distinct utilise EMBEDDING_BASE_PATH + GENERIC_OPEN_AI_EMBEDDING_API_KEY : modèle nemotron-3-embed via /v1/embeddings.",
        "description": "Clavardage avec documents · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "52e5fc30a350cf5e97cc1eab4123131d8eaf3d4442e95fa7c2b9b24fa89171ea",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/anythingllm/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createEmbeddings",
          "path": "/v1/embeddings",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "52e5fc30a350cf5e97cc1eab4123131d8eaf3d4442e95fa7c2b9b24fa89171ea",
      "version_match": null,
      "versions": null
    },
    {
      "application": "big-AGI",
      "application_id": "big-agi",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation décrit ces variables comme un remplacement du backend host pour OpenAI et Anthropic, pour des proxys et des endpoints personnalisés. Elle indique « host », d’où l’adresse sans /v1, mais ne précise pas le format exact du chemin : vérifiez-le avec la première requête.",
        "description": "Clavardage Web, serveur autohébergé · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "6a3d2f14c132cecd42467649fbaabe64c56d65b280a2d6f0ac55ce9267a27892",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/big-agi/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "6a3d2f14c132cecd42467649fbaabe64c56d65b280a2d6f0ac55ce9267a27892",
      "version_match": null,
      "versions": null
    },
    {
      "application": "BoltAI",
      "application_id": "boltai",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. L’adresse complète de chat completions est nécessaire. Pour qu’AI Command l’utilise, définissez ce service comme principal. Cette instruction vient de l’aide BoltAI ; les fenêtres peuvent différer dans BoltAI 2.",
        "description": "Application Mac · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "9a2f2dfe8d99458cb5010522ea41eb650a369051d4cd5ce3ce71d49913a5aa90",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/boltai/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "9a2f2dfe8d99458cb5010522ea41eb650a369051d4cd5ce3ce71d49913a5aa90",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Hugging Face Chat UI",
      "application_id": "hugging-face-chat-ui",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Chat UI utilise uniquement des API compatibles OpenAI via OPENAI_BASE_URL et charge la liste des modèles depuis /models.",
        "description": "Clavardage Web, serveur autohébergé · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "8fbea0ea34ed0f88201836ce12ec62d1d443357401c5098f9637388fa207693c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/hugging-face-chat-ui/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "8fbea0ea34ed0f88201836ce12ec62d1d443357401c5098f9637388fa207693c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Msty Studio",
      "application_id": "msty-studio",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation confirme un fournisseur compatible OpenAI personnalisé, mais ne précise pas le format de l’adresse. /v1 est la racine standard d’OpenAI API ; en cas d’erreur 404, vérifiez l’option sans /v1. Aucun endpoint personnalisé compatible Anthropic n’est décrit.",
        "description": "Application de bureau · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "9e88ce354af16654be895566d1b125e69501baeef5338c156c0ca813a647d76c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/msty-studio/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "9e88ce354af16654be895566d1b125e69501baeef5338c156c0ca813a647d76c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "NextChat",
      "application_id": "nextchat",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Pour cette configuration, utilisez OpenAI Chat via le serveur NextChat. Lors du déploiement sur Vercel ou Docker, définissez BASE_URL=https://api.ailoot.ai sans /v1, OPENAI_API_KEY, CUSTOM_MODELS et DEFAULT_MODEL. Redéployez le serveur après toute modification de ces variables.",
        "description": "Clavardage Web, serveur autohébergé · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "c071740fdc0a22fb3c9fd515db7cdb95923d7a2a922ea68dc30c02708f1fd3e7",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/nextchat/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "c071740fdc0a22fb3c9fd515db7cdb95923d7a2a922ea68dc30c02708f1fd3e7",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Obsidian Copilot",
      "application_id": "obsidian-copilot",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La liste des modèles vient de /v1/models ; vous pouvez aussi saisir un modèle manuellement. Si Test réussit mais que Quick Chat n’envoie aucun message, activez Enable CORS pour le fournisseur ; la réponse arrivera en entier, sans streaming. Les clés sont stockées dans Obsidian Keychain.",
        "description": "Module d’extension Obsidian · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "dd8e23361e0f9d398c9c6916c85f8a7421a0a024695e4fad2657519c56e1e41e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/obsidian-copilot/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "dd8e23361e0f9d398c9c6916c85f8a7421a0a024695e4fad2657519c56e1e41e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Page Assist",
      "application_id": "page-assist",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation confirme Custom avec API URL et une clé, sans préciser le format de l’URL ; /v1 est la racine standard d’OpenAI API. Le chargement automatique des modèles est garanti seulement pour Ollama, LM Studio et Llamafile ; les autres modèles doivent être ajoutés manuellement.",
        "description": "Extension de navigateur · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "ebf1c28952fb44d5847a568ae73cf64751bc3d089321be4bd02c28824c4269fa",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/page-assist/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "ebf1c28952fb44d5847a568ae73cf64751bc3d089321be4bd02c28824c4269fa",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Raycast AI",
      "application_id": "raycast-ai",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. base_url est un endpoint compatible OpenAI sans le suffixe /chat/completions. Raycast relit le fichier sans redémarrage. Si abilities n’est pas défini, tools et vision sont considérés comme non pris en charge. Les modèles apparaissent dans Quick AI, AI Chat et AI Commands. Cet exemple utilise vision.supported = false : l’instantané du catalogue du 2026-09-30 n’annonce que du texte pour Claude/OpenAI Chat. Si votre version de Raycast accepte ce réglage, n’activez vision que pour un modèle dont la fiche actuelle annonce une entrée image au format OpenAI Chat ; l’option du client ne confirme pas à elle seule la prise en charge des images par l’API.",
        "description": "Lanceur · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "b7097febfc89b05005c1123295e1132496501cea008e61235101d0bdc6d6398b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/raycast-ai/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "b7097febfc89b05005c1123295e1132496501cea008e61235101d0bdc6d6398b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "TypingMind",
      "application_id": "typingmind",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Saisissez le chemin complet de l’endpoint. La clé est transmise dans l’en-tête personnalisé Authorization : Bearer sk-..., accepté par Ailoot. La version web de TypingMind appelle directement l’API depuis le navigateur ; CORS peut actuellement bloquer ces appels, donc la version de bureau est plus fiable. Le type Gemini de TypingMind transmet la clé dans apiKey, qu’Ailoot n’accepte pas : utilisez OpenAI Chat Completions.",
        "description": "Application Web · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "971ad0fa4e2f358cba117ee98adbdacd2632a415c7f2bda73e10da57584e866e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/typingmind/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "971ad0fa4e2f358cba117ee98adbdacd2632a415c7f2bda73e10da57584e866e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI SDK (Python)",
      "application_id": "openai-python-sdk",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse avec /v1 : le SDK ajoute lui-même /chat/completions, /responses, /embeddings, /images/* et /audio/*. Chat Completions et Responses fonctionnent, ce dernier pour les modèles dont le catalogue indique ce format. Le streaming et les outils sont standard. Les erreurs Ailoot arrivent en JSON avec un Request ID et sont interceptées comme openai.APIStatusError.",
        "description": "SDK · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "469bb31db8eb7d86a9ac94be31158bd69461421f96dc7c35aa76283acf7f9421",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/openai-python-sdk/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "469bb31db8eb7d86a9ac94be31158bd69461421f96dc7c35aa76283acf7f9421",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI SDK (Node.js)",
      "application_id": "openai-node-js-sdk",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le README présente baseURL ; la lecture d’OPENAI_BASE_URL apparaît dans le code du client, src/client.ts, avec https://api.openai.com/v1 comme valeur par défaut. L’adresse Ailoot doit inclure /v1. chat.completions et responses sont disponibles.",
        "description": "SDK · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "b612a114d829758d7b2e70a10043862b423b13d8ab81e5bf0b0a8eb3e9767a49",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/openai-node-js-sdk/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "b612a114d829758d7b2e70a10043862b423b13d8ab81e5bf0b0a8eb3e9767a49",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Anthropic SDK (Python)",
      "application_id": "anthropic-python-sdk",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse SANS /v1 : le SDK ajoute lui-même /v1/messages. La passerelle accepte la clé dans x-api-key, utilisé par le SDK, et dans Authorization : Bearer. Le streaming, les outils et /v1/messages/count_tokens fonctionnent. Le traitement par lots, Batches, et Files API ne sont pas annoncés dans le catalogue Ailoot.",
        "description": "SDK · Anthropic Messages",
        "formats": [
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "379a7ed4c8e712671fe0122f77cdba1e6569eee9c78de9cb4728678974ee63cb",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/anthropic-python-sdk/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "countMessageTokens",
          "path": "/v1/messages/count_tokens",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "379a7ed4c8e712671fe0122f77cdba1e6569eee9c78de9cb4728678974ee63cb",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Vercel AI SDK",
      "application_id": "vercel-ai-sdk",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Les fournisseurs utilisent des adresses différentes : compatible OpenAI et Anthropic avec /v1, par défaut https://api.anthropic.com/v1 pour Anthropic ; Google avec /v1beta, par défaut https://generativelanguage.googleapis.com/v1beta. @ai-sdk/openai utilise Responses API par défaut ; pour un modèle sans responses, utilisez openai.chat(\"id\") ou createOpenAICompatible.",
        "description": "SDK · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "6784fcaf25174bd7d9212ea08e1ac393ba842ba06b52bd3797d2f6adaab347c9",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/vercel-ai-sdk/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "6784fcaf25174bd7d9212ea08e1ac393ba842ba06b52bd3797d2f6adaab347c9",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LangChain",
      "application_id": "langchain",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. ChatOpenAI utilise une adresse avec /v1. Selon sa documentation, seule la spécification officielle OpenAI est prise en charge : les champs non standard des modèles tiers, comme reasoning_content, ne sont pas conservés. Pour Claude, préférez ChatAnthropic, avec une adresse sans /v1 ; le SDK ajoute lui-même /v1/messages. Le paramètre base_url et les variables ANTHROPIC_API_URL/ANTHROPIC_BASE_URL sont documentés dans le code de la classe ChatAnthropic, langchain_anthropic/chat_models.py, mais pas sur la page d’intégration. use_responses_api active le mode Responses dans ChatOpenAI.",
        "description": "Cadriciel · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "c4ca1bb5173755f9e092c9d726624c9d0c1558b9708b3e4fa401f65b40207d65",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/langchain/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "c4ca1bb5173755f9e092c9d726624c9d0c1558b9708b3e4fa401f65b40207d65",
      "version_match": null,
      "versions": null
    },
    {
      "application": "CrewAI",
      "application_id": "crewai",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/messages, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le préfixe openai/ ou anthropic/ choisit le fournisseur dans CrewAI ; l’id est envoyé sans préfixe. Pour OpenAI, l’adresse inclut /v1 ; pour Anthropic, elle est sans /v1. La documentation décrit aussi custom_openai=True pour une passerelle compatible OpenAI personnalisée. max_tokens est obligatoire pour Anthropic.",
        "description": "Cadriciel d’agents · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "b4d41772a1a9c7c59e11d16106926fb4216338a5b1ceb66791608e48d9353352",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/crewai/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "b4d41772a1a9c7c59e11d16106926fb4216338a5b1ceb66791608e48d9353352",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Google GenAI SDK (Python)",
      "application_id": "google-genai-python",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse sans /v1beta : le SDK construit lui-même /v1beta/models/{model} :generateContent. La clé est transmise dans x-goog-api-key, accepté par Ailoot. Seuls les modèles au format Gemini sont disponibles. La documentation ne décrit pas d’adresse personnalisée pour la version JavaScript (@google/genai); elle n’est donc pas présentée ici.",
        "description": "SDK · Gemini",
        "formats": [
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "7b75133956529d36073f2eeba1ea732bbd1489ae5cddbdd66431111d66b7f1e9",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/google-genai-python/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "7b75133956529d36073f2eeba1ea732bbd1489ae5cddbdd66431111d66b7f1e9",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LiteLLM",
      "application_id": "litellm",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le préfixe openai/ sélectionne le protocole compatible OpenAI ; Ailoot reçoit l’id sans préfixe. LiteLLM ajoute lui-même /chat/completions et /embeddings. Selon la documentation, en cas d’erreur Not Found, l’adresse doit se terminer par /v1.",
        "description": "SDK · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "4775b8e0a2dce02776051a3edafc4b6b18fbf1fcc0022410a8472e9242b7f890",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/litellm/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "4775b8e0a2dce02776051a3edafc4b6b18fbf1fcc0022410a8472e9242b7f890",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LiteLLM Proxy",
      "application_id": "litellm-proxy",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Ce proxy permet de distribuer des clés internes à votre équipe au-dessus d’une seule clé Ailoot. Les débits Ailoot sont imputés à la clé définie dans api_key. L’adresse inclut /v1.",
        "description": "Passerelle personnalisée · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "7bcdfb4988bfa44584b4a3306761f2663484f7c580c53cdaf24a53cb8b8f640e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/litellm-proxy/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "7bcdfb4988bfa44584b4a3306761f2663484f7c580c53cdaf24a53cb8b8f640e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LlamaIndex",
      "application_id": "llamaindex",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse avec /v1. is_chat_model=True est obligatoire, sinon la classe utilise l’ancien /completions. is_function_calling_model=True permet aux agents d’utiliser les outils. Définissez context_window selon la fiche du modèle dans le catalogue Ailoot.",
        "description": "Cadriciel · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "d273bb9c475f015ffe2abb8914cf32589685731d341118750e145e6b7079f08a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/llamaindex/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "d273bb9c475f015ffe2abb8914cf32589685731d341118750e145e6b7079f08a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Mastra",
      "application_id": "mastra",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. url contient l’adresse de base avec /v1, et non le chemin complet /chat/completions. Chat Completions est utilisé par défaut ; api : \"responses\" active Responses API. La forme d’id \"fournisseur/modèle\" envoie à la passerelle l’id du modèle seul. Dans la documentation, apiKey dans l’objet model est présenté dans un exemple avec des en-têtes, sans description séparée de son utilisation avec url.",
        "description": "Cadriciel d’agents · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "49a6b4b0b8966984768ce6bc84f4268791a1b9c480fd31fc644ba31c44bfb02f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/mastra/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "49a6b4b0b8966984768ce6bc84f4268791a1b9c480fd31fc644ba31c44bfb02f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI Agents SDK",
      "application_id": "openai-agents-sdk",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse avec /v1. Désactivez le traçage avec set_tracing_disabled(True), sinon le SDK essaiera d’envoyer des traces à OpenAI sans clé OpenAI. Chat Completions est disponible uniquement pour les modèles dont le catalogue indique cette méthode et pour lesquels elle est accessible avec votre clé ; Responses, utilisé par défaut par le SDK, uniquement pour les modèles dont le catalogue indique la méthode responses. Les outils intégrés OpenAI (recherche web, fichiers) ne sont pas garantis via une passerelle tierce.",
        "description": "Cadriciel d’agents · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "7621f040a9c2f61dfacbe2a566259291947c9c4c0b932bfc356010b9ed03c672",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/openai-agents-sdk/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "7621f040a9c2f61dfacbe2a566259291947c9c4c0b932bfc356010b9ed03c672",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Pydantic AI",
      "application_id": "pydantic-ai",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Adresse avec /v1. La documentation utilise OpenAIResponsesModel par défaut : réservez-le aux modèles prenant en charge responses et utilisez OpenAIChatModel pour les autres.",
        "description": "Cadriciel d’agents · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "e5f268ac16be6558ee889655b7046ed82dcb1e328f8f2d2a849e98e1b6412934",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/pydantic-ai/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "e5f268ac16be6558ee889655b7046ed82dcb1e328f8f2d2a849e98e1b6412934",
      "version_match": null,
      "versions": null
    },
    {
      "application": "n8n",
      "application_id": "n8n",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La vérification des identifiants appelle /models pour OpenAI, /v1/models pour Anthropic et /v1beta/models pour Gemini ; les trois chemins existent chez Ailoot. Les pages de documentation n8n ne décrivent pas Base URL : ce champ existe dans les identifiants eux-mêmes, dans OpenAiApi.credentials.ts et AnthropicApi.credentials.ts, avec le libellé « Override the default base URL for the API ». Sur n8n Cloud, ne sélectionnez pas « Use Gateway credits », sinon les requêtes ne passeront pas par Ailoot.",
        "description": "Automatisation sans code · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "47a64c23431c32b5625239a98a1c4623a07d3080ba2087b36a76db89089e8050",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/n8n/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createResponse",
          "path": "/v1/responses",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createMessage",
          "path": "/v1/messages",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "47a64c23431c32b5625239a98a1c4623a07d3080ba2087b36a76db89089e8050",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Dify",
      "application_id": "dify",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Seuls le propriétaire et les administrateurs de l’espace de travail peuvent gérer les fournisseurs. Selon le README du plugin, l’adresse LLM inclut /v1 ; pour les embeddings, rerank, STT et TTS, le plugin ajoute lui-même la version API : l’adresse doit donc exclure /v1, sinon le chemin contiendra /v1/v1. Ajoutez chaque modèle Ailoot séparément ; activez les images en entrée et le streaming dans ses paramètres.",
        "description": "Plateforme d’applications LLM · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "67ed590dedebc5907737961af0a7a00e8deedeb7be02f7f7de6c4a79b30690da",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/dify/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "67ed590dedebc5907737961af0a7a00e8deedeb7be02f7f7de6c4a79b30690da",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Flowise",
      "application_id": "flowise",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La liste des modèles ChatOpenAI est fixe. Pour un id Ailoot personnalisé, utilisez ChatOpenAI Custom et saisissez le nom du modèle. Base Path inclut /v1. Le nœud OpenAI Embeddings Custom est disponible pour les embeddings.",
        "description": "Constructeur de chaînes · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "ab8e3abf31f8a61ea76d15495fbae1412e0fd236f73d9884fabfce14e5adf44b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/flowise/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "ab8e3abf31f8a61ea76d15495fbae1412e0fd236f73d9884fabfce14e5adf44b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Home Assistant",
      "application_id": "home-assistant",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Il s’agit d’un composant tiers, pas d’une intégration officielle. Le contrôle des appareils utilise des appels de fonctions, tools, dans Chat Completions : choisissez un modèle qui prend en charge les outils. L’intégration officielle OpenAI Conversation n’accepte pas d’adresse personnalisée.",
        "description": "Domotique · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "a6b234c06b2c445cb261fe7fcf012dc5bda6e25e974df9915e6f723339a27ae4",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/home-assistant/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "a6b234c06b2c445cb261fe7fcf012dc5bda6e25e974df9915e6f723339a27ae4",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Langflow",
      "application_id": "langflow",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Langflow vérifie la connexion et charge les modèles depuis /v1/models ; ils apparaissent dans Language Models et Embedding Models. Activez ensuite manuellement ceux dont vous avez besoin. Le fournisseur est installé avec langflow.",
        "description": "Constructeur de chaînes · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "923c8b3443955a796d26522c24d84d2967758bd82b0d7c0c7cf8946f31f68e35",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/langflow/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "923c8b3443955a796d26522c24d84d2967758bd82b0d7c0c7cf8946f31f68e35",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Make",
      "application_id": "make",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Il s’agit d’un module HTTP universel, pas d’un fournisseur Ailoot distinct : sa documentation décrit une adresse HTTPS arbitraire. Stockez de préférence la clé dans une connexion avec clé API, comme le recommande Make plutôt que de l’envoyer dans les en-têtes. Le streaming n’est pas nécessaire dans Make : envoyez sans stream.",
        "description": "Automatisation sans code · Requête HTTP",
        "formats": [
          "http"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "08f244448ad684c9a4ae1b798f1075af74b356c7fff5fad5ecb3a141a779aec2",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/make/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "08f244448ad684c9a4ae1b798f1075af74b356c7fff5fad5ecb3a141a779aec2",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Robot Telegram",
      "application_id": "telegram-bot",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Les cadriciels Telegram ne possèdent pas de couche IA propre : l’adresse Ailoot se configure dans OpenAI SDK à l’intérieur du robot. Avec un solde nul, Ailoot renvoie une erreur 402 explicite et un Request ID : affichez-la à l’utilisateur du robot au lieu de laisser l’application échouer.",
        "description": "Robots · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "5ba21b7a6335e78d78c9dd2017451c99f64c04c3a896375479a32af292570b25",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/telegram-bot/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "5ba21b7a6335e78d78c9dd2017451c99f64c04c3a896375479a32af292570b25",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Zapier",
      "application_id": "zapier",
      "compatibility_scope": {
        "conditions": "Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Il s’agit d’une requête HTTP universelle ; Zapier ne possède pas de fournisseur prêt à l’emploi avec un champ d’adresse de base. Custom Request envoie Data tel quel, sans analyse : vérifiez le JSON à l’avance. Webhooks by Zapier est disponible avec les offres payantes Zapier.",
        "description": "Automatisation sans code · Requête HTTP",
        "formats": [
          "http"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "370cf011d4ee7d5cbc9ee31c45e1db1d8be430e4077b8d0fb0211a94f3aa64a1",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/zapier/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "370cf011d4ee7d5cbc9ee31c45e1db1d8be430e4077b8d0fb0211a94f3aa64a1",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Antigravity CLI",
      "application_id": "antigravity-cli",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1beta/models/{model}:generateContent, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le protocole est Gemini REST natif (streamGenerateContent, clé dans X-Goog-Api-Key), au chemin https://api.ailoot.ai/v1beta/... Pour une question, agy envoie deux requêtes : le titre de la conversation et la réponse elle-même. À chaque étape, l’agent réserve nettement plus qu’un outil de clavardage ordinaire; gardez donc une marge dans votre solde. Cette fiche figure dans « En cours de vérification » : la configuration vient de la documentation, mais aucun essai réel du client par Ailoot n’a encore été effectué. Si modelProvider = gemini et que GEMINI_API_KEY est vide, le CLI ne démarre pas.",
        "description": "Agent dans le terminal · Gemini",
        "formats": [
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "a62690ee3f4e700b049c0658a7654d98c67728ef0be9e56872da9f53f52b7938",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/antigravity-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "generateContent",
          "path": "/v1beta/models/{model}:generateContent",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "a62690ee3f4e700b049c0658a7654d98c67728ef0be9e56872da9f53f52b7938",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cline CLI",
      "application_id": "cline-cli",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Les champs Base URL / API Key / Model ID sont décrits dans la documentation Cline pour OpenAI Compatible. Les libellés exacts de l’assistant cline auth ne figurent pas dans la documentation CLI : comparez avec l’écran.",
        "description": "Agent dans le terminal · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "9cbe5c24849bf901da316d7194b0364ee77bbb032c9b8f89998eb9c9bfd13413",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/cline-cli/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "9cbe5c24849bf901da316d7194b0364ee77bbb032c9b8f89998eb9c9bfd13413",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Copilot pour JetBrains",
      "application_id": "copilot-jetbrains-byok",
      "compatibility_scope": {
        "alternative_guide_url": "https://ailoot.ai/docs/fr-ca/integrations/jetbrains-ai-assistant/",
        "conditions": "JetBrains AI Assistant GitHub confirme la prise en charge des points de terminaison personnalisés. La capture officielle montre Provider Name, API Key et API Type: Chat Completions, sans exemple d’URL. Aucune configuration Ailoot prête à copier n’est donc proposée ici. JetBrains AI Assistant est l’alternative documentée dans cet IDE. Demandez au support officiel du plugin de préciser les exigences de l’URL.",
        "configuration_runnable": false,
        "connection_state": "documentation-only",
        "description": "Extension d’éditeur · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "7da5de3872b9617ca9a22f0f61824bec0a761ebe88055f812c96b111dcdf11ec",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/copilot-jetbrains-byok/",
      "methods": [],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "7da5de3872b9617ca9a22f0f61824bec0a761ebe88055f812c96b111dcdf11ec",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cursor",
      "application_id": "cursor",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation officielle actuelle de Cursor ne décrit pas d’adresse personnalisée : elle liste uniquement les clés OpenAI/Anthropic/Google/Azure/Bedrock, précise que les clés personnelles fonctionnent seulement dans le chat, que Tab reste sur les modèles Cursor et que toutes les requêtes passent par les serveurs Cursor. L’adresse doit donc être publique, comme api.ailoot.ai. L’interrupteur d’adresse existe dans l’interface, mais le forum Cursor signale des problèmes : il s’applique à tous les modèles, le mode Agent peut ne pas utiliser votre clé et certaines versions 3.15.x n’acceptent pas de saisie dans ce champ.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "3e43ab2fdfa156d10d71f5191ec772ae18b17aafbc48a6dd4bad322736736b12",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/cursor/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "3e43ab2fdfa156d10d71f5191ec772ae18b17aafbc48a6dd4bad322736736b12",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Obsidian Text Generator",
      "application_id": "obsidian-text-generator",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation du module d’extension mentionne le fournisseur Custom, sans décrire le champ d’adresse ni son format; la configuration provient de l’interface du module : comparez avec sa fenêtre de paramètres.",
        "description": "Module d’extension Obsidian · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "5044e579b55427dca097ce2695031dcfd5a1760f1d5e46d6a3d8060b1348109e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/obsidian-text-generator/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "5044e579b55427dca097ce2695031dcfd5a1760f1d5e46d6a3d8060b1348109e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "PearAI",
      "application_id": "pearai",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. La documentation officielle PearAI n’a pas pu être vérifiée, son site étant indisponible, et le dépôt n’a pas été mis à jour depuis longtemps. Le format de configuration s’appuie sur celui de Continue : vérifiez dans l’application.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "a32a691a1437291814d6309a1611fce228637c0d210af5d4053a658fceb81651",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/pearai/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "a32a691a1437291814d6309a1611fce228637c0d210af5d4053a658fceb81651",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Visual Studio 2026",
      "application_id": "visual-studio-2026",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Le blog Visual Studio du 29.09.2026 annonce des adresses personnalisées pour OpenAI et Ollama dans VS 2026 Stable. La page de documentation décrit encore uniquement les clés OpenAI/Anthropic/Google, sans champ d’adresse : les noms des champs et le format de l’adresse ne sont donc pas confirmés. Clavardage uniquement; indisponible avec les forfaits Copilot Business/Enterprise.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "9781270cc5ee3c617b7bee989963090076c77b77cd3b793f62857495c4ab421f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/visual-studio-2026/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "9781270cc5ee3c617b7bee989963090076c77b77cd3b793f62857495c4ab421f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Void",
      "application_id": "void",
      "compatibility_scope": {
        "conditions": "Vérification en cours. La configuration a été préparée à partir de la documentation de l’application, mais certains détails ne sont pas confirmés. Comparez-la avec la fenêtre de paramètres et contactez le soutien en cas de différence. Avant de démarrer, appelez GET /v1/models avec votre clé Ailoot. Choisissez un identifiant exact de modèle dont les méthodes incluent POST /v1/chat/completions, puis utilisez-le dans la configuration. Pour les agents, vérifiez aussi les outils et les fonctions nécessaires à votre version du client. Cette configuration provient du code source de Void, pas de la documentation utilisateur. Le dépôt est archivé et l’éditeur n’est plus développé : il convient seulement aux personnes qui l’utilisent déjà.",
        "description": "Éditeur de code · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "18af604062a5f4f3fae951ca3c833f0d550d02f083b370f6cdda49817ec159ed",
        "catalogue_url": "https://ailoot.ai/integrations/fr-ca/",
        "guide_sha256": "8f95e9a0a1200ac7a81e062061cafcf4982f0cc06fad50cc46192751e8f8c56b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/fr-ca/integrations/void/",
      "methods": [
        {
          "http_method": "GET",
          "operation_id": "listModels",
          "path": "/v1/models",
          "status": "documented-in-guide"
        },
        {
          "http_method": "POST",
          "operation_id": "createChatCompletion",
          "path": "/v1/chat/completions",
          "status": "documented-in-guide"
        }
      ],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "8f95e9a0a1200ac7a81e062061cafcf4982f0cc06fad50cc46192751e8f8c56b",
      "version_match": null,
      "versions": null
    }
  ],
  "models": [],
  "page": {
    "description": "Trouvez des agents, éditeurs, chats et SDK acceptant une clé Ailoot. Copiez la configuration de l’URL de l’API et de la clé dans votre client.",
    "family": "integrations",
    "locale": "fr-ca",
    "title": "Connecter une API d’intelligence artificielle à vos outils — Ailoot — Français (Canada)",
    "url": "https://ailoot.ai/integrations/fr-ca/"
  },
  "product": {
    "commercial": {
      "authority": "owner_approved_business_input",
      "commercial_use_in_customer_product": true,
      "official_offer_licence_agreement": true,
      "permission_contact": "mailto:support@ailoot.ai",
      "promo_discount_max_percent": 50,
      "reseller_licence_on_request": true,
      "subscription_effect": "reduces_effective_token_cost",
      "use_cases": [
        "customer_products",
        "agents",
        "applications",
        "automations"
      ],
      "written_project_permission_on_request": true
    },
    "company": {
      "authority": "owner_approved_business_input",
      "claims": [
        "established operating experience",
        "large client base",
        "stable service",
        "ongoing KPI control"
      ],
      "scale": {
        "clients": "des millions de clients",
        "currency": null,
        "monthly_sales": "des ventes qui se chiffrent en milliards chaque mois",
        "scope": "L’entreprise et son portefeuille de projets"
      },
      "source": "https://ailoot.ai/ru/",
      "source_language": "ru"
    },
    "identity": {
      "id": "semen-router",
      "url": "https://ailoot.ai/"
    },
    "name": "Ailoot",
    "provenance": {
      "approved_offer_sha256": "03ba9f99acb815bdfd97051de0b513aeb11dcad811723225ed2f1192cddab0ca",
      "client_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22",
      "proof_scope": "accepted-static-public-contract",
      "public_operation_count": 26,
      "sources": [
        {
          "name": "public-api-contract-v1.json",
          "sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
        },
        {
          "name": "openapi-contract-v1.md",
          "sha256": "eebcd42781235054b93f763d84cb0fbc27c6c5762515c2b4990c390accba8763"
        },
        {
          "name": "openapi.py",
          "sha256": "0e502577f8a9a347a3ba5a514294a336b06aea78cac41b9fa1e4871b69fbf4e8"
        },
        {
          "name": "agent-facts-contract-v1.json",
          "sha256": "856af0544f85dc29b915132a3c762698ae9162555b24b79cfabfec63b05bc43a"
        },
        {
          "name": "locale-routes.py",
          "sha256": "920d2b69bf735d7298eb24f06cf7bd4eb373b5f76639b61fb6e98e8f94bfec7a"
        },
        {
          "name": "approved-offer-copy-v1.json",
          "sha256": "03ba9f99acb815bdfd97051de0b513aeb11dcad811723225ed2f1192cddab0ca"
        },
        {
          "name": "offer-copy.py",
          "sha256": "fe062036873acf8abb23a182248ce508c3679979455dadc634dcd5063d60cb1f"
        }
      ]
    },
    "public_urls": {
      "api_guide": "https://ailoot.ai/openapi.md",
      "entrypoints": {
        "docs": "https://ailoot.ai/docs/fr-ca/",
        "integrations": "https://ailoot.ai/integrations/fr-ca/",
        "models": "https://ailoot.ai/models/fr-ca/"
      },
      "offer": "https://ailoot.ai/legal/offer?lang=fr-ca",
      "openapi": "https://ailoot.ai/openapi.json",
      "page": "https://ailoot.ai/integrations/fr-ca/",
      "support": "mailto:support@ailoot.ai"
    },
    "schema": "ailoot-product-facts-v1",
    "source_revision": "12d706cf35e2e33a508ffc3412ffeaf95a0cc5b1ce4a2f87b449b838c44b61ea",
    "supported_access_modes": [
      {
        "id": "models",
        "label": "Model discovery",
        "operations": [
          {
            "http_method": "GET",
            "operation_id": "listModels",
            "path": "/v1/models",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "listGeminiModels",
            "path": "/v1beta/models",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "chat",
        "label": "OpenAI Chat Completions",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createChatCompletion",
            "path": "/v1/chat/completions",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "responses",
        "label": "OpenAI Responses",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createResponse",
            "path": "/v1/responses",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "messages",
        "label": "Anthropic Messages",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createMessage",
            "path": "/v1/messages",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "gemini",
        "label": "Gemini generateContent",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "generateContent",
            "path": "/v1beta/models/{model}:generateContent",
            "status": "documented"
          },
          {
            "http_method": "POST",
            "operation_id": "generateContentCompatibility",
            "path": "/antigravity/v1beta/models/{model}:generateContent",
            "status": "documented"
          },
          {
            "http_method": "POST",
            "operation_id": "streamGenerateContent",
            "path": "/v1beta/models/{model}:streamGenerateContent",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "embeddings",
        "label": "Text embeddings",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createEmbeddings",
            "path": "/v1/embeddings",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "images",
        "label": "OpenAI Images",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createImage",
            "path": "/v1/images/generations",
            "status": "documented"
          },
          {
            "http_method": "POST",
            "operation_id": "editImage",
            "path": "/v1/images/edits",
            "status": "documented"
          },
          {
            "description": "Save task_id and poll_url. Streaming is rejected. A task has processing/completed/failed status and an expires_at field.",
            "http_method": "POST",
            "operation_id": "createImageTask",
            "path": "/v1/images/generations/async",
            "status": "documented"
          },
          {
            "description": "Save task_id and poll_url. Streaming is rejected. A task has processing/completed/failed status and an expires_at field.",
            "http_method": "POST",
            "operation_id": "createImageEditTask",
            "path": "/v1/images/edits/async",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getImageTask",
            "path": "/v1/images/tasks/{task_id}",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "speech",
        "label": "Speech audio",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createSpeech",
            "path": "/v1/audio/speech",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "transcriptions",
        "label": "Audio transcription",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createTranscription",
            "path": "/v1/audio/transcriptions",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "videos",
        "label": "Video generation and retrieval",
        "operations": [
          {
            "description": "Save the returned task identifier. Poll status and download content; do not repeat creation after a timeout or unknown result. Required media parameters differ by model; this documented example is not a parameter guarantee for every video model.",
            "http_method": "POST",
            "operation_id": "createVideo",
            "path": "/v1/videos/generations",
            "status": "documented"
          },
          {
            "description": "Save the returned task identifier. Poll status and download content; do not repeat creation after a timeout or unknown result. Required media parameters differ by model; this documented example is not a parameter guarantee for every video model.",
            "http_method": "POST",
            "operation_id": "createVideoCompatible",
            "path": "/v1/videos",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideo",
            "path": "/v1/videos/{request_id}",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideoContent",
            "path": "/v1/videos/{request_id}/content",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideoGeneration",
            "path": "/v1/videos/generations/{request_id}",
            "status": "documented"
          },
          {
            "http_method": "GET",
            "operation_id": "getVideoGenerationContent",
            "path": "/v1/videos/generations/{request_id}/content",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "music",
        "label": "Music generation",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createMusic",
            "path": "/v1/music/generations",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "systemone",
        "label": "System One decisions",
        "operations": [
          {
            "http_method": "POST",
            "operation_id": "createSystemOne",
            "path": "/v1/systemone",
            "status": "documented"
          }
        ],
        "transport": "https"
      },
      {
        "id": "realtime",
        "label": "Realtime voice WebSocket",
        "operations": [
          {
            "http_method": "GET",
            "operation_id": "openRealtimeSession",
            "path": "/v1/realtime",
            "status": "documented"
          }
        ],
        "transport": "websocket"
      }
    ]
  },
  "schema": "ailoot-public-facts-v1",
  "sourceRevision": "12d706cf35e2e33a508ffc3412ffeaf95a0cc5b1ce4a2f87b449b838c44b61ea"
}
