{
  "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": "milioni di clienti",
      "currency": null,
      "monthly_sales": "vendite nell’ordine dei miliardi ogni mese",
      "scope": "L’azienda e il suo portafoglio di progetti"
    },
    "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/it/",
      "integrations": "https://ailoot.ai/integrations/it/",
      "models": "https://ailoot.ai/models/it/"
    },
    "licence": {
      "label": "Offerta e accordo di licenza",
      "url": "https://ailoot.ai/legal/offer?lang=it"
    },
    "locale": "it",
    "offer": {
      "label": "Offerta e accordo di licenza",
      "url": "https://ailoot.ai/legal/offer?lang=it"
    },
    "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": "Richiedi licenza reseller",
      "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": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo senza /v1: Claude Code aggiunge da solo /v1/messages. ANTHROPIC_AUTH_TOKEN viene inviato come Authorization: Bearer, ANTHROPIC_API_KEY come x-api-key; Ailoot accetta entrambi. CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 inserisce i nostri modelli in /model tramite /v1/models. Per gli errori 400 su campi sconosciuti — CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1. La documentazione Anthropic non supporta Claude Code con modelli non Claude tramite gateway, anche se il nostro /v1/messages li gestisce; consigliamo modelli Claude. Remote Control e input vocale non sono disponibili con il gateway.",
        "description": "Agente nel terminale · Anthropic Messages",
        "formats": [
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "bb1c4379b1b7dbfe875efe183e3bfc002b47a3841e2c87e3ff624ad39f4d801b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "bb1c4379b1b7dbfe875efe183e3bfc002b47a3841e2c87e3ff624ad39f4d801b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI Codex CLI",
      "application_id": "openai-codex-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Codex funziona solo tramite OpenAI Responses API (la documentazione indica solo wire_api = \"responses\"), quindi serve il nostro /v1/responses. Gli ID provider openai, ollama, lmstudio sono riservati. Alternativa — openai_base_url = \"https://api.ailoot.ai/v1\" per il provider integrato openai. Ailoot fornisce a Codex l’elenco nel formato manifesto Codex (GET /v1/models con client_version). Scegli un modello specifico che abbia OpenAI Responses nel catalogo. Nello snapshot 2026-09-30 gemini-3.6-flash ha OpenAI Chat, Anthropic Messages e Gemini, ma non Responses, quindi non è adatto a Codex. Verifica i formati sulla scheda del modello, non dal nome della famiglia.",
        "description": "Agente nel terminale · OpenAI Responses",
        "formats": [
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "09d74e2703805dadd243bb3d01ce282b01d5cc516c24c2c6061799459e44abc9",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "09d74e2703805dadd243bb3d01ce282b01d5cc516c24c2c6061799459e44abc9",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Hermes Agent",
      "application_id": "hermes-agent",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. transport: chat_completions (OpenAI Chat), anthropic_messages (Anthropic Messages) o codex_responses (OpenAI Responses). LLM_MODEL in .env non è più usato; OPENAI_BASE_URL vale solo per il provider openai-api. Per anthropic_messages indica l’indirizzo senza /v1 — Anthropic SDK aggiunge da solo /v1/messages. I compiti ausiliari (riconoscimento immagini, compressione della cronologia) usano per impostazione predefinita lo stesso modello principale.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "f20e65b81c47d29155ef4bde49675143944aba43db2db742eb3ddb52992411a2",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "f20e65b81c47d29155ef4bde49675143944aba43db2db742eb3ddb52992411a2",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenClaw",
      "application_id": "openclaw",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Adapter api: openai-completions (predefinito se baseUrl è impostato), openai-responses (solo se il server supporta /v1/responses — Ailoot lo supporta), anthropic-messages, google-generative-ai e altri. Per anthropic-messages negli esempi OpenClaw baseUrl è senza /v1. OpenClaw può trasmettere immagini quando input del modello contiene \"image\". Negli esempi Claude è mantenuto solo testo: lo snapshot 2026-09-30 non dichiara input image per questi metodi. Aggiungi \"image\" solo per un modello specifico la cui scheda attuale dichiari immagini in input e il formato API scelto. Ad esempio gemini-3.6-flash in questo snapshot dichiara input image per OpenAI Chat; il supporto effettivo dipende dalla scheda del modello e dal formato. Il percorso del file principale è basato sulla pratica comune OpenClaw; la pagina letta menziona anche ~/.openclaw/agents/<agentId>/agent/models.json.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "1c5a948375d59c797bf3946ede62ab1941cf16d2a96d72ed19d99fdbdfed0d2a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "1c5a948375d59c797bf3946ede62ab1941cf16d2a96d72ed19d99fdbdfed0d2a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "opencode",
      "application_id": "opencode",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il pacchetto @ai-sdk/openai-compatible usa /v1/chat/completions. Per modelli che richiedono /v1/responses, la documentazione opencode indica @ai-sdk/openai. Un provider Anthropic compatibile con baseURL personalizzato non è descritto nella documentazione opencode. Scegli modelli per cui il catalogo attuale dichiari OpenAI Chat. Nello snapshot 2026-09-30 gemini-3.6-flash ha questo formato; per altri Gemini controlla le schede. Il formato nativo Gemini non usa questo percorso. La presenza del metodo nel catalogo non equivale a una prova dal vivo della specifica versione del client.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "d6fdb9558a3919adc5616a8e18e87e4f6691c538ade4b4181e64fa66d62adc9e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "d6fdb9558a3919adc5616a8e18e87e4f6691c538ade4b4181e64fa66d62adc9e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Qwen Code",
      "application_id": "qwen-code",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Tipi di protocollo: openai (Chat Completions), anthropic, gemini, vertex-ai. Per openai baseUrl include /v1. L’esempio della documentazione per anthropic e gemini non ha baseUrl, quindi consigliamo openai. Per openai scegli un modello con OpenAI Chat nel catalogo: gemini-3.6-flash lo supporta. Altri Gemini possono avere formati diversi — controlla la scheda del modello specifico. La variante settings.json legge la chiave da AILOOT_API_KEY (campo envKey): impostala con export AILOOT_API_KEY=sk-... oppure la riga AILOOT_API_KEY=sk-... in ~/.qwen/.env; altrimenti Qwen Code parte con chiave vuota e riceve 401.",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "ec5d10f8a6beba49dad7233d6d039d3218e3912d200a5441f3054929e69faeaa",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "ec5d10f8a6beba49dad7233d6d039d3218e3912d200a5441f3054929e69faeaa",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Gemini CLI",
      "application_id": "gemini-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo senza /v1beta: l’SDK aggiunge automaticamente /v1beta/models/{model}:generateContent. L’indirizzo deve utilizzare HTTPS. La chiave viene inviata nell’header x-goog-api-key, che Ailoot accetta. Sono adatti solo i modelli per cui il catalogo indica il formato Gemini. Prima dell’esecuzione, verifica che l’ID esatto e questo metodo siano disponibili per la tua chiave. Ailoot restituisce la risposta Gemini a pagamento per intero dopo il calcolo del costo, non parola per parola; per questo, nelle risposte lunghe il testo non compare subito.",
        "description": "Agente nel terminale · Gemini",
        "formats": [
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "d1b52466d1c4db04ba7970151e73feb6144ee5b8a506a13a96291085cccf33c1",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "d1b52466d1c4db04ba7970151e73feb6144ee5b8a506a13a96291085cccf33c1",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Kimi CLI",
      "application_id": "kimi-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Tipi: openai_legacy (Chat Completions, base_url con /v1), openai_responses (Responses, con /v1), anthropic (senza /v1), gemini (base_url è la radice Google, per noi https://api.ailoot.ai). SearchWeb funziona solo con la piattaforma propria di Moonshot; FetchURL con un altro indirizzo API passa al download locale.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "f138f83e970734fb2ff16976fbc3d304772c7b589b694ac0c00aa827074a1c6d",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "f138f83e970734fb2ff16976fbc3d304772c7b589b694ac0c00aa827074a1c6d",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Crush",
      "application_id": "crush",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il tipo openai-compat usa OpenAI Chat con indirizzo che include /v1. Il tipo anthropic usa Messages con indirizzo senza /v1: Crush lo passa ad anthropic-sdk-go, che aggiunge da solo /v1/messages. L’esempio nel README Crush con /v1 produrrebbe /v1/v1/messages e un errore 404. La chiave viene inviata nell’header x-api-key, accettato da Ailoot. Se l’elenco dei modelli è vuoto, il provider openai-compat lo recupera da /v1/models. crushrc viene eseguito come codice: non avviare Crush in cartelle altrui con questo file. Nell’esempio Claude ha supports-images = false: lo snapshot del catalogo 2026-09-30 dichiara solo testo per il formato Messages selezionato. Se la tua versione Crush supporta questo flag, attivalo solo per un modello la cui scheda attuale dichiari input image nel formato API scelto; il flag del client non aggiunge da solo il supporto delle immagini al modello.",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "d79260817b702522243c1b2f0f800254b6f7ca88f1a15a857e94b1a3673a28b2",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "d79260817b702522243c1b2f0f800254b6f7ca88f1a15a857e94b1a3673a28b2",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Aider",
      "application_id": "aider",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il prefisso openai/ è obbligatorio: così Aider (tramite LiteLLM) invia richieste al percorso OpenAI compatibile /v1/chat/completions. Per i modelli sconosciuti ad Aider avvisa che il contesto è ignoto — non è un errore. Un indirizzo Anthropic con base URL personalizzato non è descritto in questa pagina di documentazione.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "73a872e62f33693571a73599794ba89749fb45dd9e1b136a3fd72f7838bf01f0",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "73a872e62f33693571a73599794ba89749fb45dd9e1b136a3fd72f7838bf01f0",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Goose",
      "application_id": "goose",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Motori del provider personalizzato: openai, anthropic, ollama. Nell’esempio Goose base_url per engine openai è il percorso completo fino a /v1/chat/completions. Per il provider integrato OPENAI_HOST è la radice senza percorso, OPENAI_BASE_PATH è il percorso (predefinito v1/chat/completions). Goose ignora la chiave in config.yaml — solo variabile o portachiavi. Il repository è stato trasferito a aaif-goose/goose.",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "cff634ecce756d873a3e677e82884f69a4a57235d8960531839aff851c97f452",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "cff634ecce756d873a3e677e82884f69a4a57235d8960531839aff851c97f452",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Factory Droid",
      "application_id": "factory-droid",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. provider: anthropic = Messages API (baseUrl come Anthropic, senza /v1), openai = Responses API (con /v1), generic-chat-completion-api = Chat Completions (con /v1). Per anthropic la chiave viene inviata per impostazione predefinita in x-api-key (accettato da Ailoot); \"authMode\": \"bearer\" passa ad Authorization. Le chiavi restano locali. Factory testa completamente solo le API ufficiali Anthropic e OpenAI.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "2f8bdc2363b44bd2cc43d31801cd04d2b750bb0ea7db836071fd662c3ce64026",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "2f8bdc2363b44bd2cc43d31801cd04d2b750bb0ea7db836071fd662c3ce64026",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Amp",
      "application_id": "amp",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Formati Custom URL: chat-completions (<base>/chat/completions), responses (<base>/responses), anthropic-messages (<base>/v1/messages, /v1 non viene duplicato), google-genai (<base>/models/<model>:streamGenerateContent). La chiave viene inviata come Authorization: Bearer. La mappatura usa gli ID canonici Amp nel formato provider/model; la freccia definisce l’ID inviato a noi. I modelli non coperti dalla connessione sono gestiti direttamente da Amp usando i suoi crediti. La documentazione richiede che l’host personalizzato sia raggiungibile da Amp — l’indirizzo è pubblico, quindi il requisito è soddisfatto.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "cabab375419ae9e0a3f0f975020073d07cb11e3c06987cdf6271bed6171147a1",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "cabab375419ae9e0a3f0f975020073d07cb11e3c06987cdf6271bed6171147a1",
      "version_match": null,
      "versions": null
    },
    {
      "application": "AIChat",
      "application_id": "aichat",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Nell’esempio di configurazione AIChat api_base per claude è indicato con /v1, per gemini con /v1beta; vale anche per Ailoot. I tre client danno accesso a tutti e tre i formati Ailoot: OpenAI, Anthropic e Gemini.",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "fa7382471cb671216b91130b4e17c9f7e7935c51dd01ad9d3d7e01d5a9ea8407",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "fa7382471cb671216b91130b4e17c9f7e7935c51dd01ad9d3d7e01d5a9ea8407",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Continue CLI",
      "application_id": "continue-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Per servizi OpenAI compatibili Continue usa provider: openai e apiBase con /v1. Il formato di configurazione è comune a estensione e CLI; il file si passa con --config.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "747e7cbe00f87cb7b21cfc3519ea71ccce879e908195cb3a45b8fabc5a08e84e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "747e7cbe00f87cb7b21cfc3519ea71ccce879e908195cb3a45b8fabc5a08e84e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "ForgeCode",
      "application_id": "forge",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La configurazione tramite .env è indicata come obsoleta: al primo avvio Forge trasferisce le variabili nel proprio archivio su file. Il README non riporta le etichette esatte della procedura provider login.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "ea19655a4c67ed9661748ff79249c1999067323e18f07f7c26a8851645c0f689",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "ea19655a4c67ed9661748ff79249c1999067323e18f07f7c26a8851645c0f689",
      "version_match": null,
      "versions": null
    },
    {
      "application": "GitHub Copilot CLI",
      "application_id": "github-copilot-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Tipi: openai (predefinito, qualsiasi server OpenAI compatibile), azure, anthropic. Il modello deve supportare chiamate agli strumenti e streaming. COPILOT_PROVIDER_WIRE_API sceglie il protocollo, ma i suoi valori non sono elencati nella pagina. Puoi impostare i limiti con COPILOT_PROVIDER_MAX_PROMPT_TOKENS / MAX_OUTPUT_TOKENS.",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "e780138eee1a2c7428aa30433f93ed289fb3fc8ab94431d536b8d011bf8f107b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "e780138eee1a2c7428aa30433f93ed289fb3fc8ab94431d536b8d011bf8f107b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "gptme",
      "application_id": "gptme",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Qualsiasi server OpenAI compatibile; la chiave viene cercata in api_key, poi api_key_env, poi <NAME>_API_KEY. Elenco dei provider — gptme-util providers list.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "ca53ef1879772c725f9748e1169488370af7307de78284a5fc2e2f08afc79d55",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "ca53ef1879772c725f9748e1169488370af7307de78284a5fc2e2f08afc79d55",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Kilo Code CLI",
      "application_id": "kilo-code-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La finestra Custom provider permette di scegliere il protocollo: OpenAI Compatible (Chat Completions), OpenAI Responses, Anthropic Messages. {env:VAR} funziona solo nella configurazione globale attendibile (~/.config/kilo); nel kilo.json del progetto la chiave non viene inserita dalla variabile.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "5d30d0114c59ca402efe1e1c02212f4e054f03a8491e67d6f4ce8261a5dd5460",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "5d30d0114c59ca402efe1e1c02212f4e054f03a8491e67d6f4ce8261a5dd5460",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LLM",
      "application_id": "llm-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Per impostazione predefinita Chat Completions; responses: true porta il modello su /responses. Se api_base è impostato, la chiave OpenAI non viene inviata — serve api_key_name. È un’utilità CLI per richieste, non un agente.",
        "description": "Agente nel terminale · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "00ae582543f811a0ee6d55529657dfc615cf174483b5e7b1c04f24263ced1552",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "00ae582543f811a0ee6d55529657dfc615cf174483b5e7b1c04f24263ced1552",
      "version_match": null,
      "versions": null
    },
    {
      "application": "mini-SWE-agent",
      "application_id": "mini-swe-agent",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Usa LiteLLM: model_kwargs viene passato direttamente a litellm.completion. Senza il registro prezzi LiteLLM segnala un costo sconosciuto — disabilitiamo con cost_tracking: \"ignore_errors\" (oppure MSWEA_COST_TRACKING=ignore_errors). Trasmettere la chiave tramite OPENAI_API_KEY è uno standard LiteLLM, non mostrato nella pagina mini-SWE-agent.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "fd92314f47a0843a77ec0b1fc820727efadcb21225f625e130ee4a5c85ac4540",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "fd92314f47a0843a77ec0b1fc820727efadcb21225f625e130ee4a5c85ac4540",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenHands CLI",
      "application_id": "openhands-cli",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. OpenHands usa LiteLLM; per un proxy OpenAI la documentazione richiede Custom Model nel formato openai/<modello> e Base URL del proxy. Le modifiche tramite --override-with-envs non vengono salvate. Nell’interfaccia web: Settings → LLM → Advanced → Custom Model, Base URL, API Key.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "5fc741f0491d8b9b73a07de4f1d116a08417616470357d93f05b895d38933aca",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "5fc741f0491d8b9b73a07de4f1d116a08417616470357d93f05b895d38933aca",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Pi",
      "application_id": "pi",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione Pi permette esplicitamente endpoint OpenAI, Anthropic e Google compatibili tramite models.json; l’esempio usa api: openai-completions. apiKey comprende $NAME/${NAME}, un valore letterale o !comando. Il file viene riletto quando si apre /model.",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "8d5418c2054aefbe2c5ef64525743cae7af1a11e5d716b630ddcb2857e025039",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "8d5418c2054aefbe2c5ef64525743cae7af1a11e5d716b630ddcb2857e025039",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Plandex",
      "application_id": "plandex",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. I provider personalizzati funzionano solo in Plandex self-hosted; nel cloud con chiavi BYO sono ammessi solo provider integrati. Tutti i provider personalizzati devono essere OpenAI compatibili (Chat Completions). Il modello viene poi attivato nel proprio model pack.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "ea55e7100377dfc3c7b0fd89156f08b46b235efbb3e23aee86b856c314d6aea5",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "ea55e7100377dfc3c7b0fd89156f08b46b235efbb3e23aee86b856c314d6aea5",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Trae Agent",
      "application_id": "trae-agent",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. In YAML usa solo spazi, niente tabulazioni. Per Anthropic — provider: anthropic e ANTHROPIC_BASE_URL (il README non specifica esattamente se anthropic richiede /v1; usa https://api.ailoot.ai).",
        "description": "Agente nel terminale · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "277a3abadbcd3df9eef6ec643b7b38a7dc5bd665c3d85e40bc4708c00d29e9b8",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "277a3abadbcd3df9eef6ec643b7b38a7dc5bd665c3d85e40bc4708c00d29e9b8",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Warp",
      "application_id": "warp",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Solo OpenAI Chat Completions (POST /v1/chat/completions). Le richieste passano dai server Warp: la chiave è conservata localmente, ma trasmessa al backend Warp in ogni richiesta. Auto e router personalizzati consumano sempre crediti Warp; gli agenti cloud non usano questo endpoint. Disponibile nei piani Free e a pagamento per persone e team fino a 10 membri. Scegli modelli per cui il catalogo attuale dichiari OpenAI Chat. Nello snapshot 2026-09-30 gemini-3.6-flash ha questo formato; per altri Gemini controlla le schede. Il formato nativo Gemini non usa questo percorso. La presenza del metodo nel catalogo non equivale a una prova dal vivo della specifica versione del client.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "0b41c554b71edb9263132a17e63e659e6fdd767f5a7d13ab2fea2ceb5a1872c4",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "0b41c554b71edb9263132a17e63e659e6fdd767f5a7d13ab2fea2ceb5a1872c4",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cline",
      "application_id": "cline",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. OpenAI Compatible usa /v1/chat/completions, quindi l’indirizzo include /v1. L’opzione Anthropic usa /v1/messages con indirizzo senza /v1, ma nel suo elenco dei modelli compaiono solo nomi Anthropic — gli altri modelli Ailoot sono disponibili tramite OpenAI Compatible. La modalità agente richiede un modello con chiamate agli strumenti. I modelli Gemini 3.1 Pro non sono disponibili tramite chat/completions (hanno solo i formati Gemini e Anthropic) — qui usa gemini-3.6-flash.",
        "description": "Estensione dell’editor · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "94f586311ebc4346f8fef42bbda3b67d75e0af248ad012381ffb65bb8611e993",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "94f586311ebc4346f8fef42bbda3b67d75e0af248ad012381ffb65bb8611e993",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Roo Code",
      "application_id": "roo-code",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Roo Code chiama gli strumenti solo nel formato OpenAI, quindi il modello deve supportare tools in /v1/chat/completions. L’opzione Anthropic usa /v1/messages con indirizzo senza /v1.",
        "description": "Estensione dell’editor · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "3f2648584cea984553f7f18c531b48f554ae4d5b19c16d91577a8eeb3361a565",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "3f2648584cea984553f7f18c531b48f554ae4d5b19c16d91577a8eeb3361a565",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Kilo Code",
      "application_id": "kilo-code",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Kilo richiede {Base URL}/models e mostra da solo l’elenco dei modelli — il nostro GET /v1/models restituisce l’intero catalogo. Puoi anche specificare l’indirizzo completo .../v1/chat/completions. Sono supportati header personalizzati.",
        "description": "Estensione dell’editor · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "5e4b42e133055abb70a183774a5ff2109e0119e8f74ecdc574c8ceec9b9f5527",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "5e4b42e133055abb70a183774a5ff2109e0119e8f74ecdc574c8ceec9b9f5527",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Continue",
      "application_id": "continue",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. apiBase deve terminare con /v1. Per nomi delle serie gpt-5/o Continue può scegliere da solo /v1/responses; i nostri gpt-* supportano sia /v1/responses sia /v1/chat/completions, mentre useResponsesApi: false forza chat/completions. useLegacyCompletionsEndpoint non serve.",
        "description": "Estensione dell’editor · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "257b106afc660123cd2a9d1212ef2f090d9559833dcbb766f62cda4d2dc765a4",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "257b106afc660123cd2a9d1212ef2f090d9559833dcbb766f62cda4d2dc765a4",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Zed",
      "application_id": "zed",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Per openai_compatible indirizzo con /v1 (usa /v1/chat/completions; capabilities.chat_completions = false passa il modello a /v1/responses). Per anthropic_compatible indirizzo senza /v1 (usa /v1/messages; Zed invia la chiave in x-api-key — Ailoot lo accetta). Per impostazione predefinita images = false e parallel_tool_calls = false. Zed può trasmettere immagini, ma attiva images solo per un modello specifico la cui scheda attuale dichiari input image nel formato API scelto. Negli esempi GPT e Claude images = false: lo snapshot 2026-09-30 dichiara solo testo per questi modelli. Ad esempio gemini-3.6-flash nello snapshot dichiara input image per OpenAI Chat; il supporto effettivo dipende dalla scheda e dal formato. Per modelli di ragionamento c’è reasoning_effort. I valori max_tokens dell’esempio sono la dimensione del contesto; consulta i limiti esatti nel catalogo dei modelli.",
        "description": "Editor di codice · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "5925a3fcdf557a1dfa2771f0b3a8168197ccc3bfe8f503655517d52f738f895f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "5925a3fcdf557a1dfa2771f0b3a8168197ccc3bfe8f503655517d52f738f895f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "VS Code + Copilot Chat",
      "application_id": "vscode-copilot-byok",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. url è il percorso COMPLETO dell’endpoint. Valori apiType: chat-completions, responses (url .../v1/responses), messages (url .../v1/messages). BYOK funziona senza un piano Copilot o accesso GitHub, ma solo per chat/agente — i suggerimenti inline restano su Copilot. Gli amministratori delle organizzazioni (Business/Enterprise) possono disabilitare la policy BYOK. I limiti dei token sopra sono esempi: usa i valori del catalogo. In questi esempi vision = false: lo snapshot del catalogo 2026-09-30 dichiara solo testo per GPT/OpenAI Chat e Claude/Anthropic Messages. Se la tua versione VS Code offre vision, attivalo solo per un modello la cui scheda attuale dichiari input image nel formato API scelto; la presenza del campo nel client non conferma il supporto delle immagini nel modello scelto.",
        "description": "Estensione dell’editor · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "e189e1e0061d4f1220124990c057aea1601602c498557ce8864725404e50aaa7",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "e189e1e0061d4f1220124990c057aea1601602c498557ce8864725404e50aaa7",
      "version_match": null,
      "versions": null
    },
    {
      "application": "JetBrains AI Assistant",
      "application_id": "jetbrains-ai-assistant",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Seleziona OpenAI-compatible, inserisci https://api.ailoot.ai/v1 in URL e la tua API Key. Premi Test Connection, poi Apply e scegli un modello in AI Chat. Assegnalo alle funzioni dell’IDE in Models Assignment. Attiva Tool calling solo se il modello supporta gli strumenti; il completamento del codice si configura separatamente.",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "35c1768d609e53739936277edcd0daa9919779b2e093dec809050b5db9fa1588",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "35c1768d609e53739936277edcd0daa9919779b2e093dec809050b5db9fa1588",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Xcode",
      "application_id": "xcode",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Apple richiede che il provider supporti Chat Completions e risponda a {URL}/v1/models e {URL}/v1/chat/completions. Ailoot accetta la chiave in x-api-key e in Authorization: Bearer (se scegli Authorization, secondo le segnalazioni Xcode aggiunge da solo il prefisso Bearer). Gli agenti Xcode si configurano separatamente e non rientrano in questa istruzione.",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "cbb55a6ddf8dc2c559ec08ae9f7da7214005684e811b5e9b5e9413fffe22f2af",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "cbb55a6ddf8dc2c559ec08ae9f7da7214005684e811b5e9b5e9413fffe22f2af",
      "version_match": null,
      "versions": null
    },
    {
      "application": "avante.nvim",
      "application_id": "avante-nvim",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Nella wiki del plugin l’indirizzo OpenAI compatibile termina con /v1 (il plugin aggiunge /chat/completions). Il provider integrato claude usa un indirizzo come https://api.anthropic.com, quindi per Ailoot senza /v1. I provider personalizzati senza __inherited_from richiedono un indirizzo completo e proprie funzioni per interpretare la risposta.",
        "description": "Plugin Neovim · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "27cf5ed58776c2639b3d01778ca73307e371c0e298de08c42680fef8ae4e20aa",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "27cf5ed58776c2639b3d01778ca73307e371c0e298de08c42680fef8ae4e20aa",
      "version_match": null,
      "versions": null
    },
    {
      "application": "codecompanion.nvim",
      "application_id": "codecompanion-nvim",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. openai_compatible separa host (env.url, senza /v1) e percorso (env.chat_url). I valori env possono essere nomi di variabili d’ambiente, cmd:..., file:... o funzioni Lua. Anche l’adapter anthropic può essere esteso con un url personalizzato per /v1/messages.",
        "description": "Plugin Neovim · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "738a78efa7f7f81c5214e0c46f021d6d095a588a41c2c675f4a8554a5f27ab43",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "738a78efa7f7f81c5214e0c46f021d6d095a588a41c2c675f4a8554a5f27ab43",
      "version_match": null,
      "versions": null
    },
    {
      "application": "gptel",
      "application_id": "gptel",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. :host — solo il nome host (senza https:// e percorso); il percorso si imposta in :endpoint. gptel-make-anthropic invia gli header x-api-key e anthropic-version — Ailoot li accetta.",
        "description": "Pacchetto Emacs · OpenAI Chat, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "0872a01a22b6ea354438284405ebc5f74fc9a8edadeba24c58bafdc565de8066",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "0872a01a22b6ea354438284405ebc5f74fc9a8edadeba24c58bafdc565de8066",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Theia IDE",
      "application_id": "theia",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. url è l’indirizzo di base e termina con /v1. Per i modelli non OpenAI la scelta sicura è developerMessageSettings: \"system\".",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "df0b304e96e53eaf1f6a55f61f7acaf1f4cba1f80ee09e606af525f93863638b",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "df0b304e96e53eaf1f6a55f61f7acaf1f4cba1f80ee09e606af525f93863638b",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Trae IDE",
      "application_id": "trae",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Con Full URL disattivato Trae aggiunge da solo il percorso del formato scelto (OpenAI: indirizzo con /v1, Anthropic: senza /v1). Con Full URL attivato inserisci https://api.ailoot.ai/v1/chat/completions oppure https://api.ailoot.ai/v1/messages. Model Series adatta le indicazioni alla famiglia del modello.",
        "description": "Editor di codice · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "2188456f7d6144737d5b764bcd4a405b9ee11887c2561f572cb8f403f83fd32d",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "2188456f7d6144737d5b764bcd4a405b9ee11887c2561f572cb8f403f83fd32d",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Open WebUI",
      "application_id": "open-webui",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Formato OpenAI Chat Completions; URL obbligatoriamente con /v1 e senza barra finale. L’elenco dei modelli viene recuperato da /v1/models; con un catalogo ampio (252 modelli) conviene limitare Model IDs e attivare la cache dell’elenco (Cache Base Model List / ENABLE_BASE_MODELS_CACHE=True). Per gli embedding RAG esistono RAG_OPENAI_API_BASE_URL separati.",
        "description": "Chat web, server proprio · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "18db6bb8a8022bca97adf8c91f2dbb217025101116581f2bcbf38a9031b65a02",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "18db6bb8a8022bca97adf8c91f2dbb217025101116581f2bcbf38a9031b65a02",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LibreChat",
      "application_id": "librechat",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Un normale custom endpoint = OpenAI Chat Completions (baseURL con /v1). provider: 'anthropic' attiva il client nativo /v1/messages; nell’esempio della documentazione baseURL Anthropic è senza /v1 (https://api.anthropic.com), quindi per noi https://api.ailoot.ai. fetch: true recupera l’elenco da /v1/models.",
        "description": "Chat web, server proprio · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "2f963af5c407cbb7fe09f812eeae0eedd5a03da7163096bd9777b1a6ad0f58bb",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "2f963af5c407cbb7fe09f812eeae0eedd5a03da7163096bd9777b1a6ad0f58bb",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cherry Studio",
      "application_id": "cherry-studio",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione conferma OpenAI, Anthropic, OpenAI Responses e Gemini e l’anteprima del percorso finale sotto il campo, ma non descrive le regole per aggiungere /v1 — fai riferimento all’anteprima. Tutti e tre i nostri formati (Chat Completions, Responses, Messages) sono adatti.",
        "description": "Applicazione desktop · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "eb4bb8cfcd82cab82c2ab93bf203fb8682e08b03aa51344193b093c3f4ed1b99",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "eb4bb8cfcd82cab82c2ab93bf203fb8682e08b03aa51344193b093c3f4ed1b99",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Chatbox",
      "application_id": "chatbox",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione indica API Host senza /v1 (esempio https://api.openai.com) e il percorso predefinito /v1/chat/completions. Esiste anche il tipo Google Gemini compatible, ma non è stato verificato per il nostro /v1beta. L’import della configurazione JSON (type: 'openai', apiHost, apiPath) è disponibile dalla 1.15.1 tramite chatbox://provider/import?config=<base64>. Per i GPT e Claude mostrati vision è disattivato: lo snapshot del catalogo 2026-09-30 dichiara solo testo nel formato OpenAI Chat. Se la tua versione Chatbox offre vision, attivalo solo per un modello la cui scheda attuale dichiari input image nel formato API scelto; poter allegare un’immagine nel client non dimostra che il modello la supporti.",
        "description": "Computer e telefono · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "e6549f1afe6f041cf739cd8b4c0eb19235067919e032f2bc4d122fa34aaab15c",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "e6549f1afe6f041cf739cd8b4c0eb19235067919e032f2bc4d122fa34aaab15c",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LobeChat",
      "application_id": "lobechat",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. OPENAI_PROXY_URL è predefinito a https://api.openai.com/v1, quindi indichiamo l’indirizzo con /v1. ANTHROPIC_PROXY_URL è predefinito a https://api.anthropic.com (senza /v1). Tramite GOOGLE_PROXY_URL è formalmente possibile collegare il formato Gemini (https://api.ailoot.ai), ma non abbiamo verificato questa variante. Usa la modalità server: richieste dirette dal browser possono ancora essere rifiutate da Ailoot API per le regole CORS.",
        "description": "Chat web, server proprio · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "1a22aa97ae2223d36db44de7b80aa578a5949d0314e711926cdcf4ef36439def",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "1a22aa97ae2223d36db44de7b80aa578a5949d0314e711926cdcf4ef36439def",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Jan",
      "application_id": "jan",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Documentazione: per i provider OpenAI compatibili Base URL deve includere /v1 (altrimenti 404); la barra finale viene rimossa. Per la modalità Anthropic c’è un esempio LiteLLM senza /v1. Le capacità del modello (tools, vision) per provider personalizzati si impostano manualmente. Sono supportate chiavi di riserva (retry solo per 401/403/429).",
        "description": "Applicazione desktop · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "6ea6879a32dabf0cdaeeee8974db9cac8d84725c39e1072ce5f7852f1250bd6e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "6ea6879a32dabf0cdaeeee8974db9cac8d84725c39e1072ce5f7852f1250bd6e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "SillyTavern",
      "application_id": "sillytavern",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Documentazione: con problemi di connessione aggiungi /v1 e NON aggiungere /chat/completions. L’elenco dei modelli viene recuperato se il server restituisce /v1/models (il nostro lo fa).",
        "description": "Chat di ruolo · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "7c99459d3101d53a7494fd398aece5f9b7e7c4a2b00a124e5b5e353fdb402178",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "7c99459d3101d53a7494fd398aece5f9b7e7c4a2b00a124e5b5e353fdb402178",
      "version_match": null,
      "versions": null
    },
    {
      "application": "AnythingLLM",
      "application_id": "anythingllm",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il provider è indicato nella documentazione come «per sviluppatori». Se necessario GENERIC_OPEN_AI_MODEL_MAX_TOKEN_KEY='max_completion_tokens'. Per gli embedding c’è un generic-openai embedder separato (EMBEDDING_BASE_PATH + GENERIC_OPEN_AI_EMBEDDING_API_KEY) — modello nemotron-3-embed tramite /v1/embeddings.",
        "description": "Chat con documenti · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "f04b09f0c0fd24b0eeba389fb4b6634dbecbd1459454fb27738f2bd96aff6592",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "f04b09f0c0fd24b0eeba389fb4b6634dbecbd1459454fb27738f2bd96aff6592",
      "version_match": null,
      "versions": null
    },
    {
      "application": "big-AGI",
      "application_id": "big-agi",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione descrive le variabili come sostituzione del backend host per OpenAI e Anthropic (per proxy ed endpoint personalizzati); dice «host», quindi indichiamo l’indirizzo senza /v1, ma non specifica il formato esatto del percorso — verifica dalla prima richiesta.",
        "description": "Chat web, server proprio · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "35834115bd504bf759d9bba3a7e9a12a2e37e1baea4ca8ecb0fe16c8a2dca479",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "35834115bd504bf759d9bba3a7e9a12a2e37e1baea4ca8ecb0fe16c8a2dca479",
      "version_match": null,
      "versions": null
    },
    {
      "application": "BoltAI",
      "application_id": "boltai",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Serve l’indirizzo completo di chat completions. Rendi questo servizio quello principale per usarlo con AI Command. Istruzione basata sulla guida BoltAI; in BoltAI 2 le finestre possono differire.",
        "description": "Applicazione per Mac · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "4dfdcb9fd448cf2ac6f2792d3216f66487df328e85ba29acc30cbfb8e5ac8a70",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "4dfdcb9fd448cf2ac6f2792d3216f66487df328e85ba29acc30cbfb8e5ac8a70",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Hugging Face Chat UI",
      "application_id": "hugging-face-chat-ui",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Chat UI funziona solo con API OpenAI compatibili tramite OPENAI_BASE_URL e recupera l’elenco dei modelli da /models.",
        "description": "Chat web, server proprio · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "41af77f9db5f408f44b71ad66f7c01b39b64970c333a343c65cab89782111127",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "41af77f9db5f408f44b71ad66f7c01b39b64970c333a343c65cab89782111127",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Msty Studio",
      "application_id": "msty-studio",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione conferma un provider OpenAI compatibile personalizzato, ma non il formato dell’indirizzo; /v1 è la radice standard OpenAI API, in caso di errore 404 verifica la variante senza /v1. Un endpoint Anthropic compatibile personalizzato non è descritto.",
        "description": "Applicazione desktop · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "620f59421c5b5b724e89c2d2f1eb5ba497aa8436ede5eed09d9d357ba4f8e4da",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "620f59421c5b5b724e89c2d2f1eb5ba497aa8436ede5eed09d9d357ba4f8e4da",
      "version_match": null,
      "versions": null
    },
    {
      "application": "NextChat",
      "application_id": "nextchat",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Per questa configurazione usa OpenAI Chat tramite il server NextChat. Nel deployment su Vercel o Docker imposta BASE_URL=https://api.ailoot.ai senza /v1, OPENAI_API_KEY, CUSTOM_MODELS e DEFAULT_MODEL. Esegui nuovamente il deployment del server dopo aver modificato queste variabili.",
        "description": "Chat web, server proprio · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "a0d4b6171fe882c17363d32c47aa21b83b79a985a795ea497b0259e3bf651141",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "a0d4b6171fe882c17363d32c47aa21b83b79a985a795ea497b0259e3bf651141",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Obsidian Copilot",
      "application_id": "obsidian-copilot",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. L’elenco dei modelli viene recuperato da /v1/models, il modello può essere inserito manualmente. Se Test riesce ma Quick Chat non invia messaggi, attiva Enable CORS sul provider (la risposta arriva intera, senza streaming). Le chiavi sono conservate in Obsidian Keychain.",
        "description": "Plugin Obsidian · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "c9e6d27de392002508a431bc8e2ffa71efdfa28380d7e2450273f9bf562f2205",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "c9e6d27de392002508a431bc8e2ffa71efdfa28380d7e2450273f9bf562f2205",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Page Assist",
      "application_id": "page-assist",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione conferma Custom con API URL e chiave; non specifica il formato URL, /v1 è la radice standard OpenAI API. Il recupero automatico dei modelli è garantito solo per Ollama, LM Studio e Llamafile — per gli altri si aggiungono manualmente.",
        "description": "Estensione browser · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "ab5b715341d0ff6a5bb19d5572454fd91dc60badef20ae49be33fb1cedee00a8",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "ab5b715341d0ff6a5bb19d5572454fd91dc60badef20ae49be33fb1cedee00a8",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Raycast AI",
      "application_id": "raycast-ai",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. base_url è un endpoint OpenAI compatibile senza il suffisso /chat/completions. Raycast rilegge il file senza riavvio. Se abilities non è specificato, tools e vision sono considerati non supportati. I modelli appaiono in Quick AI, AI Chat e AI Commands. Nell’esempio vision.supported = false: lo snapshot del catalogo 2026-09-30 dichiara solo testo per Claude/OpenAI Chat. Se la tua versione Raycast supporta questa impostazione, attiva vision solo per un modello la cui scheda attuale dichiari input image nel formato OpenAI Chat; il flag del client non conferma da solo il supporto delle immagini nell’API.",
        "description": "Launcher · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "a5c4c7f1a413cdfa5d82bd6e1724816e117b0cca5b85d9ea6340cd153f6302c0",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "a5c4c7f1a413cdfa5d82bd6e1724816e117b0cca5b85d9ea6340cd153f6302c0",
      "version_match": null,
      "versions": null
    },
    {
      "application": "TypingMind",
      "application_id": "typingmind",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Endpoint va inserito come percorso completo. La chiave è trasmessa nell’header personalizzato Authorization: Bearer sk-... — accettato da Ailoot. La versione web TypingMind chiama l’API direttamente dal browser e CORS può attualmente bloccare le richieste; la versione desktop è più affidabile. Il tipo Gemini in TypingMind invia la chiave nell’header apiKey, non accettato da Ailoot — usa OpenAI Chat Completions.",
        "description": "Applicazione web · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "fc000befdb5d11b105dd30ef32ef9a146f1c6f42d276013e2164356b69c46a18",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "fc000befdb5d11b105dd30ef32ef9a146f1c6f42d276013e2164356b69c46a18",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI SDK (Python)",
      "application_id": "openai-python-sdk",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo con /v1: l’SDK aggiunge da solo /chat/completions, /responses, /embeddings, /images/*, /audio/*. Funzionano Chat Completions e Responses (Responses per i modelli con questo formato nel catalogo). Streaming e strumenti sono standard. Gli errori Ailoot arrivano in JSON con Request ID e vengono intercettati come openai.APIStatusError.",
        "description": "SDK · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "b3820d5979fcca88e363a29d66970c702db953645ee725f31c84517b1a8bf302",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "b3820d5979fcca88e363a29d66970c702db953645ee725f31c84517b1a8bf302",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI SDK (Node.js)",
      "application_id": "openai-node-js-sdk",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il README mostra baseURL; la lettura di OPENAI_BASE_URL è nei sorgenti del client (src/client.ts), il valore predefinito è https://api.openai.com/v1. Indica l’indirizzo Ailoot con /v1. Sono disponibili sia chat.completions sia responses.",
        "description": "SDK · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "cf1862d7f1973bd08a872ba20e31d3725ccf26d1fc448d611b218e5a831e4667",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "cf1862d7f1973bd08a872ba20e31d3725ccf26d1fc448d611b218e5a831e4667",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Anthropic SDK (Python)",
      "application_id": "anthropic-python-sdk",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo SENZA /v1: l’SDK aggiunge da solo /v1/messages. Il gateway accetta la chiave in x-api-key (come la invia l’SDK) e in Authorization: Bearer. Funzionano streaming, strumenti e /v1/messages/count_tokens. Elaborazione in batch (Batches) e Files API non sono dichiarati nel catalogo Ailoot.",
        "description": "SDK · Anthropic Messages",
        "formats": [
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "8e7fb0f9a6eaa742452f7a3240f5fc81d6837af2b1b73ad178b718077fe348cc",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "8e7fb0f9a6eaa742452f7a3240f5fc81d6837af2b1b73ad178b718077fe348cc",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Vercel AI SDK",
      "application_id": "vercel-ai-sdk",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. I provider usano indirizzi diversi: OpenAI compatibile e Anthropic con /v1 (predefinito Anthropic https://api.anthropic.com/v1), Google con /v1beta (predefinito https://generativelanguage.googleapis.com/v1beta). @ai-sdk/openai usa per impostazione predefinita Responses API; per modelli senza metodo responses usa openai.chat(\"id\") o createOpenAICompatible.",
        "description": "SDK · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "8ca8883ae25b44f760c0ff63492c3795d1f2fc7a1f1e9599f2e15e3b23884835",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "8ca8883ae25b44f760c0ff63492c3795d1f2fc7a1f1e9599f2e15e3b23884835",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LangChain",
      "application_id": "langchain",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. ChatOpenAI: indirizzo con /v1. Secondo la documentazione supporta solo la specifica ufficiale OpenAI: campi non standard come reasoning_content di modelli esterni non vengono conservati. Per Claude è meglio ChatAnthropic: indirizzo senza /v1, l’SDK aggiunge da solo /v1/messages. Il parametro base_url e le variabili ANTHROPIC_API_URL/ANTHROPIC_BASE_URL di ChatAnthropic sono descritti nella documentazione della classe nei sorgenti (langchain_anthropic/chat_models.py), non nella pagina di integrazione. Il flag use_responses_api attiva la modalità Responses in ChatOpenAI.",
        "description": "Framework · OpenAI Chat, OpenAI Responses, Anthropic Messages",
        "formats": [
          "chat",
          "responses",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "2f212a4e6b115831d251a2e9c70b8d502d32ea7a9fd0e2a12bbf0ab6d3258e6f",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "2f212a4e6b115831d251a2e9c70b8d502d32ea7a9fd0e2a12bbf0ab6d3258e6f",
      "version_match": null,
      "versions": null
    },
    {
      "application": "CrewAI",
      "application_id": "crewai",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/messages e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il prefisso openai/ o anthropic/ seleziona il provider in CrewAI; nella richiesta viene inviato id senza prefisso. Per OpenAI l’indirizzo include /v1, per Anthropic senza /v1. La documentazione descrive anche il flag custom_openai=True per qualsiasi gateway OpenAI compatibile. Per Anthropic max_tokens è obbligatorio.",
        "description": "Framework per agenti · OpenAI Chat, Anthropic Messages",
        "formats": [
          "chat",
          "messages"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "554cc6ba2399a6bf2ef066293c52c87280fd7a67a96b794a79848ff9b75f4cc4",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "554cc6ba2399a6bf2ef066293c52c87280fd7a67a96b794a79848ff9b75f4cc4",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Google GenAI SDK (Python)",
      "application_id": "google-genai-python",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo senza /v1beta: l’SDK costruisce da solo /v1beta/models/{model}:generateContent. La chiave viene inviata nell’header x-goog-api-key — Ailoot lo accetta. Sono disponibili solo modelli con formato Gemini. La documentazione della versione JavaScript (@google/genai) non descrive l’indirizzo personalizzato, quindi non la riportiamo qui.",
        "description": "SDK · Gemini",
        "formats": [
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "8f4ab64140ef00dac28a2a20a6f8b35ed3145343e22abf894ab0971b53c55f79",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "8f4ab64140ef00dac28a2a20a6f8b35ed3145343e22abf894ab0971b53c55f79",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LiteLLM",
      "application_id": "litellm",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il prefisso openai/ indica il protocollo OpenAI compatibile; Ailoot riceve id senza prefisso. LiteLLM aggiunge da solo /chat/completions e /embeddings; secondo la documentazione, con un errore Not Found l’indirizzo deve terminare con /v1.",
        "description": "SDK · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "f0d73e628a3c687203a832cc3299901e22fb2181a0c9ed726bfa2c76482cb133",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "f0d73e628a3c687203a832cc3299901e22fb2181a0c9ed726bfa2c76482cb133",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LiteLLM Proxy",
      "application_id": "litellm-proxy",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il proxy è utile se vuoi distribuire al team chiavi interne basate su un’unica chiave Ailoot. Gli addebiti Ailoot sono sulla chiave indicata in api_key. Indirizzo con /v1.",
        "description": "Gateway proprio · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "8135622b9fb008f0320cef3cd95ab9429048de9887e3c8825e03949d3f382507",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "8135622b9fb008f0320cef3cd95ab9429048de9887e3c8825e03949d3f382507",
      "version_match": null,
      "versions": null
    },
    {
      "application": "LlamaIndex",
      "application_id": "llamaindex",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo con /v1. is_chat_model=True è obbligatorio, altrimenti la classe userà il percorso obsoleto /completions. is_function_calling_model=True permette agli agenti di usare strumenti. Imposta context_window dalla scheda del modello nel catalogo Ailoot.",
        "description": "Framework · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "24897743cb3fd48ccc3f22de31f3bc8985095ec05c1f1f5e16fa01ff5f383f43",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "24897743cb3fd48ccc3f22de31f3bc8985095ec05c1f1f5e16fa01ff5f383f43",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Mastra",
      "application_id": "mastra",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. url contiene l’indirizzo di base con /v1, non il percorso completo verso /chat/completions. Si usa Chat Completions per impostazione predefinita; api: \"responses\" passa a Responses API. La forma id \"provider/modello\" invia al gateway il solo id del modello. Il campo apiKey nell’oggetto model è mostrato nella documentazione in un esempio con header; non è descritto separatamente insieme a url.",
        "description": "Framework per agenti · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "999a4288449abcf785692e71ef9a66616d318bebd060bd036aa36dd049458c71",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "999a4288449abcf785692e71ef9a66616d318bebd060bd036aa36dd049458c71",
      "version_match": null,
      "versions": null
    },
    {
      "application": "OpenAI Agents SDK",
      "application_id": "openai-agents-sdk",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo con /v1. Disabilita il tracing tramite set_tracing_disabled(True): altrimenti l’SDK tenterà di inviare tracce a OpenAI senza una chiave OpenAI. Chat Completions è disponibile solo per i modelli per cui questo metodo è indicato nel catalogo ed è accessibile alla tua chiave; Responses (predefinito nell’SDK) solo per i modelli con il metodo responses nel catalogo. Gli strumenti integrati di OpenAI (ricerca web, file) non sono garantiti tramite un gateway di terze parti.",
        "description": "Framework per agenti · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "13ff7067162fa032db913ea3953bf7ba22c9c8a574fad8b306334ddc477f18f9",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "13ff7067162fa032db913ea3953bf7ba22c9c8a574fad8b306334ddc477f18f9",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Pydantic AI",
      "application_id": "pydantic-ai",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Indirizzo con /v1. La documentazione usa per impostazione predefinita OpenAIResponsesModel: sceglilo solo per modelli con metodo responses; per gli altri OpenAIChatModel.",
        "description": "Framework per agenti · OpenAI Chat, OpenAI Responses",
        "formats": [
          "chat",
          "responses"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "b1b79a38cdfe161290e137eb4a910a5d9fa3395f6be00c3908d19d585f90ae8e",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "b1b79a38cdfe161290e137eb4a910a5d9fa3395f6be00c3908d19d585f90ae8e",
      "version_match": null,
      "versions": null
    },
    {
      "application": "n8n",
      "application_id": "n8n",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions, POST /v1/responses, POST /v1/messages, POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La verifica delle credenziali chiama /models (OpenAI), /v1/models (Anthropic) e /v1beta/models (Gemini); Ailoot dispone di tutti e tre i percorsi. Le pagine di documentazione n8n non descrivono Base URL: il campo è nelle credenziali stesse (sorgenti OpenAiApi.credentials.ts e AnthropicApi.credentials.ts, etichetta «Override the default base URL for the API»). In n8n Cloud non scegliere «Use Gateway credits», altrimenti le richieste non passeranno da Ailoot.",
        "description": "Automazione no-code · OpenAI Chat, OpenAI Responses, Anthropic Messages, Gemini",
        "formats": [
          "chat",
          "responses",
          "messages",
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "00f47f5e4372f231b11c90ac85d905d5210c1b62221681a2d168473a0150ca28",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "00f47f5e4372f231b11c90ac85d905d5210c1b62221681a2d168473a0150ca28",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Dify",
      "application_id": "dify",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Solo proprietario e amministratori del workspace possono gestire i provider. Secondo il README del plugin: per LLM l’indirizzo include /v1; per embedding, rerank, STT e TTS il plugin aggiunge da solo la versione API, quindi l’indirizzo non deve includere /v1 (altrimenti risulta /v1/v1). Aggiungi ogni modello Ailoot come voce separata; abilita input immagini e streaming nelle impostazioni del modello.",
        "description": "Piattaforma di applicazioni LLM · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "83d65386ea8cc9bb9719cdb9e87dfd999f1f8c1d2a39063ac5605087c710ec5d",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "83d65386ea8cc9bb9719cdb9e87dfd999f1f8c1d2a39063ac5605087c710ec5d",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Flowise",
      "application_id": "flowise",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. L’elenco dei modelli in ChatOpenAI è fisso; per id Ailoot arbitrari usa ChatOpenAI Custom, dove il nome del modello si inserisce manualmente. Base Path con /v1. Per gli embedding c’è il nodo OpenAI Embeddings Custom.",
        "description": "Costruttore di catene · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "8e31016c0861c41bc1260ce58d9572d0abed5efe364e4015ee0712eada9b8101",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "8e31016c0861c41bc1260ce58d9572d0abed5efe364e4015ee0712eada9b8101",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Home Assistant",
      "application_id": "home-assistant",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. È un componente di terze parti, non un’integrazione ufficiale. Il controllo dei dispositivi usa chiamate a funzioni (tools) in Chat Completions, quindi scegli modelli con supporto degli strumenti. L’integrazione ufficiale OpenAI Conversation non supporta l’indirizzo personalizzato.",
        "description": "Casa intelligente · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "15b7b20242b03e22b656f24e74cddf86d467a24f9979717c80507940bc94f5ff",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "15b7b20242b03e22b656f24e74cddf86d467a24f9979717c80507940bc94f5ff",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Langflow",
      "application_id": "langflow",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Langflow verifica la connessione e recupera l’elenco da /v1/models; i modelli appaiono in Language Models e Embedding Models. I modelli necessari vanno poi attivati manualmente. Il provider viene installato insieme a langflow.",
        "description": "Costruttore di catene · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "d17de2c04149070ba229835ddc6d7ac7e7c5bd2c2a9571b25c5a5c38bb3b765a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "d17de2c04149070ba229835ddc6d7ac7e7c5bd2c2a9571b25c5a5c38bb3b765a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Make",
      "application_id": "make",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. È un modulo HTTP generico, non un provider Ailoot dedicato: la documentazione descrive un indirizzo HTTPS arbitrario. È meglio conservare la chiave in una connessione con chiave API (Make lo consiglia invece di inviarla negli header). Lo streaming non serve in Make: invia senza stream.",
        "description": "Automazione no-code · Richiesta HTTP",
        "formats": [
          "http"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "1f7d4135ab8d96d097108a140220c2a3bb3381afd54411b463e5e866228eaa71",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "1f7d4135ab8d96d097108a140220c2a3bb3381afd54411b463e5e866228eaa71",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Bot Telegram",
      "application_id": "telegram-bot",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. I framework Telegram non hanno un proprio livello per modelli di IA: l’indirizzo Ailoot si imposta in OpenAI SDK nel bot. Con saldo zero Ailoot restituisce un errore 402 chiaro con Request ID — mostralo all’utente del bot evitando che il bot si arresti.",
        "description": "Bot · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "f311f9f93330f660f117d4cbe35bf156bd947189d8d28b11c7d43a43bfcb9fee",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "f311f9f93330f660f117d4cbe35bf156bd947189d8d28b11c7d43a43bfcb9fee",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Zapier",
      "application_id": "zapier",
      "compatibility_scope": {
        "conditions": "Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. È una richiesta HTTP generica: Zapier non ha un provider pronto con un campo per l’indirizzo di base. Custom Request invia Data così com’è, senza interpretarlo, quindi il JSON va verificato prima. Webhooks by Zapier è disponibile nei piani Zapier a pagamento.",
        "description": "Automazione no-code · Richiesta HTTP",
        "formats": [
          "http"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "6611fbd1543e98ffd821cffd6e7e107e22fd34a45ca4e60c768e5a36c0855d2a",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "6611fbd1543e98ffd821cffd6e7e107e22fd34a45ca4e60c768e5a36c0855d2a",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Antigravity CLI",
      "application_id": "antigravity-cli",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1beta/models/{model}:generateContent e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il protocollo è Gemini REST nativo (streamGenerateContent, chiave in X-Goog-Api-Key), percorso https://api.ailoot.ai/v1beta/... Per una domanda agy invia due richieste: titolo della conversazione e risposta. L’agente riserva a ogni passaggio molto più di una chat normale, quindi mantieni un margine nel saldo. La scheda è nella sezione «In verifica»: configurazione ricavata dalla documentazione, ma il client non è ancora stato provato dal vivo tramite Ailoot. Se modelProvider = gemini e GEMINI_API_KEY è vuoto, la CLI non parte.",
        "description": "Agente nel terminale · Gemini",
        "formats": [
          "gemini"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "1834fb661723e05504dcca737ee547e575b48d61551599d1186c303a287d81b0",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "1834fb661723e05504dcca737ee547e575b48d61551599d1186c303a287d81b0",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cline CLI",
      "application_id": "cline-cli",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. I campi Base URL / API Key / Model ID sono descritti nella documentazione Cline per OpenAI Compatible. Le etichette esatte della procedura cline auth non sono riportate nella documentazione CLI — confrontale con la schermata.",
        "description": "Agente nel terminale · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "b9aa756d6f031ad739c0cbc4ce8d2c97f1a412785fd8ab81f4dc1e01efcef296",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "b9aa756d6f031ad739c0cbc4ce8d2c97f1a412785fd8ab81f4dc1e01efcef296",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Copilot per JetBrains",
      "application_id": "copilot-jetbrains-byok",
      "compatibility_scope": {
        "alternative_guide_url": "https://ailoot.ai/docs/it/integrations/jetbrains-ai-assistant/",
        "conditions": "JetBrains AI Assistant GitHub conferma il supporto degli endpoint personalizzati. La schermata ufficiale mostra Provider Name, API Key e API Type: Chat Completions, ma non un esempio di URL. Qui non viene quindi fornita una configurazione Ailoot pronta da copiare. JetBrains AI Assistant è l’alternativa documentata in questo IDE. Chiedi al supporto ufficiale del plugin di chiarire i requisiti dell’URL.",
        "configuration_runnable": false,
        "connection_state": "documentation-only",
        "description": "Estensione dell’editor · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "6af02f3a09dca27c1356238b2afd2ad3b3c41187fd487df58bbe20706d55fa25",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/integrations/copilot-jetbrains-byok/",
      "methods": [],
      "schema": "ailoot-integration-facts-v1",
      "source_revision": "6af02f3a09dca27c1356238b2afd2ad3b3c41187fd487df58bbe20706d55fa25",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Cursor",
      "application_id": "cursor",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione ufficiale attuale di Cursor non descrive l’indirizzo personalizzato: elenca solo chiavi OpenAI/Anthropic/Google/Azure/Bedrock, dice che le proprie chiavi funzionano solo nella chat (Tab resta sui modelli Cursor) e che tutte le richieste passano dai server Cursor (l’indirizzo deve essere pubblico — api.ailoot.ai è pubblico). L’interruttore dell’indirizzo è nell’interfaccia, ma sul forum Cursor vengono segnalati problemi: si applica a tutti i modelli, la modalità Agent potrebbe non usare la propria chiave e in alcune build 3.15.x il campo non accetta input.",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "73f0391cef16e2563c104aa8ab81f5de4896166ea5ba6d191832ed637a8fff86",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "73f0391cef16e2563c104aa8ab81f5de4896166ea5ba6d191832ed637a8fff86",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Obsidian Text Generator",
      "application_id": "obsidian-text-generator",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La documentazione del plugin menziona il provider Custom, ma non descrive il campo dell’indirizzo e il suo formato; la configurazione è basata sull’interfaccia del plugin — confrontala con la finestra delle impostazioni.",
        "description": "Plugin Obsidian · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "9e297ae49a3289da51afcd876dda079818bd1446c03f5a67e3193a4f13ec6e66",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "9e297ae49a3289da51afcd876dda079818bd1446c03f5a67e3193a4f13ec6e66",
      "version_match": null,
      "versions": null
    },
    {
      "application": "PearAI",
      "application_id": "pearai",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Non è stato possibile verificare la documentazione ufficiale PearAI (il sito non era disponibile), il repository non è aggiornato da tempo. Il formato della configurazione segue Continue — verifica nell’applicazione.",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "47cc310d6b9286461aca9d1d41503a0690e42cb822d6d33324088c4f4db62d44",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "47cc310d6b9286461aca9d1d41503a0690e42cb822d6d33324088c4f4db62d44",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Visual Studio 2026",
      "application_id": "visual-studio-2026",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. Il blog Visual Studio (29.09.2026) ha annunciato indirizzi personalizzati per OpenAI e Ollama in VS 2026 Stable, ma la documentazione descrive ancora solo chiavi OpenAI/Anthropic/Google senza il campo indirizzo, quindi nomi dei campi e formato dell’indirizzo non sono ancora confermati. Solo chat; non disponibile su piani Copilot Business/Enterprise.",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "ad3afcfac6b1486a8604376e71fcb0f8bb918de24a3811e7a5d703e498726665",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "ad3afcfac6b1486a8604376e71fcb0f8bb918de24a3811e7a5d703e498726665",
      "version_match": null,
      "versions": null
    },
    {
      "application": "Void",
      "application_id": "void",
      "compatibility_scope": {
        "conditions": "In verifica. La configurazione è stata ricavata dalla documentazione dell’applicazione, ma contiene dettagli non confermati. Confrontala con la finestra delle impostazioni e contatta l’assistenza se qualcosa non coincide. Prima dell’avvio, richiedi GET /v1/models con la tua chiave Ailoot. Scegli un ID esatto di modello i cui metodi includano POST /v1/chat/completions e usalo nella configurazione. Per gli agenti, verifica anche gli strumenti e le funzioni richieste dalla tua versione del client. La configurazione è ricavata dal codice sorgente Void, non dalla documentazione utente. Il repository Void è archiviato, l’editor non viene più sviluppato — adatto solo a chi lo usa già.",
        "description": "Editor di codice · OpenAI Chat",
        "formats": [
          "chat"
        ],
        "kind": "documented-subset",
        "runtime_validation": null
      },
      "evidence": {
        "catalogue_sha256": "1668107748e3ae977daef92ec28fad8bc5b3a6747137bbe071f16e7a1872a684",
        "catalogue_url": "https://ailoot.ai/integrations/it/",
        "guide_sha256": "5039e069472260ef0cbf3fa5a843389e867cf7c3e8b04dfd57344eb24071fac9",
        "proof_scope": "accepted-static-integration-content",
        "public_api_contract_sha256": "73c014cafc05d781ab92ee7cb6a5546a07dca7c1066228824cb404e7f623df22"
      },
      "guide_url": "https://ailoot.ai/docs/it/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": "5039e069472260ef0cbf3fa5a843389e867cf7c3e8b04dfd57344eb24071fac9",
      "version_match": null,
      "versions": null
    }
  ],
  "models": [],
  "page": {
    "description": "Applicazioni che accettano la chiave Ailoot e come configurarle.",
    "family": "docs",
    "locale": "it",
    "title": "Integrazioni — documentazione Ailoot",
    "url": "https://ailoot.ai/docs/it/integrations/"
  },
  "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": "milioni di clienti",
        "currency": null,
        "monthly_sales": "vendite nell’ordine dei miliardi ogni mese",
        "scope": "L’azienda e il suo portafoglio di progetti"
      },
      "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/it/",
        "integrations": "https://ailoot.ai/integrations/it/",
        "models": "https://ailoot.ai/models/it/"
      },
      "offer": "https://ailoot.ai/legal/offer?lang=it",
      "openapi": "https://ailoot.ai/openapi.json",
      "page": "https://ailoot.ai/docs/it/integrations/",
      "support": "mailto:support@ailoot.ai"
    },
    "schema": "ailoot-product-facts-v1",
    "source_revision": "21517670e3bd1c82e464bfcabba02b0420d0cc7e5e872941b62867ade7e5dfff",
    "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": "21517670e3bd1c82e464bfcabba02b0420d0cc7e5e872941b62867ade7e5dfff"
}
