package org.wfc.omada.api.sitesetting;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.wfc.omada.config.FeignConfig;
import org.wfc.omada.api.sitesetting.model.CheckWanLanStatusOpenApiVo;
import org.wfc.omada.api.sitesetting.model.CreateVlaNs;
import org.wfc.omada.api.sitesetting.model.GridVoLanNetworkVlansOpenApiVo;
import org.wfc.omada.api.sitesetting.model.GridVoOswProfileOpenApiVo;
import org.wfc.omada.api.sitesetting.model.InternetBaseConfigOpenApiVo;
import org.wfc.omada.api.sitesetting.model.LanNetworkOpenApiV2Vo;
import org.wfc.omada.api.sitesetting.model.LanNetworkOpenApiVo;
import org.wfc.omada.api.sitesetting.model.LanProfileConfigOpenApiVo;
import org.wfc.omada.api.sitesetting.model.LteWanPortSettingConfigOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseGridVoLanProfileOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseGridVoUseProfileOswOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseInternetBaseInfoOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseLanNetworkOpenApiGridVoLanNetworkQueryOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseLanNetworkOpenApiV2GridVoLanNetworkQueryOpenApiV2Vo;
import org.wfc.omada.api.sitesetting.model.OperationResponseLocationAndIspInfoOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseLteWanSettingOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseResponseDataVoLanNetworkQueryOpenApiV2Vo;
import org.wfc.omada.api.sitesetting.model.OperationResponseResponseDataVoLanNetworkQueryOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseSupportOsgModelOpenApiAppVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseVirtualWanAvailablesOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseVirtualWanGridOpenApiVoVirtualWanInfoOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseWanLoadBalanceOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseWanSettingOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseWithoutResult;
import org.wfc.omada.api.sitesetting.model.OsgModelOpenApiVo;
import org.wfc.omada.api.sitesetting.model.QueryUseNativeNetworkOswOpenApiVo;
import org.wfc.omada.api.sitesetting.model.QueryUseNativeNetworkOswV2OpenApiVo;
import org.wfc.omada.api.sitesetting.model.ResponseIdVo;
import org.wfc.omada.api.sitesetting.model.VirtualWanConfigOpenApiVo;
import org.wfc.omada.api.sitesetting.model.VirtualWanStatusOpenApiVo;
import org.wfc.omada.api.sitesetting.model.WanLoadBalanceOpenApiVo;
import org.wfc.omada.api.sitesetting.model.WanSettingConfigOpenApiVo;

import javax.validation.Valid;
import javax.validation.constraints.NotNull;
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.SpringCodegen", date = "2024-12-04T11:31:51.978+08:00[Asia/Shanghai]")

@Validated
@Api(value = "OmadaWiredNetwork", description = "the OmadaWiredNetwork API")
@FeignClient(name="OmadaWiredNetworkApi", url = "${omada.omada-url}", configuration = FeignConfig.class)
public interface OmadaWiredNetworkApi {

    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/wan-lan-status : Check WAN-LAN status
     * Get gateway basic info and WAN/LAN list. Use this API to operate \&quot;LanNetwork\&quot;.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Check WAN-LAN status", nickname = "checkWanLanStatus", notes = "Get gateway basic info and WAN/LAN list. Use this API to operate \"LanNetwork\".<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = CheckWanLanStatusOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = CheckWanLanStatusOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wan-lan-status",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<CheckWanLanStatusOpenApiVo> checkWanLanStatus(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/lan-networks : Create LAN network
     * Create lan networkThis interface has been deprecated.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33500  -  Network name already existed.&lt;br/&gt;-33501  -  This VLAN already exists in one site.&lt;br/&gt;-33506  -  This Profile name already exists.&lt;br/&gt;-33544  -  The number of interfaces has reached the limit.&lt;br/&gt;-33546  -  The number of networks has reached the limit of 4090.&lt;br/&gt;-33547  -  The number of VLANs has reached the limit of gateway.&lt;br/&gt;-33548  -  The number of VLANs has reached the limit of switch.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param lanNetworkOpenApiVo  (optional)
     * @return OK (status code 200)
     * @deprecated
     */
    @ApiOperation(value = "Create LAN network", nickname = "createLanNetwork", notes = "Create lan networkThis interface has been deprecated.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33500  -  Network name already existed.<br/>-33501  -  This VLAN already exists in one site.<br/>-33506  -  This Profile name already exists.<br/>-33544  -  The number of interfaces has reached the limit.<br/>-33546  -  The number of networks has reached the limit of 4090.<br/>-33547  -  The number of VLANs has reached the limit of gateway.<br/>-33548  -  The number of VLANs has reached the limit of switch.", response = ResponseIdVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = ResponseIdVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<ResponseIdVo> createLanNetwork(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LanNetworkOpenApiVo lanNetworkOpenApiVo);


    /**
     * POST /openapi/v2/{omadacId}/sites/{siteId}/lan-networks : Create LAN network
     * Create lan network&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33500  -  Network name already existed.&lt;br/&gt;-33501  -  This VLAN already exists in one site.&lt;br/&gt;-33506  -  This Profile name already exists.&lt;br/&gt;-33544  -  The number of interfaces has reached the limit.&lt;br/&gt;-33546  -  The number of networks has reached the limit of 4090.&lt;br/&gt;-33547  -  The number of VLANs has reached the limit of gateway.&lt;br/&gt;-33548  -  The number of VLANs has reached the limit of switch.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param lanNetworkOpenApiV2Vo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Create LAN network", nickname = "createLanNetworkV2", notes = "Create lan network<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33500  -  Network name already existed.<br/>-33501  -  This VLAN already exists in one site.<br/>-33506  -  This Profile name already exists.<br/>-33544  -  The number of interfaces has reached the limit.<br/>-33546  -  The number of networks has reached the limit of 4090.<br/>-33547  -  The number of VLANs has reached the limit of gateway.<br/>-33548  -  The number of VLANs has reached the limit of switch.", response = ResponseIdVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = ResponseIdVo.class) })
    @RequestMapping(value = "/openapi/v2/{omadacId}/sites/{siteId}/lan-networks",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<ResponseIdVo> createLanNetworkV2(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LanNetworkOpenApiV2Vo lanNetworkOpenApiV2Vo);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/lan-profiles : Create new LAN profile
     * Create new LAN profile.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;0  -  Success.&lt;br/&gt;-1001  -  Invalid request parameters.&lt;br/&gt;-33004  -  Operation failed because other operations are being performed on this site. Please wait and try again later.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param lanProfileConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Create new LAN profile", nickname = "createLanProfile", notes = "Create new LAN profile.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>0  -  Success.<br/>-1001  -  Invalid request parameters.<br/>-33004  -  Operation failed because other operations are being performed on this site. Please wait and try again later.", response = ResponseIdVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = ResponseIdVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-profiles",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<ResponseIdVo> createLanProfile(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LanProfileConfigOpenApiVo lanProfileConfigOpenApiVo);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/setting/virtual-wans : Create virtual WAN
     * Create virtual WAN.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-44701  -  Duplicate VLAN IDs of the virtual WAN.&lt;br/&gt;-44702  -  Duplicate names of the virtual WAN.&lt;br/&gt;-44703  -  When no gateway is adopted, at most 3 virtual WAN ports can be added.&lt;br/&gt;-44704  -  The number of enabled WAN ports and virtual WAN ports cannot exceed the number of WAN ports plus 3.&lt;br/&gt;-44705  -  At most 3 virtual WAN ports can be mapped to each WAN port.&lt;br/&gt;-44706  -  DSL setting cannot be null when DSL WAN is selected.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param virtualWanConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Create virtual WAN", nickname = "createVirtualWan", notes = "Create virtual WAN.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-44701  -  Duplicate VLAN IDs of the virtual WAN.<br/>-44702  -  Duplicate names of the virtual WAN.<br/>-44703  -  When no gateway is adopted, at most 3 virtual WAN ports can be added.<br/>-44704  -  The number of enabled WAN ports and virtual WAN ports cannot exceed the number of WAN ports plus 3.<br/>-44705  -  At most 3 virtual WAN ports can be mapped to each WAN port.<br/>-44706  -  DSL setting cannot be null when DSL WAN is selected.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/setting/virtual-wans",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseWithoutResult> createVirtualWan(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) VirtualWanConfigOpenApiVo virtualWanConfigOpenApiVo);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/lan-vlans : Batch create vlans
     * Batch create vlans. Format support: 200, 1-100.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33500  -  Network name already existed.&lt;br/&gt;-33501  -  This VLAN already exists in one site.&lt;br/&gt;-33506  -  This Profile name already exists.&lt;br/&gt;-33547  -  The number of VLANs has reached the limit of gateway.&lt;br/&gt;-33548  -  The number of VLANs has reached the limit of switch.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param createVlaNs  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Batch create vlans", nickname = "createVlans", notes = "Batch create vlans. Format support: 200, 1-100.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33500  -  Network name already existed.<br/>-33501  -  This VLAN already exists in one site.<br/>-33506  -  This Profile name already exists.<br/>-33547  -  The number of VLANs has reached the limit of gateway.<br/>-33548  -  The number of VLANs has reached the limit of switch.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-vlans",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseWithoutResult> createVlans(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) CreateVlaNs createVlaNs);


    /**
     * DELETE /openapi/v1/{omadacId}/sites/{siteId}/lan-networks/{networkId} : Delete LAN network
     * Delete LAN network. If returns -33566, use \&quot;Query switches that used the Native Network&#39;s profile\&quot; to query these switches.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33503  -  This network does not exist.&lt;br/&gt;-33505  -  Default LAN cannot be deleted.&lt;br/&gt;-33566  -  The network has been configured as the switch&#39;s native network. Cannot delete the network.&lt;br/&gt;-35200  -  The LAN network referenced by the IDS/IPS-Allow List cannot be deleted.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param networkId Network ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Delete LAN network", nickname = "deleteLanNetwork", notes = "Delete LAN network. If returns -33566, use \"Query switches that used the Native Network's profile\" to query these switches.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33503  -  This network does not exist.<br/>-33505  -  Default LAN cannot be deleted.<br/>-33566  -  The network has been configured as the switch's native network. Cannot delete the network.<br/>-35200  -  The LAN network referenced by the IDS/IPS-Allow List cannot be deleted.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks/{networkId}",
        produces = "*/*", 
        method = RequestMethod.DELETE)
    ResponseEntity<OperationResponseWithoutResult> deleteLanNetwork(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Network ID",required=true) @PathVariable("networkId") String networkId);


    /**
     * DELETE /openapi/v1/{omadacId}/sites/{siteId}/lan-profiles/{profileId} : Delete an existing LAN profile
     * Delete an existing LAN profile. If returns -33560, use \&quot;Query easy managed switch that used the profile\&quot; to query these easy managed switches.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;0  -  Success.&lt;br/&gt;-1001  -  Invalid request parameters.&lt;br/&gt;-33004  -  Operation failed because other operations are being performed on this site. Please wait and try again later.&lt;br/&gt;-33507  -  This profile does not exist.&lt;br/&gt;-33560  -  The Easy Managed Switch has been configured with this profile. Cannot delete the profile or turn off the option \&quot;Easy Managed Switch Enabled\&quot;.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param profileId LAN profile ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Delete an existing LAN profile", nickname = "deleteLanProfile", notes = "Delete an existing LAN profile. If returns -33560, use \"Query easy managed switch that used the profile\" to query these easy managed switches.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>0  -  Success.<br/>-1001  -  Invalid request parameters.<br/>-33004  -  Operation failed because other operations are being performed on this site. Please wait and try again later.<br/>-33507  -  This profile does not exist.<br/>-33560  -  The Easy Managed Switch has been configured with this profile. Cannot delete the profile or turn off the option \"Easy Managed Switch Enabled\".", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-profiles/{profileId}",
        produces = "*/*", 
        method = RequestMethod.DELETE)
    ResponseEntity<OperationResponseWithoutResult> deleteLanProfile(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "LAN profile ID",required=true) @PathVariable("profileId") String profileId);


    /**
     * DELETE /openapi/v1/{omadacId}/sites/{siteId}/setting/virtual-wans/{virtualWanId} : Delete virtual WAN
     * Delete virtual WAN status.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param virtualWanId Virtual WAN ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Delete virtual WAN", nickname = "deleteVirtualWan", notes = "Delete virtual WAN status.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/setting/virtual-wans/{virtualWanId}",
        produces = "*/*", 
        method = RequestMethod.DELETE)
    ResponseEntity<OperationResponseWithoutResult> deleteVirtualWan(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Virtual WAN ID",required=true) @PathVariable("virtualWanId") String virtualWanId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/switch-oui-rules/valid-vlans : Get valid vlanList for switch oui based vlan
     * Get valid vlanList for switch oui based vlan&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get valid vlanList for switch oui based vlan", nickname = "getAllValidVlansInSiteForSwitchOuiBasedVlan", notes = "Get valid vlanList for switch oui based vlan<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = GridVoLanNetworkVlansOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = GridVoLanNetworkVlansOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/switch-oui-rules/valid-vlans",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<GridVoLanNetworkVlansOpenApiVo> getAllValidVlansInSiteForSwitchOuiBasedVlan(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/setting/available-virtual-wans : Query available virtual WAN list
     * Query available virtual WAN list.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Query available virtual WAN list", nickname = "getAvailableVirtualWan", notes = "Query available virtual WAN list.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseVirtualWanAvailablesOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseVirtualWanAvailablesOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/setting/available-virtual-wans",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseVirtualWanAvailablesOpenApiVo> getAvailableVirtualWan(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/setting/virtual-wans : Query virtual WAN list
     * Query virtual WAN list.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Query virtual WAN list", nickname = "getGridVirtualWan", notes = "Query virtual WAN list.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseVirtualWanGridOpenApiVoVirtualWanInfoOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseVirtualWanGridOpenApiVoVirtualWanInfoOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/setting/virtual-wans",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseVirtualWanGridOpenApiVoVirtualWanInfoOpenApiVo> getGridVirtualWan(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/lan-networks/interface : Get all \&quot;single\&quot;/\&quot;multi\&quot; interface lan network
     * Get all \&quot;single\&quot;/\&quot;multi\&quot; interface lan networkThis interface has been deprecated.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param type Interface vlan type. When \&quot;type\&quot; is 0, return \&quot;single\&quot; interface lan network, else return \&quot;single\&quot;/\&quot;multi\&quot; interface lan network (optional)
     * @return OK (status code 200)
     * @deprecated
     */
    @ApiOperation(value = "Get all \"single\"/\"multi\" interface lan network", nickname = "getInterfaceLanNetwork", notes = "Get all \"single\"/\"multi\" interface lan networkThis interface has been deprecated.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseResponseDataVoLanNetworkQueryOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseResponseDataVoLanNetworkQueryOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks/interface",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseResponseDataVoLanNetworkQueryOpenApiVo> getInterfaceLanNetwork(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Interface vlan type. When \"type\" is 0, return \"single\" interface lan network, else return \"single\"/\"multi\" interface lan network") @Valid @RequestParam(value = "type", required = false) Integer type);


    /**
     * GET /openapi/v2/{omadacId}/sites/{siteId}/lan-networks/interface : Get all \&quot;single\&quot;/\&quot;multi\&quot; interface lan network
     * Get all \&quot;single\&quot;/\&quot;multi\&quot; interface lan network&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param type Interface vlan type. When \&quot;type\&quot; is 0, return \&quot;single\&quot; interface lan network, else return \&quot;single\&quot;/\&quot;multi\&quot; interface lan network (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get all \"single\"/\"multi\" interface lan network", nickname = "getInterfaceLanNetworkV2", notes = "Get all \"single\"/\"multi\" interface lan network<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseResponseDataVoLanNetworkQueryOpenApiV2Vo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseResponseDataVoLanNetworkQueryOpenApiV2Vo.class) })
    @RequestMapping(value = "/openapi/v2/{omadacId}/sites/{siteId}/lan-networks/interface",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseResponseDataVoLanNetworkQueryOpenApiV2Vo> getInterfaceLanNetworkV2(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Interface vlan type. When \"type\" is 0, return \"single\" interface lan network, else return \"single\"/\"multi\" interface lan network") @Valid @RequestParam(value = "type", required = false) Integer type);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/internet/basic-info : Get internet basic info
     * Get internet basic info. All port and port-related configuration will take effect only the The parameter [preConfiguration] is true.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get internet basic info", nickname = "getInternetBasicPortInfo", notes = "Get internet basic info. All port and port-related configuration will take effect only the The parameter [preConfiguration] is true.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseInternetBaseInfoOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseInternetBaseInfoOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/basic-info",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseInternetBaseInfoOpenApiVo> getInternetBasicPortInfo(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/internet/load-balance : Get internet load balance config
     * Get internet load balance config.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get internet load balance config", nickname = "getInternetLoadBalance", notes = "Get internet load balance config.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseWanLoadBalanceOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWanLoadBalanceOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/load-balance",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseWanLoadBalanceOpenApiVo> getInternetLoadBalance(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/lan-networks : Get LAN network list
     * Get LAN network list.(Pagination). This interface has been deprecated.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     * @deprecated
     */
    @ApiOperation(value = "Get LAN network list", nickname = "getLanNetworkList", notes = "Get LAN network list.(Pagination). This interface has been deprecated.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseLanNetworkOpenApiGridVoLanNetworkQueryOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseLanNetworkOpenApiGridVoLanNetworkQueryOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseLanNetworkOpenApiGridVoLanNetworkQueryOpenApiVo> getLanNetworkList(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * GET /openapi/v2/{omadacId}/sites/{siteId}/lan-networks : Get LAN network list
     * Get LAN network list.(Pagination)&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get LAN network list", nickname = "getLanNetworkListV2", notes = "Get LAN network list.(Pagination)<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseLanNetworkOpenApiV2GridVoLanNetworkQueryOpenApiV2Vo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseLanNetworkOpenApiV2GridVoLanNetworkQueryOpenApiV2Vo.class) })
    @RequestMapping(value = "/openapi/v2/{omadacId}/sites/{siteId}/lan-networks",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseLanNetworkOpenApiV2GridVoLanNetworkQueryOpenApiV2Vo> getLanNetworkListV2(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/lan-profiles : Get LAN profile list
     * Get LAN profile list.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get LAN profile list", nickname = "getLanProfileList", notes = "Get LAN profile list.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseGridVoLanProfileOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseGridVoLanProfileOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-profiles",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseGridVoLanProfileOpenApiVo> getLanProfileList(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/internet/location-isp : Get location and ISP info
     * Get index and name of location and ISP in usb wan port configuration.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get location and ISP info", nickname = "getLocationAndIspInfo", notes = "Get index and name of location and ISP in usb wan port configuration.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseLocationAndIspInfoOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseLocationAndIspInfoOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/location-isp",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseLocationAndIspInfoOpenApiVo> getLocationAndIspInfo(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/internet/lte/ports-config : Get internet lte wan ports config
     * Get internet lte wan  ports config.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get internet lte wan ports config", nickname = "getLteWanPortsConfig", notes = "Get internet lte wan  ports config.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseLteWanSettingOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseLteWanSettingOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/lte/ports-config",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseLteWanSettingOpenApiVo> getLteWanPortsConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/lan-switch-setting : Get switch port profile info
     * Get switch port profile info.(Pagination)&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get switch port profile info", nickname = "getOswPortLanNetInfo", notes = "Get switch port profile info.(Pagination)<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = GridVoOswProfileOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = GridVoOswProfileOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-switch-setting",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<GridVoOswProfileOpenApiVo> getOswPortLanNetInfo(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/internet/models : Get supported gateway model list for pre-configuration
     * Get ID and name of supported gateway models for pre-configuration.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get supported gateway model list for pre-configuration", nickname = "getSupportInfo", notes = "Get ID and name of supported gateway models for pre-configuration.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseSupportOsgModelOpenApiAppVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseSupportOsgModelOpenApiAppVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/models",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseSupportOsgModelOpenApiAppVo> getSupportInfo(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/lan-profiles/{profileId}/es : Query easy managed switches that used the profile
     * Query easy managed switches that used the profile.(Pagination)&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33507  -  This profile does not exist.&lt;br/&gt;-33558  -  The profile does not support the Easy Managed Switch.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param profileId  (required)
     * @param page Start page number. Start from 1. (required)
     * @param pageSize Number of entries per page. It should be within the range of 1–1000. (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Query easy managed switches that used the profile", nickname = "getUseLanProfileES", notes = "Query easy managed switches that used the profile.(Pagination)<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33507  -  This profile does not exist.<br/>-33558  -  The profile does not support the Easy Managed Switch.", response = OperationResponseGridVoUseProfileOswOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseGridVoUseProfileOswOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-profiles/{profileId}/es",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseGridVoUseProfileOswOpenApiVo> getUseLanProfileES(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "",required=true) @PathVariable("profileId") String profileId,@NotNull @ApiParam(value = "Start page number. Start from 1.", required = true) @Valid @RequestParam(value = "page", required = true) Integer page,@NotNull @ApiParam(value = "Number of entries per page. It should be within the range of 1–1000.", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/lan-networks/es : Query switches that used the Native Network&#39;s profile
     * Query switches that used the Native Network&#39;s profile.(Pagination)&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33503  -  This network does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param queryUseNativeNetworkOswOpenApiVo  (optional)
     * @return OK (status code 200)
     * @deprecated
     */
    @ApiOperation(value = "Query switches that used the Native Network's profile", nickname = "getUseNativeNetworkOsw", notes = "Query switches that used the Native Network's profile.(Pagination)<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33503  -  This network does not exist.", response = OperationResponseGridVoUseProfileOswOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseGridVoUseProfileOswOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks/es",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseGridVoUseProfileOswOpenApiVo> getUseNativeNetworkOsw(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) QueryUseNativeNetworkOswOpenApiVo queryUseNativeNetworkOswOpenApiVo);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/lan-networks/es-native : Query switches that used the Native Network&#39;s profile
     * Query switches that used the Native Network&#39;s profile.(Pagination)&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33503  -  This network does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param queryUseNativeNetworkOswV2OpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Query switches that used the Native Network's profile", nickname = "getUseNativeNetworkOswV2", notes = "Query switches that used the Native Network's profile.(Pagination)<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33503  -  This network does not exist.", response = OperationResponseGridVoUseProfileOswOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseGridVoUseProfileOswOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks/es-native",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseGridVoUseProfileOswOpenApiVo> getUseNativeNetworkOswV2(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) QueryUseNativeNetworkOswV2OpenApiVo queryUseNativeNetworkOswV2OpenApiVo);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/internet/ports-config : Get internet ports config
     * Get internet ports config.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager View Only
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get internet ports config", nickname = "getWanPortsConfig", notes = "Get internet ports config.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager View Only", response = OperationResponseWanSettingOpenApiVo.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWanSettingOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/ports-config",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseWanSettingOpenApiVo> getWanPortsConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/internet/change-model : Modify gateway mode for pre-configuration
     * Only effective when there is no adopted gateway. The port-related configuration(like ACL) will lost after changing the model, so it is recommended to call this method before all gateway pre-configuration.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param osgModelOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify gateway mode for pre-configuration", nickname = "modifyGatewayModel", notes = "Only effective when there is no adopted gateway. The port-related configuration(like ACL) will lost after changing the model, so it is recommended to call this method before all gateway pre-configuration.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/change-model",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseWithoutResult> modifyGatewayModel(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) OsgModelOpenApiVo osgModelOpenApiVo);


    /**
     * PUT /openapi/v1/{omadacId}/sites/{siteId}/internet/basic-info : Modify the internet basic configuration
     * Modify the internet basic configuration.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33400  -  Current site has no Wan.&lt;br/&gt;-33531  -  This WAN port has been used by other networks.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param internetBaseConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify the internet basic configuration", nickname = "modifyInternetBasicPortInfo", notes = "Modify the internet basic configuration.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33400  -  Current site has no Wan.<br/>-33531  -  This WAN port has been used by other networks.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/basic-info",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PUT)
    ResponseEntity<OperationResponseWithoutResult> modifyInternetBasicPortInfo(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) InternetBaseConfigOpenApiVo internetBaseConfigOpenApiVo);


    /**
     * PUT /openapi/v1/{omadacId}/sites/{siteId}/internet/load-balance : Modify internet load balance config
     * Modify internet load balance config.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wanLoadBalanceOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify internet load balance config", nickname = "modifyInternetLoadBalance", notes = "Modify internet load balance config.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/load-balance",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PUT)
    ResponseEntity<OperationResponseWithoutResult> modifyInternetLoadBalance(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) WanLoadBalanceOpenApiVo wanLoadBalanceOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/lan-networks/{networkId} : Modify LAN network
     * Modify LAN networkThis interface has been deprecated.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33500  -  Network name already existed.&lt;br/&gt;-33501  -  This VLAN already exists in one site.&lt;br/&gt;-33503  -  This network does not exist.&lt;br/&gt;-33506  -  This Profile name already exists.&lt;br/&gt;-33527  -  The interface of Default LAN cannot be modified.&lt;br/&gt;-33544  -  The number of interfaces has reached the limit.&lt;br/&gt;-33545  -  The VLAN Type of Default LAN cannot be modified.&lt;br/&gt;-34235  -  The VLAN cannot be set to 1 since it is used in OUI Based VLAN rules which do not allow VLAN 1.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param networkId Network ID (required)
     * @param lanNetworkOpenApiVo  (optional)
     * @return OK (status code 200)
     * @deprecated
     */
    @ApiOperation(value = "Modify LAN network", nickname = "modifyLanNetwork", notes = "Modify LAN networkThis interface has been deprecated.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33500  -  Network name already existed.<br/>-33501  -  This VLAN already exists in one site.<br/>-33503  -  This network does not exist.<br/>-33506  -  This Profile name already exists.<br/>-33527  -  The interface of Default LAN cannot be modified.<br/>-33544  -  The number of interfaces has reached the limit.<br/>-33545  -  The VLAN Type of Default LAN cannot be modified.<br/>-34235  -  The VLAN cannot be set to 1 since it is used in OUI Based VLAN rules which do not allow VLAN 1.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-networks/{networkId}",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> modifyLanNetwork(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Network ID",required=true) @PathVariable("networkId") String networkId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LanNetworkOpenApiVo lanNetworkOpenApiVo);


    /**
     * PATCH /openapi/v2/{omadacId}/sites/{siteId}/lan-networks/{networkId} : Modify LAN network
     * Modify LAN network&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33500  -  Network name already existed.&lt;br/&gt;-33501  -  This VLAN already exists in one site.&lt;br/&gt;-33503  -  This network does not exist.&lt;br/&gt;-33506  -  This Profile name already exists.&lt;br/&gt;-33527  -  The interface of Default LAN cannot be modified.&lt;br/&gt;-33544  -  The number of interfaces has reached the limit.&lt;br/&gt;-33545  -  The VLAN Type of Default LAN cannot be modified.&lt;br/&gt;-34235  -  The VLAN cannot be set to 1 since it is used in OUI Based VLAN rules which do not allow VLAN 1.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param networkId Network ID (required)
     * @param lanNetworkOpenApiV2Vo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify LAN network", nickname = "modifyLanNetworkV2", notes = "Modify LAN network<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33500  -  Network name already existed.<br/>-33501  -  This VLAN already exists in one site.<br/>-33503  -  This network does not exist.<br/>-33506  -  This Profile name already exists.<br/>-33527  -  The interface of Default LAN cannot be modified.<br/>-33544  -  The number of interfaces has reached the limit.<br/>-33545  -  The VLAN Type of Default LAN cannot be modified.<br/>-34235  -  The VLAN cannot be set to 1 since it is used in OUI Based VLAN rules which do not allow VLAN 1.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v2/{omadacId}/sites/{siteId}/lan-networks/{networkId}",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> modifyLanNetworkV2(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Network ID",required=true) @PathVariable("networkId") String networkId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LanNetworkOpenApiV2Vo lanNetworkOpenApiV2Vo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/lan-profiles/{profileId} : Modify a LAN profile
     * Modify a LAN profile.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;0  -  Success.&lt;br/&gt;-1001  -  Invalid request parameters.&lt;br/&gt;-33004  -  Operation failed because other operations are being performed on this site. Please wait and try again later.&lt;br/&gt;-33507  -  This profile does not exist.&lt;br/&gt;-33560  -  The Easy Managed Switch has been configured with this profile. Cannot delete the profile or turn off the option \&quot;Easy Managed Switch Enabled\&quot;.&lt;br/&gt;-33564  -  The number of VLANs has reached the limit of the Easy Managed Switch.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param profileId lanProfileId (required)
     * @param lanProfileConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify a LAN profile", nickname = "modifyLanProfile", notes = "Modify a LAN profile.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>0  -  Success.<br/>-1001  -  Invalid request parameters.<br/>-33004  -  Operation failed because other operations are being performed on this site. Please wait and try again later.<br/>-33507  -  This profile does not exist.<br/>-33560  -  The Easy Managed Switch has been configured with this profile. Cannot delete the profile or turn off the option \"Easy Managed Switch Enabled\".<br/>-33564  -  The number of VLANs has reached the limit of the Easy Managed Switch.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/lan-profiles/{profileId}",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> modifyLanProfile(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "lanProfileId",required=true) @PathVariable("profileId") String profileId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LanProfileConfigOpenApiVo lanProfileConfigOpenApiVo);


    /**
     * PUT /openapi/v1/{omadacId}/sites/{siteId}/internet/lte/ports-config : Modify internet lte port config
     * Modify internet port lte config. Make sure the parameter[preConfiguration] is true, so the port configuration can take effect after you adopt a gateway.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33400  -  Current site has no Wan.&lt;br/&gt;-33507  -  This profile does not exist.&lt;br/&gt;-33553  -  The LTE WAN port is configured with IPv6 network. Please re-select the APN Profile of IPv6 mode.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param lteWanPortSettingConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify internet lte port config", nickname = "modifyLteWanPortConfig", notes = "Modify internet port lte config. Make sure the parameter[preConfiguration] is true, so the port configuration can take effect after you adopt a gateway.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33400  -  Current site has no Wan.<br/>-33507  -  This profile does not exist.<br/>-33553  -  The LTE WAN port is configured with IPv6 network. Please re-select the APN Profile of IPv6 mode.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/lte/ports-config",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PUT)
    ResponseEntity<OperationResponseWithoutResult> modifyLteWanPortConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) LteWanPortSettingConfigOpenApiVo lteWanPortSettingConfigOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/setting/virtual-wans/{virtualWanId} : Modify virtual WAN
     * Modify virtual WAN.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-44700  -  This virtual WAN does not exist.&lt;br/&gt;-44701  -  Duplicate VLAN IDs of the virtual WAN.&lt;br/&gt;-44702  -  Duplicate names of the virtual WAN.&lt;br/&gt;-44703  -  When no gateway is adopted, at most 3 virtual WAN ports can be added.&lt;br/&gt;-44704  -  The number of enabled WAN ports and virtual WAN ports cannot exceed the number of WAN ports plus 3.&lt;br/&gt;-44705  -  At most 3 virtual WAN ports can be mapped to each WAN port.&lt;br/&gt;-44706  -  DSL setting cannot be null when DSL WAN is selected.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param virtualWanId Virtual WAN ID (required)
     * @param virtualWanConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify virtual WAN", nickname = "modifyVirtualWan", notes = "Modify virtual WAN.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-44700  -  This virtual WAN does not exist.<br/>-44701  -  Duplicate VLAN IDs of the virtual WAN.<br/>-44702  -  Duplicate names of the virtual WAN.<br/>-44703  -  When no gateway is adopted, at most 3 virtual WAN ports can be added.<br/>-44704  -  The number of enabled WAN ports and virtual WAN ports cannot exceed the number of WAN ports plus 3.<br/>-44705  -  At most 3 virtual WAN ports can be mapped to each WAN port.<br/>-44706  -  DSL setting cannot be null when DSL WAN is selected.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/setting/virtual-wans/{virtualWanId}",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> modifyVirtualWan(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Virtual WAN ID",required=true) @PathVariable("virtualWanId") String virtualWanId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) VirtualWanConfigOpenApiVo virtualWanConfigOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/setting/virtual-wans/{virtualWanId}/status : Modify virtual WAN status
     * Modify virtual WAN status.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-44700  -  This virtual WAN does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param virtualWanId Virtual WAN ID (required)
     * @param virtualWanStatusOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify virtual WAN status", nickname = "modifyVirtualWanStatus", notes = "Modify virtual WAN status.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-44700  -  This virtual WAN does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/setting/virtual-wans/{virtualWanId}/status",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> modifyVirtualWanStatus(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "Virtual WAN ID",required=true) @PathVariable("virtualWanId") String virtualWanId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) VirtualWanStatusOpenApiVo virtualWanStatusOpenApiVo);


    /**
     * PUT /openapi/v1/{omadacId}/sites/{siteId}/internet/ports-config : Modify internet ports config
     * Modify internet ports config. Make sure the parameter[preConfiguration] is true and all wan ports config is include, so the port configuration can take effect after you adopt a gateway.&lt;br/&gt;&lt;br/&gt;The interface requires one of the permissions: &lt;br/&gt;Site Settings Manager Modify&lt;br/&gt;&lt;br/&gt;The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): &lt;br/&gt;-33400  -  Current site has no Wan.&lt;br/&gt;-33413  -  The IP range you set for the WAN port conflicts with the IP range of LAN networks.&lt;br/&gt;-33414  -  The MAC address is not available because it has been used for another port.&lt;br/&gt;-33416  -  The IP range you set for the WAN port conflicts with the IP range of the other WAN port.&lt;br/&gt;-33426  -  The Secondary DNS cannot be the same as the Primary DNS. Please enter another IP address.&lt;br/&gt;-33427  -  The IP you set for DNS Server conflicts with the IP range of the LAN network.&lt;br/&gt;-33429  -  There are duplicate IPs in the WAN alias IPs and static IPs.&lt;br/&gt;-33431  -  VLAN ID ranges from 1 to 4086.&lt;br/&gt;-33501  -  This VLAN already exists in one site.&lt;br/&gt;-33531  -  This WAN port has been used by other networks.&lt;br/&gt;-34212  -  The WAN port is used for one-to-one NAT and can only use the Static IP type.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wanSettingConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify internet ports config", nickname = "modifyWanPortsConfig", notes = "Modify internet ports config. Make sure the parameter[preConfiguration] is true and all wan ports config is include, so the port configuration can take effect after you adopt a gateway.<br/><br/>The interface requires one of the permissions: <br/>Site Settings Manager Modify<br/><br/>The possible error code for the interface in the returned body is one of the following error codes (non generic error codes): <br/>-33400  -  Current site has no Wan.<br/>-33413  -  The IP range you set for the WAN port conflicts with the IP range of LAN networks.<br/>-33414  -  The MAC address is not available because it has been used for another port.<br/>-33416  -  The IP range you set for the WAN port conflicts with the IP range of the other WAN port.<br/>-33426  -  The Secondary DNS cannot be the same as the Primary DNS. Please enter another IP address.<br/>-33427  -  The IP you set for DNS Server conflicts with the IP range of the LAN network.<br/>-33429  -  There are duplicate IPs in the WAN alias IPs and static IPs.<br/>-33431  -  VLAN ID ranges from 1 to 4086.<br/>-33501  -  This VLAN already exists in one site.<br/>-33531  -  This WAN port has been used by other networks.<br/>-34212  -  The WAN port is used for one-to-one NAT and can only use the Static IP type.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wired Network","Wired Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/internet/ports-config",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PUT)
    ResponseEntity<OperationResponseWithoutResult> modifyWanPortsConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) WanSettingConfigOpenApiVo wanSettingConfigOpenApiVo);

}
