# This file was generated by the Julia Swagger Code Generator
# Do not modify this file directly. Modify the swagger specification instead.

struct LoadBalancersApi <: SwaggerApi
    client::Swagger.Client
end

"""

Creates or updates a load balancer inbound nat rule.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: inboundNatRuleName::String (required)
Param: inboundNatRuleParameters::InboundNatRule (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: InboundNatRule
"""
function _swaggerinternal_inboundNatRulesCreateOrUpdate(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, inboundNatRuleParameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "PUT", InboundNatRule, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}", ["azure_auth"], inboundNatRuleParameters)
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "inboundNatRuleName", inboundNatRuleName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function inboundNatRulesCreateOrUpdate(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, inboundNatRuleParameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesCreateOrUpdate(_api, resourceGroupName, loadBalancerName, inboundNatRuleName, inboundNatRuleParameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function inboundNatRulesCreateOrUpdate(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, inboundNatRuleParameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesCreateOrUpdate(_api, resourceGroupName, loadBalancerName, inboundNatRuleName, inboundNatRuleParameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Deletes the specified load balancer inbound nat rule.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: inboundNatRuleName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: Nothing
"""
function _swaggerinternal_inboundNatRulesDelete(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "DELETE", Nothing, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "inboundNatRuleName", inboundNatRuleName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function inboundNatRulesDelete(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesDelete(_api, resourceGroupName, loadBalancerName, inboundNatRuleName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function inboundNatRulesDelete(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesDelete(_api, resourceGroupName, loadBalancerName, inboundNatRuleName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets the specified load balancer inbound nat rule.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: inboundNatRuleName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Param: expand::String
Return: InboundNatRule
"""
function _swaggerinternal_inboundNatRulesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, api_version::String, subscriptionId::String; expand=nothing, _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", InboundNatRule, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "inboundNatRuleName", inboundNatRuleName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_param(_ctx.query, "\$expand", expand)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function inboundNatRulesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, api_version::String, subscriptionId::String; expand=nothing, _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesGet(_api, resourceGroupName, loadBalancerName, inboundNatRuleName, api_version, subscriptionId; expand=expand, _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function inboundNatRulesGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, inboundNatRuleName::String, api_version::String, subscriptionId::String; expand=nothing, _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesGet(_api, resourceGroupName, loadBalancerName, inboundNatRuleName, api_version, subscriptionId; expand=expand, _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the inbound nat rules in a load balancer.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: InboundNatRuleListResult
"""
function _swaggerinternal_inboundNatRulesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", InboundNatRuleListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function inboundNatRulesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function inboundNatRulesList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_inboundNatRulesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Creates or updates a load balancer backend address pool.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: backendAddressPoolName::String (required)
Param: parameters::BackendAddressPool (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: BackendAddressPool
"""
function _swaggerinternal_loadBalancerBackendAddressPoolsCreateOrUpdate(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "PUT", BackendAddressPool, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", ["azure_auth"], parameters)
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "backendAddressPoolName", backendAddressPoolName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerBackendAddressPoolsCreateOrUpdate(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsCreateOrUpdate(_api, resourceGroupName, loadBalancerName, backendAddressPoolName, parameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerBackendAddressPoolsCreateOrUpdate(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsCreateOrUpdate(_api, resourceGroupName, loadBalancerName, backendAddressPoolName, parameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Deletes the specified load balancer backend address pool.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: backendAddressPoolName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: Nothing
"""
function _swaggerinternal_loadBalancerBackendAddressPoolsDelete(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "DELETE", Nothing, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "backendAddressPoolName", backendAddressPoolName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerBackendAddressPoolsDelete(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsDelete(_api, resourceGroupName, loadBalancerName, backendAddressPoolName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerBackendAddressPoolsDelete(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsDelete(_api, resourceGroupName, loadBalancerName, backendAddressPoolName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets load balancer backend address pool.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: backendAddressPoolName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: BackendAddressPool
"""
function _swaggerinternal_loadBalancerBackendAddressPoolsGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", BackendAddressPool, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "backendAddressPoolName", backendAddressPoolName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerBackendAddressPoolsGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsGet(_api, resourceGroupName, loadBalancerName, backendAddressPoolName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerBackendAddressPoolsGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, backendAddressPoolName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsGet(_api, resourceGroupName, loadBalancerName, backendAddressPoolName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the load balancer backed address pools.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerBackendAddressPoolListResult
"""
function _swaggerinternal_loadBalancerBackendAddressPoolsList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerBackendAddressPoolListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerBackendAddressPoolsList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerBackendAddressPoolsList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerBackendAddressPoolsList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets load balancer frontend IP configuration.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: frontendIPConfigurationName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: FrontendIPConfiguration
"""
function _swaggerinternal_loadBalancerFrontendIPConfigurationsGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, frontendIPConfigurationName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", FrontendIPConfiguration, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "frontendIPConfigurationName", frontendIPConfigurationName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerFrontendIPConfigurationsGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, frontendIPConfigurationName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerFrontendIPConfigurationsGet(_api, resourceGroupName, loadBalancerName, frontendIPConfigurationName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerFrontendIPConfigurationsGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, frontendIPConfigurationName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerFrontendIPConfigurationsGet(_api, resourceGroupName, loadBalancerName, frontendIPConfigurationName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the load balancer frontend IP configurations.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerFrontendIPConfigurationListResult
"""
function _swaggerinternal_loadBalancerFrontendIPConfigurationsList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerFrontendIPConfigurationListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerFrontendIPConfigurationsList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerFrontendIPConfigurationsList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerFrontendIPConfigurationsList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerFrontendIPConfigurationsList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets the specified load balancer load balancing rule.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: loadBalancingRuleName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancingRule
"""
function _swaggerinternal_loadBalancerLoadBalancingRulesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, loadBalancingRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancingRule, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancingRuleName", loadBalancingRuleName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerLoadBalancingRulesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, loadBalancingRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerLoadBalancingRulesGet(_api, resourceGroupName, loadBalancerName, loadBalancingRuleName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerLoadBalancingRulesGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, loadBalancingRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerLoadBalancingRulesGet(_api, resourceGroupName, loadBalancerName, loadBalancingRuleName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the load balancing rules in a load balancer.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerLoadBalancingRuleListResult
"""
function _swaggerinternal_loadBalancerLoadBalancingRulesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerLoadBalancingRuleListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerLoadBalancingRulesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerLoadBalancingRulesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerLoadBalancingRulesList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerLoadBalancingRulesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets associated load balancer network interfaces.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: NetworkInterfaceListResult
"""
function _swaggerinternal_loadBalancerNetworkInterfacesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", NetworkInterfaceListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerNetworkInterfacesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerNetworkInterfacesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerNetworkInterfacesList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerNetworkInterfacesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets the specified load balancer outbound rule.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: outboundRuleName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: OutboundRule
"""
function _swaggerinternal_loadBalancerOutboundRulesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, outboundRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", OutboundRule, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "outboundRuleName", outboundRuleName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerOutboundRulesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, outboundRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerOutboundRulesGet(_api, resourceGroupName, loadBalancerName, outboundRuleName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerOutboundRulesGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, outboundRuleName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerOutboundRulesGet(_api, resourceGroupName, loadBalancerName, outboundRuleName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the outbound rules in a load balancer.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerOutboundRuleListResult
"""
function _swaggerinternal_loadBalancerOutboundRulesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerOutboundRuleListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerOutboundRulesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerOutboundRulesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerOutboundRulesList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerOutboundRulesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets load balancer probe.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: probeName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: Probe
"""
function _swaggerinternal_loadBalancerProbesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, probeName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", Probe, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "probeName", probeName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerProbesGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, probeName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerProbesGet(_api, resourceGroupName, loadBalancerName, probeName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerProbesGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, probeName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerProbesGet(_api, resourceGroupName, loadBalancerName, probeName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the load balancer probes.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerProbeListResult
"""
function _swaggerinternal_loadBalancerProbesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerProbeListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancerProbesList(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerProbesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancerProbesList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancerProbesList(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Creates or updates a load balancer.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: parameters::LoadBalancer (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancer
"""
function _swaggerinternal_loadBalancersCreateOrUpdate(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "PUT", LoadBalancer, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}", ["azure_auth"], parameters)
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancersCreateOrUpdate(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersCreateOrUpdate(_api, resourceGroupName, loadBalancerName, parameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancersCreateOrUpdate(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersCreateOrUpdate(_api, resourceGroupName, loadBalancerName, parameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Deletes the specified load balancer.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: Nothing
"""
function _swaggerinternal_loadBalancersDelete(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "DELETE", Nothing, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancersDelete(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersDelete(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancersDelete(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersDelete(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets the specified load balancer.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Param: expand::String
Return: LoadBalancer
"""
function _swaggerinternal_loadBalancersGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; expand=nothing, _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancer, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_param(_ctx.query, "\$expand", expand)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancersGet(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; expand=nothing, _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersGet(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; expand=expand, _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancersGet(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, api_version::String, subscriptionId::String; expand=nothing, _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersGet(_api, resourceGroupName, loadBalancerName, api_version, subscriptionId; expand=expand, _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the load balancers in a resource group.
Param: resourceGroupName::String (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerListResult
"""
function _swaggerinternal_loadBalancersList(_api::LoadBalancersApi, resourceGroupName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerListResult, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers", ["azure_auth"])
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancersList(_api::LoadBalancersApi, resourceGroupName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersList(_api, resourceGroupName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancersList(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersList(_api, resourceGroupName, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Gets all the load balancers in a subscription.
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancerListResult
"""
function _swaggerinternal_loadBalancersListAll(_api::LoadBalancersApi, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "GET", LoadBalancerListResult, "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers", ["azure_auth"])
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancersListAll(_api::LoadBalancersApi, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersListAll(_api, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancersListAll(_api::LoadBalancersApi, response_stream::Channel, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersListAll(_api, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

"""

Updates a load balancer tags.
Param: resourceGroupName::String (required)
Param: loadBalancerName::String (required)
Param: parameters::TagsObject (required)
Param: api_version::String (required)
Param: subscriptionId::String (required)
Return: LoadBalancer
"""
function _swaggerinternal_loadBalancersUpdateTags(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = Swagger.Ctx(_api.client, "PATCH", LoadBalancer, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}", ["azure_auth"], parameters)
    Swagger.set_param(_ctx.path, "resourceGroupName", resourceGroupName)  # type String
    Swagger.set_param(_ctx.path, "loadBalancerName", loadBalancerName)  # type String
    Swagger.set_param(_ctx.path, "subscriptionId", subscriptionId)  # type String
    Swagger.set_param(_ctx.query, "api-version", api_version)  # type String
    Swagger.set_header_accept(_ctx, ["application/json"])
    Swagger.set_header_content_type(_ctx, (_mediaType === nothing) ? ["application/json"] : [_mediaType])
    return _ctx
end

function loadBalancersUpdateTags(_api::LoadBalancersApi, resourceGroupName::String, loadBalancerName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersUpdateTags(_api, resourceGroupName, loadBalancerName, parameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx)
end

function loadBalancersUpdateTags(_api::LoadBalancersApi, response_stream::Channel, resourceGroupName::String, loadBalancerName::String, parameters, api_version::String, subscriptionId::String; _mediaType=nothing)
    _ctx = _swaggerinternal_loadBalancersUpdateTags(_api, resourceGroupName, loadBalancerName, parameters, api_version, subscriptionId; _mediaType=_mediaType)
    Swagger.exec(_ctx, response_stream)
end

export inboundNatRulesCreateOrUpdate, inboundNatRulesDelete, inboundNatRulesGet, inboundNatRulesList, loadBalancerBackendAddressPoolsCreateOrUpdate, loadBalancerBackendAddressPoolsDelete, loadBalancerBackendAddressPoolsGet, loadBalancerBackendAddressPoolsList, loadBalancerFrontendIPConfigurationsGet, loadBalancerFrontendIPConfigurationsList, loadBalancerLoadBalancingRulesGet, loadBalancerLoadBalancingRulesList, loadBalancerNetworkInterfacesList, loadBalancerOutboundRulesGet, loadBalancerOutboundRulesList, loadBalancerProbesGet, loadBalancerProbesList, loadBalancersCreateOrUpdate, loadBalancersDelete, loadBalancersGet, loadBalancersList, loadBalancersListAll, loadBalancersUpdateTags
