{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/stormmcp/json-schema/stormmcp-provider-integration-model-request-schema.json",
  "title": "ProviderIntegrationModelRequest",
  "description": "Request model for saving provider integration configuration.",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/stormmcp-integrations-api-openapi.yml#/components/schemas/ProviderIntegrationModelRequest",
  "required": [
    "authType"
  ],
  "type": "object",
  "properties": {
    "id": {
      "type": [
        "null",
        "string"
      ],
      "description": "Gets or sets the optional ID of the configuration being updated.\nIf provided, the update will target this specific config.\nIf not provided, a new config will be created (or existing at same level updated).",
      "format": "uuid"
    },
    "enabled": {
      "type": "boolean",
      "description": "Gets or sets a value indicating whether this integration is enabled."
    },
    "properties": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "Gets or sets the configuration properties as simple key-value pairs."
    },
    "level": {
      "description": "Gets or sets the access level for this provider configuration.\nPersonal: only the creator can see and use this configuration.\nTenant: all users in the tenant organization can see and use this configuration.\nDefaults to Personal if not specified.",
      "$ref": "#/$defs/Level"
    },
    "authType": {
      "description": "Gets or sets the authentication type selected by the user.\nThis must be provided by the frontend and match one of the auth types\nsupported by the provider in known-mcp-servers.json.",
      "$ref": "#/$defs/McpServerAuthType"
    }
  },
  "$defs": {
    "Level": {
      "enum": [
        "Personal",
        "Tenant"
      ]
    },
    "McpServerAuthType": {
      "type": "integer",
      "description": "An enumeration representing the authentication types for MCP servers."
    }
  }
}