{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.1",
    "parameters": {
      "workspace": {
        "type": "string",
        "defaultValue": ""
      }
    },
    "resources": [
      {
        "id": "[concat('/subscriptions/',subscription().subscriptionId,'/resourceGroups/',resourceGroup().name,'/providers/Microsoft.OperationalInsights/workspaces/',parameters('workspace'),'/providers/Microsoft.SecurityInsights/dataConnectors/',guid(subscription().subscriptionId),'IslandUser')]",
        "name": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',guid(subscription().subscriptionId),'IslandUser')]",
        "apiVersion": "2021-03-01-preview",
        "type": "Microsoft.OperationalInsights/workspaces/providers/dataConnectors",
        "kind": "APIPolling",
        "properties": {
          "connectorUiConfig": {
            "title": "Island Enterprise Browser User Events (Legacy)",
            "id":"Island_User_Polling",
            "publisher": "Island",
            "descriptionMarkdown": "This is a legacy connector and is no longer recommended. Please use the **Island Enterprise Browser V2 Data Connector** instead, which supports user, admin and system events within a single connector.",
            "graphQueriesTableName": "Island_User_CL",
            "graphQueries": [
              {
                "metricName": "Total events received",
                "legend": "Island Events",
                "baseQuery": "{{graphQueriesTableName}}"
              }
            ],
            "sampleQueries": [
              {
                "description": "Grab 10 Island log entries",
                "query": "{{graphQueriesTableName}}\n | sort by TimeGenerated\n | take 10"
              }
            ],
            "dataTypes": [
              {
                "name": "{{graphQueriesTableName}}",
                "lastDataReceivedQuery": "{{graphQueriesTableName}}\n            | summarize Time = max(TimeGenerated)\n            | where isnotempty(Time)"
              }
            ],
            "connectivityCriterias": [
              {
                "type": "SentinelKindsV2",
                "value": []
              }
            ],
            "availability": {
              "status": 1,
              "isPreview": false
            },
            "permissions": {
              "resourceProvider": [
                {
                  "provider": "Microsoft.OperationalInsights/workspaces",
                  "permissionsDisplayText": "read and write permissions are required.",
                  "providerDisplayName": "Workspace",
                  "scope": "Workspace",
                  "requiredPermissions": {
                    "action": true,
                    "write": true,
                    "read": true,
                    "delete": true
                  }
                }
              ],
              "customs": [
                {
                  "name": "Island API Key",
                  "description": "An Island API key is required."
                }
              ]
            },
            "instructionSteps": [
              {
                "title": "Connect Island to Microsoft Sentinel",
                "description": "This is a legacy connector. For full setup instructions, refer to the [official Island documentation](https://documentation.island.io/docs/configure-the-microsoft-sentinel-integration) (requires login to the Island Management Console).",
                "instructions": [
                  {
                    "parameters": {
                      "enable": "true",
                      "userRequestPlaceHoldersInput": [
                        {
                          "displayText": "API URL",
										      "requestObjectKey": "apiEndpoint",
										      "placeHolderName": "{{placeHolder1}}",
										      "placeHolderValue": ""
                        }
                      ]
                    },
                    "type": "APIKey"
                  }
                ]
              }
            ]
          },
          "pollingConfig": {
            "auth": {
                "authType": "APIKey",
                "APIKeyName": "Api-Key",
                "IsAPIKeyInPostPayload": "False"
            },
            "request": {
                "apiEndpoint": "{{placeHolder1}}",
                "httpMethod": "Get",
                "queryTimeFormat": "yyyy-MM-ddTHH:mm:ssZ",
                "startTimeAttributeName": "start",
                "endTimeAttributeName": "end",
                "queryWindowInMin": 5,
                "rateLimitQPS": 1
            },
            "paging": {
                "pagingType": "Offset",
                "offsetParaName": "offset",
                "pageSizeParaName": "limit",
                "pageSize": 100
            },
            "response": {
                "eventsJsonPaths": [
                    "$.events[*]"
                ]
            }
        }
        }
      }
    ]
}