{
    "id": "https://schema.management.azure.com/schemas/2015-07-01-preview/Microsoft.ServerManagement.json#",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "Microsoft.ServerManagement",
    "description": "Microsoft.ServerManagement Resource Types",
    "resourceDefinitions": {
        "gateways": {
            "type": "object",
            "description": "A Server management tools gateway",
            "properties": {
                "apiVersion": {
                    "enum": [
                        "2015-07-01-preview"
                    ]
                },
                "type": {
                    "enum": [
                        "Microsoft.ServerManagement/gateways"
                    ]
                },
                "properties": {
                    "type": "object",
                    "additionalProperties": false
                }
            },
            "required": [
                "location",
                "name",
                "properties"
            ]
        },
        "nodes": {
            "type": "object",
            "description": "A Server management tools node",
            "properties": {
                "apiVersion": {
                    "enum": [
                        "2015-07-01-preview"
                    ]
                },
                "type": {
                    "enum": [
                        "Microsoft.ServerManagement/nodes"
                    ]
                },
                "properties": {
                    "type": "object",
                    "properties": {
                        "gatewayId": {
                            "description": "The gateway to to which this node belongs. This is the ARM resource id for the gateway",
                            "type": "string"
                        },
                        "connectionName": {
                            "description": "The node name to connect to. It can be one of NetBios name, IP (v4/v6), FQDN",
                            "type": "string"
                        }
                    },
                    "required": [
                        "gatewayId",
                        "connectionName"
                    ],
                    "additionalProperties": false
                }
            },
            "required": [
                "name",
                "location",
                "properties"
            ]
        },
        "sessions": {
            "type": "object",
            "description": "A server management session.",
            "properties": {
                "apiVersion": {
                    "enum": [
                        "2015-07-01-preview"
                    ]
                },
                "type": {
                    "enum": [
                        "Microsoft.ServerManagement/gateways/sessions",
                        "Microsoft.ServerManagement/nodes/sessions"
                    ]
                },
                "properties": {
                    "type": "object",
                    "properties": {
                        "username": {
                            "description": "The session user name.",
                            "type": "string"
                        },
                        "password": {
                            "description": "The session password.",
                            "type": "string"
                        }
                    },
                    "required": [
                        "username",
                        "password"
                    ],
                    "additionalProperties": false
                }
            },
            "required": [
                "location",
                "name",
                "properties"
            ]
        }
    },
    "properties": {
        "resourceDefinitions.gateways": {
            "$ref": "#/resourceDefinitions/gateways"
        },
        "resourceDefinitions.nodes": {
            "$ref": "#/resourceDefinitions/nodes"
        },
        "resourceDefinitions.sessions": {
            "$ref": "#/resourceDefinitions/sessions"
        }
    },
    "required": [
        "resourceDefinitions.gateways",
        "resourceDefinitions.nodes",
        "resourceDefinitions.sessions"
    ]
}