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.CreateSsidOpenApiVo;
import org.wfc.omada.api.sitesetting.model.CreateWlanGroupOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseGridVoSsidOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseListWlanGroupOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseObject;
import org.wfc.omada.api.sitesetting.model.OperationResponseSsidDetailOpenApiVo;
import org.wfc.omada.api.sitesetting.model.OperationResponseWithoutResult;
import org.wfc.omada.api.sitesetting.model.UpdateSsidBasicConfigOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateSsidDhcpOptionOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateSsidMacFilterOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateSsidMultiCastOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateSsidRateControlOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateSsidRateLimitOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateSsidWlanScheduleOpenApiVo;
import org.wfc.omada.api.sitesetting.model.UpdateWlanGroupOpenApiVo;

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 = "OmadaWirelessNetwork", description = "the OmadaWirelessNetwork API")
@FeignClient(name="OmadaWirelessNetworkApi", url = "${omada.omada-url}", configuration = FeignConfig.class)
public interface OmadaWirelessNetworkApi {

    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids : Create new SSID
     * Create new SSID&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;-33000  -  This site does not exist.&lt;br/&gt;-33217  -  Invalid SSID security mode.&lt;br/&gt;-33219  -  This SSID already exists.&lt;br/&gt;-33220  -  Enter a different SSID to override the current SSID.&lt;br/&gt;-33231  -  The ssid&#39; s name should not be the same with emergency ssid.&lt;br/&gt;-33240  -  The SSID name should be between 1 and 32 bytes.&lt;br/&gt;-33788  -  PPSK and OUI Based VLAN are mutually exclusive. Please make sure the SSID is not enabled in OUI Based VLAN.&lt;br/&gt;-33807  -  Invalid VLAN ID. Enter a number from 1 to 4094.&lt;br/&gt;-34017  -  Only the EKMS authentication method in PPSK with RADIUS supports domain name.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param createSsidOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Create new SSID", nickname = "createSsid", notes = "Create new SSID<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/>-33000  -  This site does not exist.<br/>-33217  -  Invalid SSID security mode.<br/>-33219  -  This SSID already exists.<br/>-33220  -  Enter a different SSID to override the current SSID.<br/>-33231  -  The ssid' s name should not be the same with emergency ssid.<br/>-33240  -  The SSID name should be between 1 and 32 bytes.<br/>-33788  -  PPSK and OUI Based VLAN are mutually exclusive. Please make sure the SSID is not enabled in OUI Based VLAN.<br/>-33807  -  Invalid VLAN ID. Enter a number from 1 to 4094.<br/>-34017  -  Only the EKMS authentication method in PPSK with RADIUS supports domain name.", response = OperationResponseObject.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseObject.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseObject> createSsid(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) CreateSsidOpenApiVo createSsidOpenApiVo);


    /**
     * POST /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans : Create new WLAN group
     * Create new WLAN group&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;-33000  -  This site does not exist.&lt;br/&gt;-33200  -  This WLAN group has been already created.&lt;br/&gt;-33201  -  The number of WLAN groups has reached the limit.&lt;br/&gt;-33202  -  This WLAN group is not in the same site.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param createWlanGroupOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Create new WLAN group", nickname = "createWlanGroup", notes = "Create new WLAN group<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/>-33000  -  This site does not exist.<br/>-33200  -  This WLAN group has been already created.<br/>-33201  -  The number of WLAN groups has reached the limit.<br/>-33202  -  This WLAN group is not in the same site.", response = OperationResponseObject.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseObject.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.POST)
    ResponseEntity<OperationResponseObject> createWlanGroup(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) CreateWlanGroupOpenApiVo createWlanGroupOpenApiVo);


    /**
     * DELETE /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId} : Delete an existing SSID
     * Delete an existing SSID&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Delete an existing SSID", nickname = "deleteSsid", notes = "Delete an existing SSID<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/>-33000  -  This site does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}",
        produces = "*/*", 
        method = RequestMethod.DELETE)
    ResponseEntity<OperationResponseWithoutResult> deleteSsid(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId);


    /**
     * DELETE /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId} : Delete an existing WLAN group
     * Delete an existing WLAN group&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;-33203  -  The default WLAN group cannot be deleted.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Delete an existing WLAN group", nickname = "deleteWlanGroup", notes = "Delete an existing WLAN group<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/>-33203  -  The default WLAN group cannot be deleted.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}",
        produces = "*/*", 
        method = RequestMethod.DELETE)
    ResponseEntity<OperationResponseWithoutResult> deleteWlanGroup(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId} : Get SSID detail info
     * Get SSID detail info&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get SSID detail info", nickname = "getSsidDetail", notes = "Get SSID detail info<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/>-33000  -  This site does not exist.", response = OperationResponseSsidDetailOpenApiVo.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseSsidDetailOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseSsidDetailOpenApiVo> getSsidDetail(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId);


    /**
     * GET /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids : Get SSID list
     * Get SSID list&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;-1300  -  Failed to get site information.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN 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 SSID list", nickname = "getSsidList", notes = "Get SSID list<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/>-1300  -  Failed to get site information.", response = OperationResponseGridVoSsidOpenApiVo.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseGridVoSsidOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseGridVoSsidOpenApiVo> getSsidList(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@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}/wireless-network/wlans : Get WLAN group list
     * Get WLAN group list&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Get WLAN group list", nickname = "getWlanGroupList", notes = "Get WLAN group list<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/>-33000  -  This site does not exist.", response = OperationResponseListWlanGroupOpenApiVo.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseListWlanGroupOpenApiVo.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans",
        produces = "*/*", 
        method = RequestMethod.GET)
    ResponseEntity<OperationResponseListWlanGroupOpenApiVo> getWlanGroupList(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-basic-config : Update SSID basic config
     * Update SSID basic config&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;-33000  -  This site does not exist.&lt;br/&gt;-33217  -  Invalid SSID security mode.&lt;br/&gt;-33219  -  This SSID already exists.&lt;br/&gt;-33220  -  Enter a different SSID to override the current SSID.&lt;br/&gt;-33231  -  The ssid&#39; s name should not be the same with emergency ssid.&lt;br/&gt;-33235  -  PPSK without RADIUS do not support WPA Mode with WPA3-SAE.&lt;br/&gt;-33238  -  The number of SSIDs on %band% has reached the limit. At most 8 SSIDs can be created on each band.&lt;br/&gt;-33240  -  The SSID name should be between 1 and 32 bytes.&lt;br/&gt;-33807  -  Invalid VLAN ID. Enter a number from 1 to 4094.&lt;br/&gt;-34017  -  Only the EKMS authentication method in PPSK with RADIUS supports domain name.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidBasicConfigOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID basic config", nickname = "updateSsidBasicConfig", notes = "Update SSID basic config<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/>-33000  -  This site does not exist.<br/>-33217  -  Invalid SSID security mode.<br/>-33219  -  This SSID already exists.<br/>-33220  -  Enter a different SSID to override the current SSID.<br/>-33231  -  The ssid' s name should not be the same with emergency ssid.<br/>-33235  -  PPSK without RADIUS do not support WPA Mode with WPA3-SAE.<br/>-33238  -  The number of SSIDs on %band% has reached the limit. At most 8 SSIDs can be created on each band.<br/>-33240  -  The SSID name should be between 1 and 32 bytes.<br/>-33807  -  Invalid VLAN ID. Enter a number from 1 to 4094.<br/>-34017  -  Only the EKMS authentication method in PPSK with RADIUS supports domain name.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-basic-config",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidBasicConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidBasicConfigOpenApiVo updateSsidBasicConfigOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-dhcp-option : Update SSID DHCP option 82 config
     * Update SSID DHCP option 82 configThis interface applies to the Omada Pro Controller only. Please do not use it for non-Pro controllers.&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;-33000  -  This site does not exist.&lt;br/&gt;-44119  -  This interface applies to the Omada Pro only. Please do not use it for non-Pro controllers or sites.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidDhcpOptionOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID DHCP option 82 config", nickname = "updateSsidDhcpOptionConfig", notes = "Update SSID DHCP option 82 configThis interface applies to the Omada Pro Controller only. Please do not use it for non-Pro controllers.<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/>-33000  -  This site does not exist.<br/>-44119  -  This interface applies to the Omada Pro only. Please do not use it for non-Pro controllers or sites.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-dhcp-option",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidDhcpOptionConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidDhcpOptionOpenApiVo updateSsidDhcpOptionOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-mac-filter : Update SSID mac filter config
     * Update SSID MAC filter config&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidMacFilterOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID mac filter config", nickname = "updateSsidMacFilterConfig", notes = "Update SSID MAC filter config<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/>-33000  -  This site does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-mac-filter",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidMacFilterConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidMacFilterOpenApiVo updateSsidMacFilterOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-multicast-config : Update SSID Multicast/Broadcast management config
     * Update SSID Multicast/Broadcast management config&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidMultiCastOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID Multicast/Broadcast management config", nickname = "updateSsidMultiCastConfig", notes = "Update SSID Multicast/Broadcast management config<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/>-33000  -  This site does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-multicast-config",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidMultiCastConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidMultiCastOpenApiVo updateSsidMultiCastOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-rate-control : Update SSID 802.11 rate control config
     * Update SSID 802.11 rate control config&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidRateControlOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID 802.11 rate control config", nickname = "updateSsidRateControlConfig", notes = "Update SSID 802.11 rate control config<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/>-33000  -  This site does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-rate-control",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidRateControlConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidRateControlOpenApiVo updateSsidRateControlOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-rate-limit : Update SSID rate limit config
     * Update SSID rate limit config&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidRateLimitOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID rate limit config", nickname = "updateSsidRateLimitConfig", notes = "Update SSID rate limit config<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/>-33000  -  This site does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-rate-limit",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidRateLimitConfig(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidRateLimitOpenApiVo updateSsidRateLimitOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-wlan-schedule : Update SSID WLAN schedule config
     * Update SSID WLAN schedule config&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;-33000  -  This site does not exist.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param ssidId SSID ID (required)
     * @param updateSsidWlanScheduleOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Update SSID WLAN schedule config", nickname = "updateSsidWlanSchedule", notes = "Update SSID WLAN schedule config<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/>-33000  -  This site does not exist.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}/ssids/{ssidId}/update-wlan-schedule",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateSsidWlanSchedule(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = "SSID ID",required=true) @PathVariable("ssidId") String ssidId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateSsidWlanScheduleOpenApiVo updateSsidWlanScheduleOpenApiVo);


    /**
     * PATCH /openapi/v1/{omadacId}/sites/{siteId}/wireless-network/wlans/{wlanId} : Modify an existing WLAN group
     * Modify an existing WLAN group&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;-33000  -  This site does not exist.&lt;br/&gt;-33200  -  This WLAN group has been already created.
     *
     * @param omadacId Omada ID (required)
     * @param siteId Site ID (required)
     * @param wlanId WLAN ID (required)
     * @param updateWlanGroupOpenApiVo  (optional)
     * @return OK (status code 200)
     */
    @ApiOperation(value = "Modify an existing WLAN group", nickname = "updateWlanGroup", notes = "Modify an existing WLAN group<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/>-33000  -  This site does not exist.<br/>-33200  -  This WLAN group has been already created.", response = OperationResponseWithoutResult.class, tags={ "Omada/Wireless Network","Wireless Network", })
    @ApiResponses(value = { 
        @ApiResponse(code = 200, message = "OK", response = OperationResponseWithoutResult.class) })
    @RequestMapping(value = "/openapi/v1/${omada.omadac-id}/sites/{siteId}/wireless-network/wlans/{wlanId}",
        produces = "*/*", 
        consumes = "application/json",
        method = RequestMethod.PATCH)
    ResponseEntity<OperationResponseWithoutResult> updateWlanGroup(@ApiParam(value = "Site ID",required=true) @PathVariable("siteId") String siteId,@ApiParam(value = "WLAN ID",required=true) @PathVariable("wlanId") String wlanId,@ApiParam(value = ""  )  @Valid @RequestBody(required = false) UpdateWlanGroupOpenApiVo updateWlanGroupOpenApiVo);

}
