Java Code Examples for org.apache.axis2.transport.http.HTTPConstants#HEADER_GET

The following examples show how to use org.apache.axis2.transport.http.HTTPConstants#HEADER_GET . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: GroupManagementAdminService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/count")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Get the count of groups belongs to current user.",
        notes = "Returns count of all permitted groups enrolled with the system.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:admin-groups:count")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device group count.",
                response = DeviceGroupList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "No groups found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the group count.",
                response = ErrorResponse.class)
})
Response getGroupCount();
 
Example 2
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/count")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Get the count of groups belongs to current user.",
        notes = "Returns count of all permitted groups enrolled with the system.",
        tags = "Device Group Management",
        extensions = {
            @Extension(properties = {
                    @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:count")
            })
        }

)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device group count.",
                response = DeviceGroupList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the group count.",
                response = ErrorResponse.class)
})
Response getGroupCount();
 
Example 3
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "View group specified.",
        notes = "Returns details of group enrolled with the system.",
        tags = "Device Group Management",
        extensions = {
            @Extension(properties = {
                    @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:groups-view")
            })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device group.",
                response = DeviceGroup.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "Group found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the group details.",
                response = ErrorResponse.class)
})
Response getGroup(@ApiParam(
                          name = "groupId",
                          value = "ID of the group to view.",
                          required = true)
                  @PathParam("groupId") int groupId);
 
Example 4
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}/roles")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "View list of roles of a device group.",
        notes = "Returns details of roles which particular group has been shared with.",
        tags = "Device Group Management",
        extensions = {
            @Extension(properties = {
                    @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:roles")
            })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the users.",
                response = RoleList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "Group not found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the roles.",
                response = ErrorResponse.class)
})
Response getRolesOfGroup(@ApiParam(
                                 name = "groupId",
                                 value = "ID of the group.",
                                 required = true)
                         @PathParam("groupId") int groupId);
 
Example 5
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}/devices")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "View list of devices in the device group.",
        notes = "Returns list of devices in the device group.",
        tags = "Device Group Management",
        extensions = {
            @Extension(properties = {
                    @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:devices")
            })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the devices.",
                response = DeviceList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "Group not found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the devices.",
                response = ErrorResponse.class)
})
Response getDevicesOfGroup(@ApiParam(
                                   name = "groupId",
                                   value = "ID of the group.",
                                   required = true)
                           @PathParam("groupId")
                                   int groupId,
                           @ApiParam(
                                   name = "offset",
                                   value = "The starting pagination index for the complete list of qualified items.",
                                   defaultValue = "0")
                           @QueryParam("offset")
                                   int offset,
                           @ApiParam(
                                   name = "limit",
                                   value = "Provide how many device details you require from the starting pagination index/offset.",
                                   defaultValue = "5")
                           @QueryParam("limit")
                                   int limit);
 
Example 6
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}/devices/count")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "View list of device count in the device group.",
        notes = "Returns device count in the device group.",
        tags = "Device Group Management",
        extensions = {
            @Extension(properties = {
                    @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:devices-count")
            })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device count.",
                response = DeviceList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "No groups found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching device count.",
                response = ErrorResponse.class)
})
Response getDeviceCountOfGroup(@ApiParam(
                                       name = "groupId",
                                       value = "ID of the group.",
                                       required = true)
                           @PathParam("groupId") int groupId);
 
Example 7
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/device")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "List of groups that have the device",
        notes = "List of groups that have the device.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:device")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK.",
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred.",
                response = ErrorResponse.class)
})
Response getGroups(
        @ApiParam(
                name = "deviceId",
                value = "Id of the device.",
                required = true)
        @QueryParam("deviceId")
                String deviceId,
        @ApiParam(
                name = "deviceType",
                value = "Type of the device.",
                required = true)
        @QueryParam("deviceType")
                String deviceType);
 
Example 8
Source File: GroupManagementAdminService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/count")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Get the count of groups belongs to current user.",
        notes = "Returns count of all permitted groups enrolled with the system.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:admin-groups:count")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device group count.",
                response = DeviceGroupList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                              "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                              "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                          "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "No groups found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the group count.",
                response = ErrorResponse.class)
})
Response getGroupCount();
 
Example 9
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/count")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Getting the Number of Device Groups",
        notes = "Get the number of device groups in the server that the current signed in user can access.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:count")
                })
        }

)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device group count.",
                response = DeviceGroupList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the group count.",
                response = ErrorResponse.class)
})
Response getGroupCount();
 
Example 10
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Getting Details of a Specific Device Group",
        notes = "Get the details of a specific device group.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:groups-view")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device group.",
                response = DeviceGroup.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "Group found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the group details.",
                response = ErrorResponse.class)
})
Response getGroup(@ApiParam(
        name = "groupId",
        value = "The ID of the group.",
        required = true)
                  @PathParam("groupId") int groupId);
 
Example 11
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}/roles")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Getting the List of Roles the Group is Shared With",
        notes = "A device group can be shared with different user-roles. The users that belong to that role can" +
                "then view the groups and the devices in it. Using this API you get the list of roles the device group is shared with.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:roles")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the users.",
                response = RoleList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "Group not found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the roles.",
                response = ErrorResponse.class)
})
Response getRolesOfGroup(@ApiParam(
        name = "groupId",
        value = "ID of the group.",
        required = true)
                         @PathParam("groupId") int groupId);
 
Example 12
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}/devices")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Getting the List of Devices in a Group",
        notes = "Returns the list of devices in a device group.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:devices")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the devices.",
                response = DeviceList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "Group not found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching the devices.",
                response = ErrorResponse.class)
})
Response getDevicesOfGroup(@ApiParam(
        name = "groupId",
        value = "ID of the group.",
        required = true)
                           @PathParam("groupId")
                                   int groupId,
                           @ApiParam(
                                   name = "offset",
                                   value = "The starting pagination index for the complete list of qualified items.",
                                   defaultValue = "0")
                           @QueryParam("offset")
                                   int offset,
                           @ApiParam(
                                   name = "limit",
                                   value = "Provide how many group details you require from the starting " +
                                           "pagination index/offset.",
                                   defaultValue = "5")
                           @QueryParam("limit")
                                   int limit);
 
Example 13
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/id/{groupId}/devices/count")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Getting the Number of Devices in a Group",
        notes = "Get the number of devices in a group using this API.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:devices-count")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK. \n Successfully fetched the device count.",
                response = DeviceList.class,
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 404,
                message = "No groups found.",
                response = ErrorResponse.class),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred while fetching device count.",
                response = ErrorResponse.class)
})
Response getDeviceCountOfGroup(@ApiParam(
        name = "groupId",
        value = "ID of the group.",
        required = true)
                               @PathParam("groupId") int groupId);
 
Example 14
Source File: GroupManagementService.java    From carbon-device-mgt with Apache License 2.0 4 votes vote down vote up
@Path("/device")
@GET
@ApiOperation(
        produces = MediaType.APPLICATION_JSON,
        httpMethod = HTTPConstants.HEADER_GET,
        value = "Getting Device Groups that Include the Specific Device",
        notes = " device can be added to one or many groups. This API gives you the list of groups the device " +
                "has been added to.",
        tags = "Device Group Management",
        extensions = {
                @Extension(properties = {
                        @ExtensionProperty(name = Constants.SCOPE, value = "perm:groups:device")
                })
        }
)
@ApiResponses(value = {
        @ApiResponse(code = 200, message = "OK.",
                responseHeaders = {
                        @ResponseHeader(
                                name = "Content-Type",
                                description = "The content type of the body"),
                        @ResponseHeader(
                                name = "ETag",
                                description = "Entity Tag of the response resource.\n" +
                                        "Used by caches, or in conditional requests."),
                        @ResponseHeader(
                                name = "Last-Modified",
                                description = "Date and time the resource has been modified the last time.\n" +
                                        "Used by caches, or in conditional requests."),
                }),
        @ApiResponse(
                code = 304,
                message = "Not Modified. \n Empty body because the client has already the latest version of " +
                        "the requested resource."),
        @ApiResponse(
                code = 406,
                message = "Not Acceptable.\n The requested media type is not supported."),
        @ApiResponse(
                code = 500,
                message = "Internal Server Error. \n Server error occurred.",
                response = ErrorResponse.class)
})
Response getGroups(
        @ApiParam(
                name = "deviceId",
                value = "The device ID.",
                required = true)
        @QueryParam("deviceId")
                String deviceId,
        @ApiParam(
                name = "deviceType",
                value = "The type of the device, such as android, ios, or windows.",
                required = true)
        @QueryParam("deviceType")
                String deviceType);