diff --git a/modules/distribution/src/core/plugins/plugins-deployer.xml b/modules/distribution/src/core/plugins/plugins-deployer.xml index 8f32e26c..5d5d4449 100644 --- a/modules/distribution/src/core/plugins/plugins-deployer.xml +++ b/modules/distribution/src/core/plugins/plugins-deployer.xml @@ -207,6 +207,6 @@ - 3.0.22 + 3.0.23 diff --git a/modules/integration/tests-common/integration-common/src/main/java/org/wso2/iot/integration/common/Constants.java b/modules/integration/tests-common/integration-common/src/main/java/org/wso2/iot/integration/common/Constants.java index fffc9021..9efe6983 100644 --- a/modules/integration/tests-common/integration-common/src/main/java/org/wso2/iot/integration/common/Constants.java +++ b/modules/integration/tests-common/integration-common/src/main/java/org/wso2/iot/integration/common/Constants.java @@ -291,7 +291,12 @@ public final class Constants { public static final String GET_DEVICE_COUNT_ENDPOINT = "/api/device-mgt/v1.0/devices"; public static final String CHANGE_DEVICE_STATUS_ENDPOINT = "/api/device-mgt/v1.0/devices/"; public static final String NO_OF_DEVICES = "1"; - public static final String GET_ALL_DEVICES_ENDPOINT = "/mdm-admin/devices"; + public static final String GET_ALL_DEVICES_ENDPOINT = "/api/device-mgt/v1.0/devices/"; + public static final String USER_DEVICE_ENDPOINT = "user-devices"; + public static final String ADVANCE_SEARCH_ENDPOINT = "search-devices"; + public static final String ADVANCE_SEARCH_OPERATION = "ADVANCE_SEARCH"; + public static final String REQUEST_PAYLOAD_FILE_NAME = "mobile-device-mgt-payloads.json"; + public static final String UPDATE_PAYLOAD_OPERATION = "UPDATE_DEVICE_INFO"; public static final String VIEW_DEVICE_TYPES_ENDPOINT = "/mdm-admin/devices/types"; public static final String VIEW_DEVICE_RESPONSE_PAYLOAD_FILE_NAME = "mobile-device-mgt-view-device-types-response-payloads.json"; diff --git a/modules/integration/tests-integration/pom.xml b/modules/integration/tests-integration/pom.xml index 41e28ea2..346a1fcb 100644 --- a/modules/integration/tests-integration/pom.xml +++ b/modules/integration/tests-integration/pom.xml @@ -265,6 +265,10 @@ org.wso2.iot org.wso2.carbon.iot.integration.common + + org.wso2.carbon.automation + org.wso2.carbon.automation.extensions + diff --git a/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/jmeter/AndroidDeviceManagementAPIJmeterTestCase.java b/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/jmeter/AndroidDeviceManagementAPIJmeterTestCase.java new file mode 100644 index 00000000..b8419a1e --- /dev/null +++ b/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/jmeter/AndroidDeviceManagementAPIJmeterTestCase.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.wso2.iot.integration.jmeter; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.testng.annotations.Test; +import org.wso2.carbon.automation.engine.exceptions.AutomationFrameworkException; +import org.wso2.carbon.automation.extensions.jmeter.JMeterTest; +import org.wso2.carbon.automation.extensions.jmeter.JMeterTestManager; + +import java.io.File; +import java.net.URL; + +/** + * JMeter Test cases for AndroidDeviceManagement API. + */ +public class AndroidDeviceManagementAPIJmeterTestCase { + private static Log log = LogFactory.getLog(AndroidDeviceManagementAPIJmeterTestCase.class); + @Test() + public void permutationTest() throws AutomationFrameworkException { + URL url = Thread.currentThread().getContextClassLoader().getResource( + "jmeter-scripts/AndroidDeviceManagementAPIAdditionalPermutations.jmx"); + JMeterTest script = new JMeterTest( + new File(url.getPath())); + JMeterTestManager manager = new JMeterTestManager(); + log.info("Running permutation test using jmeter scripts"); + manager.runTest(script); + } + + @Test(dependsOnMethods = {"permutationTest"}) + public void listServices() throws AutomationFrameworkException { + URL url = Thread.currentThread().getContextClassLoader().getResource( + "jmeter-scripts/NewAndroidDeviceManagementAPI.jmx"); + JMeterTest script = new JMeterTest( + new File(url.getPath())); + JMeterTestManager manager = new JMeterTestManager(); + log.info("Running API service test using jmeter scripts"); + manager.runTest(script); + } + +} diff --git a/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/mobileDevice/MobileDeviceManagement.java b/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/mobileDevice/MobileDeviceManagement.java index f68daca4..8cb8bb60 100644 --- a/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/mobileDevice/MobileDeviceManagement.java +++ b/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/mobileDevice/MobileDeviceManagement.java @@ -17,67 +17,89 @@ */ package org.wso2.iot.integration.mobileDevice; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; import com.google.gson.JsonObject; +import com.google.gson.JsonParser; import junit.framework.Assert; import org.apache.commons.httpclient.HttpStatus; import org.testng.annotations.BeforeClass; +import org.testng.annotations.Factory; import org.testng.annotations.Test; import org.wso2.carbon.automation.engine.context.TestUserMode; +import org.wso2.carbon.automation.test.utils.http.client.HttpResponse; import org.wso2.iot.integration.common.*; /** * This class contains integration tests for API Device management backend services. */ public class MobileDeviceManagement extends TestBase { - private IOTHttpClient client; + private RestClient client; - @BeforeClass(alwaysRun = true, groups = { Constants.MobileDeviceManagement.MOBILE_DEVICE_MANAGEMENT_GROUP}) - public void initTest() throws Exception { - super.init(TestUserMode.SUPER_TENANT_ADMIN); - String accessTokenString = "Bearer " + OAuthUtil.getOAuthToken(backendHTTPSURL, backendHTTPSURL); - this.client = new IOTHttpClient(backendHTTPSURL, Constants.APPLICATION_JSON, accessTokenString); + @Factory(dataProvider = "userModeProvider") + public MobileDeviceManagement(TestUserMode userMode) { + this.userMode = userMode; } - @Test(description = "Add an Android device.") - public void addEnrollment() throws Exception { - JsonObject enrollmentData = PayloadGenerator.getJsonPayload( - Constants.AndroidEnrollment.ENROLLMENT_PAYLOAD_FILE_NAME, Constants.HTTP_METHOD_POST); + @BeforeClass(alwaysRun = true, groups = { Constants.MobileDeviceManagement.MOBILE_DEVICE_MANAGEMENT_GROUP}) + public void initTest() throws Exception { + super.init(userMode); + this.client = new RestClient(backendHTTPSURL, Constants.APPLICATION_JSON, accessTokenString); + JsonObject enrollmentData = PayloadGenerator + .getJsonPayload(Constants.AndroidEnrollment.ENROLLMENT_PAYLOAD_FILE_NAME, Constants.HTTP_METHOD_POST); enrollmentData.addProperty(Constants.DEVICE_IDENTIFIER_KEY, Constants.DEVICE_ID); - IOTResponse response = client.post(Constants.AndroidEnrollment.ENROLLMENT_ENDPOINT, enrollmentData.toString()); - Assert.assertEquals(HttpStatus.SC_OK, response.getStatus()); - AssertUtil.jsonPayloadCompare(PayloadGenerator.getJsonPayload( - Constants.AndroidEnrollment.ENROLLMENT_RESPONSE_PAYLOAD_FILE_NAME, - Constants.HTTP_METHOD_POST).toString(), response.getBody(), true); - } - - @Test(dependsOnMethods = {"addEnrollment"}, description = "Test count devices") - public void testCountDevices() throws Exception { - IOTResponse response = client.get(Constants.MobileDeviceManagement.GET_DEVICE_COUNT_ENDPOINT); - Assert.assertEquals(HttpStatus.SC_OK, response.getStatus()); - Assert.assertTrue(response.getBody().equals(Constants.MobileDeviceManagement.NO_OF_DEVICES)); - + client.post(Constants.AndroidEnrollment.ENROLLMENT_ENDPOINT, enrollmentData.toString()); } - @Test(dependsOnMethods = {"addEnrollment"}, description = "Test view devices") + @Test(description = "Test getting devices") public void testViewDevices() throws Exception { - IOTResponse response = client.get(Constants.MobileDeviceManagement.GET_ALL_DEVICES_ENDPOINT); - Assert.assertEquals(HttpStatus.SC_OK, response.getStatus()); + int expectedCount = this.userMode == TestUserMode.TENANT_ADMIN ? 1 : 23; + HttpResponse response = client.get(Constants.MobileDeviceManagement.GET_ALL_DEVICES_ENDPOINT); + Assert.assertEquals(HttpStatus.SC_OK, response.getResponseCode()); + JsonObject devices = new JsonParser().parse(response.getData()).getAsJsonObject(); + Assert.assertEquals("Expected device count is not received", expectedCount, devices.get("count").getAsInt()); } - @Test(dependsOnMethods = {"addEnrollment"}, description = "Test view device types") - public void testViewDeviceTypes() throws Exception { - IOTResponse response = client.get(Constants.MobileDeviceManagement.VIEW_DEVICE_TYPES_ENDPOINT); - Assert.assertEquals(HttpStatus.SC_OK, response.getStatus()); - Assert.assertEquals(PayloadGenerator.getJsonPayloadToString - (Constants.MobileDeviceManagement.VIEW_DEVICE_RESPONSE_PAYLOAD_FILE_NAME), response.getBody()); - //Response has two device types, because in windows enrollment a windows device is previously enrolled. + @Test(description = "Test getting devices") + public void testGetUserDevices() throws Exception { + int expectedCount = this.userMode == TestUserMode.TENANT_ADMIN ? 1 : 13; + HttpResponse response = client.get(Constants.MobileDeviceManagement.GET_ALL_DEVICES_ENDPOINT + + Constants.MobileDeviceManagement.USER_DEVICE_ENDPOINT); + Assert.assertEquals(HttpStatus.SC_OK, response.getResponseCode()); + JsonObject devices = new JsonParser().parse(response.getData()).getAsJsonObject(); + Assert.assertEquals("Expected device count is not received", expectedCount, devices.get("count").getAsInt()); } - @Test(description = "Change device status") - public void testRemoveDevices() throws Exception { - String endpointUrl = Constants.MobileDeviceManagement.CHANGE_DEVICE_STATUS_ENDPOINT + Constants.ANDROID_DEVICE_TYPE - + "/" + Constants.DEVICE_ID + "/changestatus?newStatus=" + Constants.INACTIVE; - IOTResponse response = client.put(endpointUrl, ""); - Assert.assertEquals(HttpStatus.SC_OK, response.getStatus()); + @Test(description = "Test Advance search") + public void testAdvancedSearch() throws Exception { + JsonArray pendingOperationsData = PayloadGenerator + .getJsonArray(Constants.AndroidEnrollment.ENROLLMENT_PAYLOAD_FILE_NAME, + Constants.AndroidEnrollment.GET_PENDING_OPERATIONS_METHOD); + JsonArray newPayload = new JsonArray(); + HttpResponse response = client.put(Constants.AndroidEnrollment.ENROLLMENT_ENDPOINT + "/" + Constants.DEVICE_ID + + "/pending-operations", pendingOperationsData.toString()); + JsonArray pendingOperations = new JsonParser().parse(response.getData()).getAsJsonArray(); + + for (JsonElement pendingOperation : pendingOperations) { + JsonObject jsonObject = pendingOperation.getAsJsonObject(); + + if (jsonObject.get("code").getAsString().equals("DEVICE_INFO")) { + jsonObject.addProperty("operationResponse", PayloadGenerator + .getJsonPayload(Constants.MobileDeviceManagement.REQUEST_PAYLOAD_FILE_NAME, + Constants.MobileDeviceManagement.UPDATE_PAYLOAD_OPERATION).toString()); + jsonObject.addProperty("status", "COMPLETED"); + newPayload.add(jsonObject); + break; + } + } + client.put(Constants.AndroidEnrollment.ENROLLMENT_ENDPOINT + "/" + Constants.DEVICE_ID + "/pending-operations", + newPayload.toString()); + response = client.post(Constants.MobileDeviceManagement.GET_ALL_DEVICES_ENDPOINT + + Constants.MobileDeviceManagement.ADVANCE_SEARCH_ENDPOINT, PayloadGenerator + .getJsonPayload(Constants.MobileDeviceManagement.REQUEST_PAYLOAD_FILE_NAME, + Constants.MobileDeviceManagement.ADVANCE_SEARCH_OPERATION).toString()); + JsonObject devices = new JsonParser().parse(response.getData()).getAsJsonObject(); + Assert.assertEquals("Expected device count is not received", 1, devices.get("devices").getAsJsonArray().size()); } + } diff --git a/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/user/UserManagement.java b/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/user/UserManagement.java index 5f4e469e..a7730f6e 100644 --- a/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/user/UserManagement.java +++ b/modules/integration/tests-integration/src/test/java/org/wso2/iot/integration/user/UserManagement.java @@ -118,23 +118,25 @@ public class UserManagement extends TestBase { @Test(description = "Test whether correct user count is returned.", dependsOnMethods = {"testIsUserExist"}) public void testUserCount() throws Exception { + int expectedCount = this.userMode == TestUserMode.TENANT_ADMIN ? 4 : 15; String url = Constants.UserManagement.USER_ENDPOINT + "/count"; HttpResponse response = client.get(url); Assert.assertEquals(HttpStatus.SC_OK, response.getResponseCode()); - JsonObject jsonElement = new JsonParser().parse(response.getData()).getAsJsonObject(); - Assert.assertEquals("Actual user count does not match with the returned user count", 4, + Assert.assertEquals("Actual user count does not match with the returned user count", expectedCount, jsonElement.get("count").getAsInt()); } @Test(description = "Test whether the API that is used to get the users returns all the user details.", dependsOnMethods = {"testUserCount"}) public void testGetUsers() throws Exception { + int expectedCount = this.userMode == TestUserMode.TENANT_ADMIN ? 4 : 15; String url = Constants.UserManagement.USER_ENDPOINT + "/?offset=0&limit=100"; HttpResponse response = client.get(url); Assert.assertEquals(HttpStatus.SC_OK, response.getResponseCode()); JsonObject jsonElement = new JsonParser().parse(response.getData()).getAsJsonObject(); - Assert.assertEquals("All the users list is not returned", 4, jsonElement.get("users").getAsJsonArray().size()); + Assert.assertEquals("All the users list is not returned", expectedCount, + jsonElement.get("users").getAsJsonArray().size()); } @Test(description = "Test whether the API that is used to get the users with particular filter returns all the " diff --git a/modules/integration/tests-integration/src/test/resources/jmeter-scripts/AndroidDeviceManagementAPIAdditionalPermutations.jmx b/modules/integration/tests-integration/src/test/resources/jmeter-scripts/AndroidDeviceManagementAPIAdditionalPermutations.jmx new file mode 100644 index 00000000..c99af367 --- /dev/null +++ b/modules/integration/tests-integration/src/test/resources/jmeter-scripts/AndroidDeviceManagementAPIAdditionalPermutations.jmx @@ -0,0 +1,12499 @@ + + + + + + false + false + + + + host + 172.17.0.1 + = + + + http_port + 9763 + = + + + https_port + 9443 + = + + + + + + + + 9999 + 100 + + false + + randAppNum + + + + + + host + localhost + = + + + https_port + 9443 + = + + + http_port + 9763 + = + + + token_ep_host + localhost + = + + + token_ep_port + 9763 + = + + + + + + continue + + false + 1 + + 1 + 1 + 1465464058000 + 1465464058000 + false + + + + + + true + 10 + + + + + false + + + + 1 + + 1 + UserID + # + false + + + + 500 + + + + + + + https://${host}:${https_port}/services/AuthenticationAdmin.AuthenticationAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:aut="http://authentication.services.core.carbon.wso2.org"> + <soapenv:Header/> + <soapenv:Body> + <aut:login> + <!--Optional:--> + <aut:username>admin</aut:username> + <!--Optional:--> + <aut:password>admin</aut:password> + <!--Optional:--> + <aut:remoteAddress>localhost</aut:remoteAddress> + </aut:login> + </soapenv:Body> +</soapenv:Envelope> + + urn:login + true + false + + + + 1000 + + + + + + + https://${host}:${https_port}/services/UserAdmin.UserAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://org.apache.axis2/xsd" xmlns:xsd1="http://common.mgt.user.carbon.wso2.org/xsd"> + <soapenv:Header/> + <soapenv:Body> + <xsd:addUser> + <xsd:userName>user${UserID}</xsd:userName> + <xsd:password>pass#word</xsd:password> + <xsd:roles>admin</xsd:roles> + </xsd:addUser> + </soapenv:Body> +</soapenv:Envelope> + + + urn:addUser + true + false + + + + 1000 + + + + + + + https://${host}:${https_port}/services/AuthenticationAdmin.AuthenticationAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:aut="http://authentication.services.core.carbon.wso2.org"> + <soapenv:Header/> + <soapenv:Body> + <aut:logout/> + </soapenv:Body> +</soapenv:Envelope> + + urn:logout + true + false + + + + + 1000 + + + + + false + + + + + + + https://${host}:${https_port}/services/AuthenticationAdmin.AuthenticationAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:aut="http://authentication.services.core.carbon.wso2.org"> + <soapenv:Header/> + <soapenv:Body> + <aut:login> + <!--Optional:--> + <aut:username>admin</aut:username> + <!--Optional:--> + <aut:password>admin</aut:password> + <!--Optional:--> + <aut:remoteAddress>localhost</aut:remoteAddress> + </aut:login> + </soapenv:Body> +</soapenv:Envelope> + + urn:login + true + false + + + + 500 + + + + + + + https://${host}:${https_port}/services/UserAdmin.UserAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://org.apache.axis2/xsd" xmlns:xsd1="http://common.mgt.user.carbon.wso2.org/xsd"> + <soapenv:Header/> + <soapenv:Body> + <xsd:addUser> + <xsd:userName>user111</xsd:userName> + <xsd:password>user111</xsd:password> + <xsd:roles>admin</xsd:roles> + </xsd:addUser> + </soapenv:Body> +</soapenv:Envelope> + + + urn:addUser + true + false + + + + 500 + + + + + + + https://${host}:${https_port}/services/AuthenticationAdmin.AuthenticationAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:aut="http://authentication.services.core.carbon.wso2.org"> + <soapenv:Header/> + <soapenv:Body> + <aut:logout/> + </soapenv:Body> +</soapenv:Envelope> + + urn:logout + true + false + + + + 500 + + + + + + + https://${host}:${https_port}/services/AuthenticationAdmin.AuthenticationAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:aut="http://authentication.services.core.carbon.wso2.org"> + <soapenv:Header/> + <soapenv:Body> + <aut:login> + <!--Optional:--> + <aut:username>user111</aut:username> + <!--Optional:--> + <aut:password>user111</aut:password> + <!--Optional:--> + <aut:remoteAddress>localhost</aut:remoteAddress> + </aut:login> + </soapenv:Body> +</soapenv:Envelope> + + urn:login + true + false + + + + 500 + + + + + + + https://${host}:${https_port}/services/AuthenticationAdmin.AuthenticationAdminHttpsSoap11Endpoint/ + <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:aut="http://authentication.services.core.carbon.wso2.org"> + <soapenv:Header/> + <soapenv:Body> + <aut:logout/> + </soapenv:Body> +</soapenv:Envelope> + + urn:logout + true + false + + + + true + + + + false + { + "callbackUrl":"www.google.lk", + "clientName":"app_${randAppNum}", + "tokenScope":"Production", + "owner":"user111", + "grantType":"password refresh_token", + "saasApp":true +} + = + + + + ${host} + ${https_port} + + + https + + /api/appm/oauth/v1.0/register + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Basic YWRtaW46YWRtaW4= + + + Host + 10.100.1.90:9763 + + + Content-Type + application/json + + + + + + false + clientId + "clientId":"(.+?)" + $1$ + 0 + 1 + + + + false + clientSecret + "clientSecret":"(.+?)" + $1$ + 0 + 1 + + + + + + clientId,clientSecret + false + import org.apache.commons.codec.binary.Base64; + +String clientId= vars.get("clientId"); +String clientSecret = vars.get("clientSecret"); +String toEncode = clientId + ":" + clientSecret; + +byte[] encryptedId = Base64.encodeBase64(toEncode.getBytes()); +vars.put("base64encodedId",new String(encryptedId)); + + + + + + + false + user111 + = + true + username + + + false + user111 + = + true + password + + + false + password + = + true + grant_type + + + true + appm:subscribe device:view activity:view device:android:operation:change-lock device:admin:view configuration:view device:android:enroll user:view + = + true + scope + + + + ${host} + ${https_port} + + + https + + /oauth2/token + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Basic ${base64encodedId} + + + Content-Type + application/x-www-form-urlencoded + + + + + + false + access_token + "access_token":"(.+?)" + $1$ + no_token + 1 + + + + + true + 10 + + + + 1 + + 1 + DeviceIDL + # + false + + + + true + + + + false + { + "id":10${DeviceIDL}, + "name":"androiddeviceCOPE${DeviceIDL}", + "type":"android", + "description":"this is an android device", + "deviceIdentifier":"d24f860f450352a${DeviceIDL}", + "enrolmentInfo":{ + "id":10${DeviceIDL}, + "device":{ + + }, + "dateOfEnrolment":0, + "dateOfLastUpdate":0, + "ownership":"COPE", + "status":"CREATED", + "owner":"user111" + }, + "features":[ + { + "id":10, + "code":"aaaa1111", + "name":"newfeature1", + "description":"this is the new feature 1", + "deviceType":"android", + "metadataEntries":[ + { + "id":10, + "value":{ + + } + } + ] + } + ], + "properties":[ + { + "name":"property1", + "value":"value1" + } + ], + "deviceInfo":{ + "deviceModel":"S7", + "vendor":"SAMSUNG", + "osVersion":"5.1", + "batteryLevel":1, + "internalTotalMemory":32, + "internalAvailableMemory":24, + "externalTotalMemory":64, + "externalAvailableMemory":60, + "operator":"dialog", + "connectionType":"GSM", + "mobileSignalStrength":1, + "ssid":"picassowifi", + "cpuUsage":0, + "totalRAMMemory":2, + "availableRAMMemory":1, + "pluggedIn":false, + "location":{ + "deviceId":0, + "deviceIdentifier":{ + "id":"string", + "type":"string" + }, + "latitude":0, + "longitude":0, + "street1":"string", + "street2":"string", + "city":"string", + "state":"string", + "zip":"string", + "country":"string" + }, + "deviceDetailsMap":{ + + }, + "imei":"string", + "imsi":"string" + }, + "applications":[ + { + "id":0, + "platform":"string", + "category":"string", + "name":"string", + "locationUrl":"string", + "imageUrl":"string", + "version":"string", + "type":"string", + "appProperties":{ + + }, + "applicationIdentifier":"string", + "memoryUsage":0 + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/devices + POST + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + 1000 + + + + + true + + + + false + { + "callbackUrl":"www.google.lk", + "clientName":"appp_${randAppNum}", + "tokenScope":"Production", + "owner":"admin", + "grantType":"password refresh_token", + "saasApp":true +} + = + + + + ${host} + ${https_port} + + + https + + /api/appm/oauth/v1.0/register + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Basic YWRtaW46YWRtaW4= + + + Host + 10.100.1.90:9763 + + + Content-Type + application/json + + + + + + false + clientId + "clientId":"(.+?)" + $1$ + 0 + 1 + + + + false + clientSecret + "clientSecret":"(.+?)" + $1$ + 0 + 1 + + + + + + clientId,clientSecret + false + import org.apache.commons.codec.binary.Base64; + +String clientId= vars.get("clientId"); +String clientSecret = vars.get("clientSecret"); +String toEncode = clientId + ":" + clientSecret; + +byte[] encryptedId = Base64.encodeBase64(toEncode.getBytes()); +vars.put("base64encodedId",new String(encryptedId)); + + + + + + + false + admin + = + true + username + + + false + admin + = + true + password + + + false + password + = + true + grant_type + + + true + appm:subscribe device:view activity:view device:android:operation:change-lock device:admin:view configuration:view device:android:enroll user:view + = + true + scope + + + + ${host} + ${https_port} + + + https + + /oauth2/token + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Basic ${base64encodedId} + + + Content-Type + application/x-www-form-urlencoded + + + + + + false + access_token + "access_token":"(.+?)" + $1$ + no_token + 1 + + + + + true + 10 + + + + 11 + + 1 + DeviceIDL + # + false + + + + true + + + + false + { + "id":10${DeviceIDL}, + "name":"androiddevicBYOD${DeviceIDL}", + "type":"android", + "description":"this is an android device", + "deviceIdentifier":"d24f860f450352a${DeviceIDL}", + "enrolmentInfo":{ + "id":10${DeviceIDL}, + "device":{ + + }, + "dateOfEnrolment":0, + "dateOfLastUpdate":0, + "ownership":"BYOD", + "status":"CREATED", + "owner":"admin" + }, + "features":[ + { + "id":10, + "code":"aaaa1111", + "name":"newfeature1", + "description":"this is the new feature 1", + "deviceType":"android", + "metadataEntries":[ + { + "id":10, + "value":{ + + } + } + ] + } + ], + "properties":[ + { + "name":"property1", + "value":"value1" + } + ], + "deviceInfo":{ + "deviceModel":"S7", + "vendor":"SAMSUNG", + "osVersion":"5.1", + "batteryLevel":1, + "internalTotalMemory":32, + "internalAvailableMemory":24, + "externalTotalMemory":64, + "externalAvailableMemory":60, + "operator":"dialog", + "connectionType":"GSM", + "mobileSignalStrength":1, + "ssid":"picassowifi", + "cpuUsage":0, + "totalRAMMemory":2, + "availableRAMMemory":1, + "pluggedIn":false, + "location":{ + "deviceId":0, + "deviceIdentifier":{ + "id":"string", + "type":"string" + }, + "latitude":0, + "longitude":0, + "street1":"string", + "street2":"string", + "city":"string", + "state":"string", + "zip":"string", + "country":"string" + }, + "deviceDetailsMap":{ + + }, + "imei":"string", + "imsi":"string" + }, + "applications":[ + { + "id":0, + "platform":"string", + "category":"string", + "name":"string", + "locationUrl":"string", + "imageUrl":"string", + "version":"string", + "type":"string", + "appProperties":{ + + }, + "applicationIdentifier":"string", + "memoryUsage":0 + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/devices + POST + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + 1000 + + + + + true + + + + false + { + "operation": { + "lockCode": "0000" + }, + "deviceIDs": [ + "d24f860f450352a1" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/change-lock-code + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"CHANGE_LOCK_CODE","type":"PROFILE","id":2,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:14:19.718","isEnabled":true,"payLoad":"{\"lockCode\":\"0000\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f860f450352a1/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f860f450352a1"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/info + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"DEVICE_INFO","type":"COMMAND","id":3,"status":"COMPLETED","createdTimeStamp":"2016-08-03 15:30:16.779","isEnabled":false, "operationResponse" : '{ "id": 101, "name": "androiddeviceCOPE1","type": "android", "description": "this is an android device","deviceIdentifier": "d24f860f450352a1","enrolmentInfo": {"id": 101,"device": {},"dateOfEnrolment": 0,"dateOfLastUpdate": 0,"ownership": "BYOD","status": "CREATED","owner": "admin"},"features": [{"id": 10,"code": "aaaa1111","name": "newfeature1","description": "this is the new feature 1","deviceType": "android","metadataEntries": [{"id": 10,"value": {}}]}],"properties": [{"name": "DEVICE_MODEL","value": "S7"},{"name" : "VENDOR","value" : "SAMSUNG"}],"applications": [ {"id": 0,"platform": "string","category": "string","name": "string","locationUrl": "string","imageUrl": "string","version": "string","type": "string","appProperties": {},"applicationIdentifier": "string","memoryUsage": 0}]}'}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f860f450352a1/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "count":20 + + Assertion.response_data + false + 2 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + androiddevicBYOD11 + + Assertion.response_data + false + 2 + + + + + + + + false + admin + = + true + user + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicBYOD11" + + Assertion.response_data + false + 2 + + + + + + + + false + 2 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE3" + + Assertion.response_data + false + 6 + + + + + + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + 2 + = + true + offset + + + false + 100 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD12" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD16" + + Assertion.response_data + false + 6 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "count":20 + + Assertion.response_data + false + 2 + + + + + + + + false + android + = + true + type + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + user + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + androiddevicBYOD11 + + Assertion.response_data + false + 2 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + user + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicBYOD11" + + Assertion.response_data + false + 2 + + + + + + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + false + admin + = + true + roleName + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + COPE + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + false + 2 + = + true + offset + + + false + 100 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicBYOD12" + + Assertion.response_data + false + 6 + + + + + + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + ACTIVE + = + true + status + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + ACTIVE + = + true + status + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + ACTIVE + = + true + status + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + 2 + = + true + offset + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicCOPE2" + + Assertion.response_data + false + 6 + + + + + "androiddevicCOPE6" + + Assertion.response_data + false + 6 + + + + + + + + false + 1 + = + true + offset + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "id":1 + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + 1 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD16" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "id":2 + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + BYOD + = + true + ownership + + + false + 3 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD12" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + BYOD + = + true + ownership + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD18" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + ACTIVE + = + true + status + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + ACTIVE + = + true + status + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + ACTIVE + = + true + status + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + BYOD + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE3" + + Assertion.response_data + false + 2 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + roleName + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + COPE + = + true + ownership + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + ACTIVE + = + true + status + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + false + BYOD + = + true + ownership + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_code + false + 6 + + + + + "androiddevicBYOD19" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + roleName + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + false + 1 + = + true + offset + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + COPE + = + true + ownership + + + false + ACTIVE + = + true + status + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + + + + false + COPE + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD12" + + Assertion.response_data + false + 6 + + + + + + + + false + COPE + = + true + ownership + + + false + ACTIVE + = + true + status + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + false + ACTIVE + = + true + status + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + "androiddevicBYOD14" + + Assertion.response_data + false + 6 + + + + + + + + false + COPE + = + true + ownership + + + false + ACTIVE + = + true + status + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "BYOD" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE5" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + false + admin + = + true + user + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + admin + = + true + roleName + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddevicBYOD11" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + BYOD + = + true + ownership + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "COPE" + + Assertion.response_data + false + 6 + + + + + + + + false + ACTIVE + = + true + status + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE4" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + user + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 6 + + + + + + + + false + android + = + true + type + + + false + admin + = + true + roleName + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + "ios" + + Assertion.response_data + false + 6 + + + + + "owner":"user111" + + Assertion.response_data + false + 2 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + true + + + + false + + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1 + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 1 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 1 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 1 + = + true + offset + + + false + 3 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/features + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "code":"DEVICE_LOCK" + + Assertion.response_data + false + 2 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/features + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + "code":"DEVICE_LOCK" + + Assertion.response_data + false + 2 + + + + + + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "CHANGE_LOCK_CODE" + + Assertion.response_data + false + 2 + + + + + + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "CHANGE_LOCK_CODE" + + Assertion.response_data + false + 2 + + + + + + + + false + 3 + = + true + limit + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "CHANGE_LOCK_CODE" + + Assertion.response_data + false + 2 + + + + + + + + false + 1 + = + true + offset + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 1 + = + true + offset + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 1 + = + true + offset + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 3 + = + true + limit + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "CHANGE_LOCK_CODE" + + Assertion.response_data + false + 2 + + + + + + + + false + 3 + = + true + limit + + + false + 1 + = + true + offset + + + false + user111 + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f860f450352a1/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "activityId":"ACTIVITY_1" + + Assertion.response_data + false + 2 + + + + + + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 100 + = + true + limit + + + false + 0 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "activityId":"ACTIVITY_1" + + Assertion.response_data + false + 2 + + + + + + + + false + 0 + = + true + offset + + + false + 100 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "activityId":"ACTIVITY_1" + + Assertion.response_data + false + 2 + + + + + + + + false + 3 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "activityId":"ACTIVITY_2" + + Assertion.response_data + false + 6 + + + + + + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 100 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "activityId":"ACTIVITY_1" + + Assertion.response_data + false + 2 + + + + + + + + true + Fri, 12 Aug 2016 11:38:00 GMT + = + true + since + + + false + 1 + = + true + offset + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "activityId":"ACTIVITY_1" + + Assertion.response_data + false + 2 + + + + + "activityId":"ACTIVITY_2" + + Assertion.response_data + false + 6 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities/ACTIVITY_1 + GET + true + false + true + false + HttpClient4 + false + + disabled. + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities/ACTIVITY_1 + GET + true + false + true + false + HttpClient4 + false + + disabled. + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + androiddeviceCOPE2 + = + true + name + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/admin/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + android + = + true + type + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/admin/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + false + android + = + true + type + + + false + androiddeviceCOPE2 + = + true + name + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/admin/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + 200 + + Assertion.response_code + false + 2 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/configuration + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androidEula" + + Assertion.response_data + false + 2 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/configuration + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "androidEula" + + Assertion.response_data + false + 2 + + + + + true + + + + false + { + "conditions": [ + { + "key": "vendor", + "value": "SAMSUNG", + "operator": "!=", + "state": "AND" + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/search-devices + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 6 + + + + + true + + + + false + { + "conditions": [ + { + "key": "deviceModel", + "value": "S7", + "operator": "=", + "state": "AND" + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/search-devices?limit=1 + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 2 + + + + + "androiddeviceCOPE2" + + Assertion.response_data + false + 6 + + + + + true + + + + false + { + "conditions": [ + { + "key": "deviceModel", + "value": "S7", + "operator": "!=", + "state": "AND" + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/search-devices?limit=1&offset=1 + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "androiddeviceCOPE1" + + Assertion.response_data + false + 6 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "count":14 + + Assertion.response_data + false + 2 + + + + + + + + false + user + = + true + filter + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "username":"admin" + + Assertion.response_data + false + 6 + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "count":14 + + Assertion.response_data + false + 2 + + + + + + + + false + 2 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + 2 + = + true + offset + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "username":"admin" + + Assertion.response_data + false + 6 + + + + + + + + false + user + = + true + filter + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + "username":"admin" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + 7 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "username":"user111" + + Assertion.response_data + false + 2 + + + + + "username":"user5" + + Assertion.response_data + false + 6 + + + + + + + + false + 7 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "username":"user111" + + Assertion.response_data + false + 2 + + + + + "username":"user5" + + Assertion.response_data + false + 6 + + + + + + + + false + 2 + = + true + offset + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "username":"admin" + + Assertion.response_data + false + 6 + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "username":"user6" + + Assertion.response_data + false + 6 + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + "username":"user6" + + Assertion.response_data + false + 6 + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + offset + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "username":"user2" + + Assertion.response_data + false + 6 + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + offset + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users + GET + true + false + true + false + HttpClient4 + false + + + + + + "username":"user2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + user + = + true + filter + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users/search/usernames + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + "username":"admin" + + Assertion.response_data + false + 6 + + + + + + + + false + user + = + true + filter + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users/search/usernames + GET + true + false + true + false + HttpClient4 + false + + + + + + "username":"admin" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + If-Modified-Since + Fri, 12 Aug 2016 11:38:00 GMT + + + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users/search/usernames + GET + true + false + true + false + HttpClient4 + false + + + + + + "username":"user2" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + offset + + + false + 5 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users/search/usernames + GET + true + false + true + false + HttpClient4 + false + + + + + + "username":"user9" + + Assertion.response_data + false + 6 + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + user + = + true + filter + + + false + 5 + = + true + limit + + + false + 5 + = + true + offset + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/users/search/usernames + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + + Results + false + false + false + false + true + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + + diff --git a/modules/integration/tests-integration/src/test/resources/jmeter-scripts/NewAndroidDeviceManagementAPI.jmx b/modules/integration/tests-integration/src/test/resources/jmeter-scripts/NewAndroidDeviceManagementAPI.jmx new file mode 100644 index 00000000..7d04c655 --- /dev/null +++ b/modules/integration/tests-integration/src/test/resources/jmeter-scripts/NewAndroidDeviceManagementAPI.jmx @@ -0,0 +1,4441 @@ + + + + + + false + false + + + + host + 172.17.0.1 + = + + + http_port + 9763 + = + + + https_port + 9443 + = + + + + + + + + 9999 + 100 + + false + + randAppNum + + + + + + host + localhost + = + + + https_port + 8243 + = + + + http_port + 8280 + = + + + token_ep_host + localhost + = + + + token_ep_port + 8280 + = + + + + + + continue + + false + 1 + + 1 + 1 + 1465464058000 + 1465464058000 + false + + + + + + 1 + + 1 + DeviceID + # + false + + + + true + + + + false + { + "applicationName":"app_${randAppNum}", + "isAllowedToAllDomains":false, + "tags":["android", "device_management"], + "isMappingAnExistingOAuthApp":false +} + = + + + + ${host} + ${https_port} + + + https + + /api-application-registration/register + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Basic YWRtaW46YWRtaW4= + + + Host + localhost:9763 + + + Content-Type + application/json + + + + + + false + clientId + "client_id":"(.+?)" + $1$ + 0 + 1 + + + + false + clientSecret + "client_secret":"(.+?)" + $1$ + 0 + 1 + + + + + + clientId,clientSecret + false + import org.apache.commons.codec.binary.Base64; + +String clientId= vars.get("clientId"); +String clientSecret = vars.get("clientSecret"); +String toEncode = clientId + ":" + clientSecret; + +byte[] encryptedId = Base64.encodeBase64(toEncode.getBytes()); +vars.put("base64encodedId",new String(encryptedId)); + + + + + + + false + admin + = + true + username + + + false + admin + = + true + password + + + false + password + = + true + grant_type + + + false + perm:android:enroll perm:android:wipe perm:android:ring perm:android:lock-devices perm:android:configure-vpn perm:android:configure-wifi perm:android:enroll perm:android:uninstall-application perm:android:manage-configuration perm:android:location perm:android:install-application perm:android:mute perm:android:change-lock-code perm:android:blacklist-applications perm:android:set-password-policy perm:android:encrypt-storage perm:android:clear-password perm:android:enterprise-wipe perm:android:info perm:android:view-configuration perm:android:upgrade-firmware perm:android:set-webclip perm:android:send-notification perm:android:disenroll perm:android:update-application perm:android:unlock-devices perm:android:control-camera perm:android:reboot perm:android:logcat appm:subscribe perm:sign-csr perm:admin:devices:view perm:roles:add perm:roles:add-users perm:roles:update perm:roles:permissions perm:roles:details perm:roles:view perm:roles:create-combined-role perm:roles:delete perm:dashboard:vulnerabilities perm:dashboard:non-compliant-count perm:dashboard:non-compliant perm:dashboard:by-groups perm:dashboard:device-counts perm:dashboard:feature-non-compliant perm:dashboard:count-overview perm:dashboard:filtered-count perm:dashboard:details perm:get-activity perm:devices:delete perm:devices:applications perm:devices:effective-policy perm:devices:compliance-data perm:devices:features perm:devices:operations perm:devices:search perm:devices:details perm:devices:update perm:devices:view perm:view-configuration perm:manage-configuration perm:policies:remove perm:policies:priorities perm:policies:deactivate perm:policies:get-policy-details perm:policies:manage perm:policies:activate perm:policies:update perm:policies:changes perm:policies:get-details perm:users:add perm:users:details perm:users:count perm:users:delete perm:users:roles perm:users:user-details perm:users:credentials perm:users:search perm:users:is-exist perm:users:update perm:users:send-invitation perm:admin-users:view perm:groups:devices perm:groups:update perm:groups:add perm:groups:device perm:groups:devices-count perm:groups:remove perm:groups:groups perm:groups:groups-view perm:groups:share perm:groups:count perm:groups:roles perm:groups:devices-remove perm:groups:devices-add perm:groups:assign perm:device-types:features perm:device-types:types perm:applications:install perm:applications:uninstall perm:admin-groups:count perm:admin-groups:view perm:notifications:mark-checked perm:notifications:view perm:admin:certificates:delete perm:admin:certificates:details perm:admin:certificates:view perm:admin:certificates:add perm:admin:certificates:verify perm:ios:enroll perm:ios:view-device perm:ios:apn perm:ios:ldap perm:ios:enterprise-app perm:ios:store-application perm:ios:remove-application perm:ios:app-list perm:ios:profile-list perm:ios:lock perm:ios:enterprise-wipe perm:ios:device-info perm:ios:restriction perm:ios:email perm:ios:cellular perm:ios:applications perm:ios:wifi perm:ios:ring perm:ios:location perm:ios:notification perm:ios:airplay perm:ios:caldav perm:ios:cal-subscription perm:ios:passcode-policy perm:ios:webclip perm:ios:vpn perm:ios:per-app-vpn perm:ios:app-to-per-app-vpn perm:ios:app-lock perm:ios:clear-passcode perm:ios:remove-profile perm:ios:get-restrictions perm:ios:wipe-data perm:admin perm:android:applications + = + true + scope + + + false + + = + true + + + + + ${host} + ${https_port} + + + https + + /token + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Basic ${base64encodedId} + + + Content-Type + application/x-www-form-urlencoded + + + + + + false + access_token + "access_token":"(.+?)" + $1$ + no_token + 1 + + + + + true + + + + false + { + "id":10${DeviceID}, + "name":"androiddevice${DeviceID}", + "type":"android", + "description":"this is an android device", + "deviceIdentifier":"d24f870f390352a4${DeviceID}", + "enrolmentInfo":{ + "id":10${DeviceID}, + "device":{ + + }, + "dateOfEnrolment":0, + "dateOfLastUpdate":0, + "ownership":"BYOD", + "status":"CREATED", + "owner":"admin" + }, + "features":[ + { + "id":10, + "code":"aaaa1111", + "name":"newfeature1", + "description":"this is the new feature 1", + "deviceType":"android", + "metadataEntries":[ + { + "id":10, + "value":{ + + } + } + ] + } + ], + "properties":[ + { + "name":"property1", + "value":"value1" + } + ], + "deviceInfo":{ + "deviceModel":"S6", + "vendor":"SAMSUNG", + "osVersion":"5.1", + "batteryLevel":1, + "internalTotalMemory":32, + "internalAvailableMemory":24, + "externalTotalMemory":64, + "externalAvailableMemory":60, + "operator":"dialog", + "connectionType":"GSM", + "mobileSignalStrength":1, + "ssid":"picassowifi", + "cpuUsage":0, + "totalRAMMemory":2, + "availableRAMMemory":1, + "pluggedIn":false, + "location":{ + "deviceId":0, + "deviceIdentifier":{ + "id":"string", + "type":"string" + }, + "latitude":0, + "longitude":0, + "street1":"string", + "street2":"string", + "city":"string", + "state":"string", + "zip":"string", + "country":"string" + }, + "deviceDetailsMap":{ + + }, + "imei":"string", + "imsi":"string" + }, + "applications":[ + { + "id":0, + "platform":"string", + "category":"string", + "name":"string", + "locationUrl":"string", + "imageUrl":"string", + "version":"string", + "type":"string", + "appProperties":{ + + }, + "applicationIdentifier":"string", + "memoryUsage":0 + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/devices + POST + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + false + 0 + = + true + offset + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/certificate-mgt/v1.0/admin/certificates + GET + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + [ + { + "serial": "qwe12-23fdf-2s332-53fv3-sfs33", + "pem": " +MIIEXjCCA0agAwIBAgIJAPocSteC87XUMA0GCSqGSIb3DQEBBQUAMHwxCzAJBgNV +BAYTAlNMMRAwDgYDVQQIEwdDb2xvbWJvMRAwDgYDVQQHEwdDb2xvbWJvMRIwEAYD +VQQKEwlXU08yIEluYy4xHzAdBgkqhkiG9w0BCQEWEHRlY2hvcHNAd3NvMi5jb20x +FDASBgNVBAMTC1dTTzIgUmFkaXVzMB4XDTEzMDYyNzAzMzA0NFoXDTIzMDYyNTAz +MzA0NFowfDELMAkGA1UEBhMCU0wxEDAOBgNVBAgTB0NvbG9tYm8xEDAOBgNVBAcT +B0NvbG9tYm8xEjAQBgNVBAoTCVdTTzIgSW5jLjEfMB0GCSqGSIb3DQEJARYQdGVj +aG9wc0B3c28yLmNvbTEUMBIGA1UEAxMLV1NPMiBSYWRpdXMwggEiMA0GCSqGSIb3 +DQEBAQUAA4IBDwAwggEKAoIBAQDNmhw12cF0H2UGE/XtWVt238oGxn19+n/HkM2B +cDNQgnStqI+g/K2HBtjmvVPBh17Mt+dU2BIathn06amza+LI+hHgeLUSv30jutv4 +L5zD2laAU9A/I0Wtrxu5FlsevRPSiY7buLjTbjP7IMn9vdwb+9nBQCGxVpO6AK2A +gsFJ5udnp7L+jNsHmHFt36AYZouihgD+/RGVLBAhtPoU6XFB1JoGFM+4qxklJLPh +k86WollG4cFvHXSbO1P95n6Jb/V3hfM0PvwFZswRPVnW8ngqm889C/JEk5rK4FHy +xk9MgeFRW6zA+3rVnyPdhy6/q4EerBLMfBEWpzFHyHDKMGanAgMBAAGjgeIwgd8w +HQYDVR0OBBYEFKRxtF0CWPwL7jRvA4NSIzploUgrMIGvBgNVHSMEgacwgaSAFKRx +tF0CWPwL7jRvA4NSIzploUgroYGApH4wfDELMAkGA1UEBhMCU0wxEDAOBgNVBAgT +B0NvbG9tYm8xEDAOBgNVBAcTB0NvbG9tYm8xEjAQBgNVBAoTCVdTTzIgSW5jLjEf +MB0GCSqGSIb3DQEJARYQdGVjaG9wc0B3c28yLmNvbTEUMBIGA1UEAxMLV1NPMiBS +YWRpdXOCCQD6HErXgvO11DAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IB +AQCDQV9wy8rfuFp4uByqYhnrQjzBN75VbNcgpdYocOxQPLnjWRM5qdJHELrt4FEl +rDMGd1BpP7QMAEYJUIcpDHPbs9HVCeEV6hdOrLgGxNDB0YVa2Fr5k2U8gsNIgKZo +fKxscx0w5OM71IQbuppAgIHK29DBVBVppO+zduIbVtSoBo/gcVIqVGXQXf8TFtoV +xyfGUTYdBDP4fT4p8uLASXmdaFyegQOhkjSuchVPGSJOZD6TvOjE6ZvBu9eC7sqh +oTPY56Ld0GscWJmAuj+8vmWGu0md8MnM2DE0SIYE3bo/sPp3yEIbCAnHmcveG8hn +GEL4ZNjZ+jnwSkzwBU5vh/QS", + "tenantId": 0 + } +] + = + + + + ${host} + ${https_port} + + + https + + /api/certificate-mgt/v1.0/admin/certificates + POST + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + false + 0 + = + true + offset + + + false + 1 + = + true + limit + + + + ${host} + ${https_port} + + + https + + /api/certificate-mgt/v1.0/admin/certificates + GET + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/certificate-mgt/v1.0/admin/certificates/18022362098305316308 + GET + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/certificate-mgt/v1.0/admin/certificates/18022362098305316308 + DELETE + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/certificate-mgt/v1.0/admin/certificates + GET + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/configuration + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + { + "type": "android", + "configuration": [ + { + "name": "notifierType", + "value": "1", + "contentType": "text" + }, + { + "name": "notifierFrequency", + "value": "500000", + "contentType": "text" + }, + { + "name": "androidEula", + "value": "This End User License Agreement is Eula.", + "contentType": "text" + } + ] + } + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/v1.0/configuration + PUT + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/configuration + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + { + "conditions": [ + { + "key": "deviceIdentifier", + "value": "d24f870f390352a4${DeviceID}", + "operator": "=", + "state": "AND" + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/search-devices + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f870f390352a4${DeviceID} + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f870f390352a4${DeviceID}/applications + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f870f390352a4${DeviceID}/effective-policy + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f870f390352a4${DeviceID}/features + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + false + admin + = + true + owner + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f870f390352a4${DeviceID}/operations + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/android/d24f870f390352a4${DeviceID}/compliance-data + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/devices/user-devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities/ACTIVITY_1 + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/admin/devices + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/device-types + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/configuration + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + { + "type": "android", + "configuration": [ + { + "name": "SampleConfiguration", + "contentType": "text", + "value": "This is a sample Configuration" + } + ] +} + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/configuration + PUT + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/configuration/license + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "id":1000${DeviceID}, + "name":"androiddevice1000${DeviceID}", + "type":"android", + "description":"this is an android device", + "deviceIdentifier":"d24f870f390352a41000${DeviceID}", + "enrolmentInfo":{ + "id":1000${DeviceID}, + "device":{ + + }, + "dateOfEnrolment":0, + "dateOfLastUpdate":0, + "ownership":"BYOD", + "status":"CREATED", + "owner":"admin" + }, + "features":[ + { + "id":10, + "code":"aaaa1111", + "name":"newfeature1", + "description":"this is the new feature 1", + "deviceType":"android", + "metadataEntries":[ + { + "id":10, + "value":{ + + } + } + ] + } + ], + "properties":[ + { + "name":"property1", + "value":"value1" + } + ], + "deviceInfo":{ + "deviceModel":"S6", + "vendor":"SAMSUNG", + "osVersion":"5.1", + "batteryLevel":1, + "internalTotalMemory":32, + "internalAvailableMemory":24, + "externalTotalMemory":64, + "externalAvailableMemory":60, + "operator":"dialog", + "connectionType":"GSM", + "mobileSignalStrength":1, + "ssid":"picassowifi", + "cpuUsage":0, + "totalRAMMemory":2, + "availableRAMMemory":1, + "pluggedIn":false, + "location":{ + "deviceId":0, + "deviceIdentifier":{ + "id":"string", + "type":"string" + }, + "latitude":0, + "longitude":0, + "street1":"string", + "street2":"string", + "city":"string", + "state":"string", + "zip":"string", + "country":"string" + }, + "deviceDetailsMap":{ + + }, + "imei":"string", + "imsi":"string" + }, + "applications":[ + { + "id":0, + "platform":"string", + "category":"string", + "name":"string", + "locationUrl":"string", + "imageUrl":"string", + "version":"string", + "type":"string", + "appProperties":{ + + }, + "applicationIdentifier":"string", + "memoryUsage":0 + } + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/devices + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "id":1000${DeviceID}, + "name":"androiddevice1000${DeviceID}", + "type":"android", + "description":"this is an android device", + "deviceIdentifier":"d24f870f390352a41000${DeviceID}", + "enrolmentInfo":{ + "id":1000${DeviceID}, + "device":{ + + }, + "dateOfEnrolment":0, + "dateOfLastUpdate":0, + "ownership":"BYOD", + "status":"CREATED", + "owner":"admin" + }, + "features":[ + { + "id":10, + "code":"aaaa1111", + "name":"newfeature2", + "description":"this is the new feature 2", + "deviceType":"android", + "metadataEntries":[ + { + "id":10, + "value":{ + + } + } + ] + } + ], + "properties":[ + { + "name":"property1", + "value":"value1" + } + ], + "deviceInfo":{ + "deviceModel":"S6", + "vendor":"SAMSUNG", + "osVersion":"5.1", + "batteryLevel":1, + "internalTotalMemory":32, + "internalAvailableMemory":24, + "externalTotalMemory":64, + "externalAvailableMemory":60, + "operator":"dialog", + "connectionType":"GSM", + "mobileSignalStrength":1, + "ssid":"picassowifi", + "cpuUsage":0, + "totalRAMMemory":2, + "availableRAMMemory":1, + "pluggedIn":false, + "location":{ + "deviceId":0, + "deviceIdentifier":{ + "id":"string", + "type":"string" + }, + "latitude":0, + "longitude":0, + "street1":"string", + "street2":"string", + "city":"string", + "state":"string", + "zip":"string", + "country":"string" + }, + "deviceDetailsMap":{ + + }, + "imei":"string", + "imsi":"string" + }, + "applications":[ + { + "id":0, + "platform":"string", + "category":"string", + "name":"string", + "locationUrl":"string", + "imageUrl":"string", + "version":"string", + "type":"string", + "appProperties":{ + + }, + "applicationIdentifier":"string", + "memoryUsage":0 + } + ] +} + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a41000${DeviceID} + PUT + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [ + { + "id": 10, + "platform": "android", + "category": "Business", + "name": "Graphical", + "locationUrl": "string", + "imageUrl": "string", + "version": "1.0.0", + "type": "string", + "appProperties": {}, + "applicationIdentifier": "string", + "memoryUsage": 0 + } +] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a41000${DeviceID}/applications + PUT + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [ + { + "code": "aaa", + "properties": {}, + "type": "CONFIG", + "id": 0, + "status": "IN_PROGRESS", + "control": "REPEAT", + "receivedTimeStamp": "string", + "createdTimeStamp": "string", + "payLoad": {}, + "operationResponse": "string", + "activityId": "string", + "responses": [ + { + "response": "string", + "receivedTimeStamp": "string" + } + ], + "enabled": false + } +] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a41000${DeviceID}/pending-operations + PUT + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/devices/d24f870f390352a41000${DeviceID}/status + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/applications + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"APPLICATION_LIST","type":"COMMAND","id":1,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:01:57.915","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "appIdentifier": [ + "ANGRYBIRD" + ] + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/blacklist-applications + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + { + "operation": { + "lockCode": "0000" + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/change-lock-code + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"CHANGE_LOCK_CODE","type":"PROFILE","id":2,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:14:19.718","isEnabled":true,"payLoad":"{\"lockCode\":\"0000\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/clear-password + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"CLEAR_PASSWORD","type":"COMMAND","id":3,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:18:40.233","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "serverAddress": "231.168.10.1", + "serverPort": "1701", + "sharedSecret": "YWRtaW4=", + "dnsServer": "8.8.8.8" + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/configure-vpn + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + { + "operation": { + "ssid": "string", + "password": "string" + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/configure-wifi + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"WIFI","type":"PROFILE","id":4,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:24:20.315","isEnabled":true,"payLoad":"{\"ssid\":\"string\",\"password\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "enabled": false + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/control-camera + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"CAMERA","type":"COMMAND","id":5,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:28:02.864","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "encrypted": false + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/encrypt-storage + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"ENCRYPT_STORAGE","type":"COMMAND","id":6,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:31:15.288","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/enterprise-wipe + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"ENTERPRISE_WIPE","type":"COMMAND","id":7,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:42:12.406","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ], + "operation": { + "appIdentifier": "string", + "type": "enterprise", + "url": "https://www.youtube.com", + "name": "youtube" + } +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/install-application + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"INSTALL_APPLICATION","type":"PROFILE","id":8,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:55:15.452","isEnabled":true,"payLoad":"{\"appIdentifier\":\"string\",\"type\":\"string\",\"url\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/location + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"DEVICE_LOCATION","type":"COMMAND","id":9,"status":"COMPLETED","createdTimeStamp":"2016-08-03 12:59:05.927","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ], + "operation": { + "message": "string", + "hardLockEnabled": false + } +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/lock-devices + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"DEVICE_LOCK","type":"PROFILE","id":10,"status":"COMPLETED","createdTimeStamp":"2016-08-03 13:53:28.008","isEnabled":true,"payLoad":"{\"message\":\"string\",\"isHardLockEnabled\":false}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/mute + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":true,"code":"DEVICE_MUTE","type":"COMMAND","id":11,"status":"COMPLETED","createdTimeStamp":"2016-08-03 13:56:54.703","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/reboot + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"REBOOT","type":"COMMAND","id":12,"status":"COMPLETED","createdTimeStamp":"2016-08-03 13:59:03.554","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/ring + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"DEVICE_RING","type":"COMMAND","id":13,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:00:54.603","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ], + "operation": { + "messageText": "string", + "messageTitle": "string" + } +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/send-notification + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"NOTIFICATION","type":"PROFILE","id":14,"status":"IN_PROGRESS","createdTimeStamp":"2016-08-03 14:02:55.003","isEnabled":true,"payLoad":"{\"messageText\":\"string\",\"messageTitle\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + [{"code":"NOTIFICATION","type":"PROFILE","id":14,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:02:55.003","isEnabled":true,"payLoad":"{\"messageText\":\"string\",\"messageTitle\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "maxFailedAttempts": 0, + "minLength": 0, + "pinHistory": 0, + "minComplexChars": 0, + "maxPINAgeInDays": 0, + "requireAlphanumeric": false, + "allowSimple": false + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/set-password-policy + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"PASSCODE_POLICY","type":"PROFILE","id":15,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:07:01.2","isEnabled":true,"payLoad":"{\"maxFailedAttempts\":0,\"minLength\":0,\"pinHistory\":0,\"minComplexChars\":0,\"maxPINAgeInDays\":0,\"requireAlphanumeric\":false,\"allowSimple\":false}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "identity": "string", + "title": "string", + "type": "string" + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/set-webclip + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"WEBCLIP","type":"PROFILE","id":16,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:26:04.822","isEnabled":true,"payLoad":"{\"identity\":\"string\",\"title\":\"string\",\"type\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ], + "operation": { + "appIdentifier": "string", + "type": "enterprise", + "url": "string", + "name": "string" + } +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/uninstall-application + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"UNINSTALL_APPLICATION","type":"PROFILE","id":17,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:28:26.049","isEnabled":true,"payLoad":"{\"appIdentifier\":\"string\",\"type\":\"string\",\"url\":\"string\",\"name\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/unlock-devices + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":true,"code":"DEVICE_UNLOCK","type":"COMMAND","id":18,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:35:07.994","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ], + "operation": { + "appIdentifier": "string", + "type": "enterprise", + "url": "https://www.youtube.com", + "name": "youtube", + "schedule": "" + } +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/update-application + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"UPDATE_APPLICATION","type":"PROFILE","id":19,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:39:32.714","isEnabled":true,"payLoad":"{\"appIdentifier\":\"string\",\"type\":\"string\",\"url\":\"string\",\"schedule\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ], + "operation": { + "schedule": "", + "server": "string" + } +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/upgrade-firmware + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"UPGRADE_FIRMWARE","type":"PROFILE","id":20,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:43:25.406","isEnabled":true,"payLoad":"{\"schedule\":\"string\",\"server\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + { + "operation": { + "pin": "string" + }, + "deviceIDs": [ + "d24f870f390352a4${DeviceID}" + ] +} + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/wipe + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"code":"WIPE_DATA","type":"PROFILE","id":21,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:45:49.198","isEnabled":true,"payLoad":"{\"pin\":\"string\"}"}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/applications + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"APPLICATION_LIST","type":"COMMAND","id":22,"status":"COMPLETED","createdTimeStamp":"2016-08-03 14:55:18.118","isEnabled":false}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/v1.0/activities + GET + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + ["d24f870f390352a4${DeviceID}"] + = + + + + ${host} + ${https_port} + + + https + + /api/device-mgt/android/v1.0/admin/devices/info + POST + true + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + Accept + application/json + + + + + + + true + + + + false + [{"enabled":false,"code":"DEVICE_INFO","type":"COMMAND","id":23,"status":"COMPLETED","createdTimeStamp":"2016-08-03 15:30:16.779","isEnabled":false, "operationResponse" : '{ "id": 101234, "name": "androiddevice1234","type": "android", "description": "this is an android device","deviceIdentifier": "d24f870f390352a4${DeviceID}","enrolmentInfo": {"id": 101234,"device": {},"dateOfEnrolment": 0,"dateOfLastUpdate": 0,"ownership": "BYOD","status": "CREATED","owner": "admin"},"features": [{"id": 10,"code": "aaaa1111","name": "newfeature1","description": "this is the new feature 1","deviceType": "android","metadataEntries": [{"id": 10,"value": {}}]}],"properties": [{"name": "DEVICE_MODEL","value": "S6"},{"name" : "VENDOR","value" : "SAMSUNG"}],"applications": [ {"id": 0,"platform": "string","category": "string","name": "string","locationUrl": "string","imageUrl": "string","version": "string","type": "string","appProperties": {},"applicationIdentifier": "string","memoryUsage": 0}]}'}] + = + + + + ${host} + ${https_port} + + + https + UTF-8 + /api/device-mgt/android/v1.0/devices/d24f870f390352a4${DeviceID}/pending-operations + PUT + false + false + true + false + HttpClient4 + false + + + + + + + Authorization + Bearer ${access_token} + + + Content-Type + application/json + + + + + + + 1000 + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + Results + false + false + false + false + true + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + false + false + false + false + false + 0 + true + true + + + + + + + + diff --git a/modules/integration/tests-integration/src/test/resources/payloads/mobile-device-mgt-payloads.json b/modules/integration/tests-integration/src/test/resources/payloads/mobile-device-mgt-payloads.json new file mode 100644 index 00000000..1ecf4dab --- /dev/null +++ b/modules/integration/tests-integration/src/test/resources/payloads/mobile-device-mgt-payloads.json @@ -0,0 +1,106 @@ +{ + "ADVANCE_SEARCH" : { + "conditions" : [{ + "key" : "deviceModel", + "value" : "S8", + "operator" : "=", + "state" : "OR" + }] + }, + "UPDATE_DEVICE_INFO": { + "id": 101234, + "name": "androiddevice1234", + "type": "android", + "description": "this is an android device", + "deviceIdentifier": "d24f870f390352a41234", + "enrolmentInfo": { + "id": 101234, + "device": { + }, + "dateOfEnrolment": 0, + "dateOfLastUpdate": 0, + "ownership": "BYOD", + "status": "CREATED", + "owner": "admin" + }, + "features": [ + { + "id": 10, + "code": "aaaa1111", + "name": "newfeature1", + "description": "this is the new feature 1", + "deviceType": "android", + "metadataEntries": [ + { + "id": 10, + "value": { + } + } + ] + } + ], + "properties": [ + { + "name": "DEVICE_MODEL", + "value": "S8" + }, + { + "name" : "VENDOR", + "value" : "SAMSUNG" + } + ], + "deviceInfo": { + "deviceModel": "S8", + "vendor": "SAMSUNG", + "osVersion": "5.1", + "batteryLevel": 1, + "internalTotalMemory": 32, + "internalAvailableMemory": 24, + "externalTotalMemory": 64, + "externalAvailableMemory": 60, + "operator": "dialog", + "connectionType": "GSM", + "mobileSignalStrength": 1, + "ssid": "picassowifi", + "cpuUsage": 0, + "totalRAMMemory": 2, + "availableRAMMemory": 1, + "pluggedIn": false, + "location": { + "deviceId": 0, + "deviceIdentifier": { + "id": "string", + "type": "string" + }, + "latitude": 0, + "longitude": 0, + "street1": "string", + "street2": "string", + "city": "string", + "state": "string", + "zip": "string", + "country": "string" + }, + "deviceDetailsMap": { + }, + "imei": "string", + "imsi": "string" + }, + "applications": [ + { + "id": 0, + "platform": "string", + "category": "string", + "name": "string", + "locationUrl": "string", + "imageUrl": "string", + "version": "string", + "type": "string", + "appProperties": { + }, + "applicationIdentifier": "string", + "memoryUsage": 0 + } + ] + } +} \ No newline at end of file diff --git a/modules/integration/tests-integration/src/test/resources/testng.xml b/modules/integration/tests-integration/src/test/resources/testng.xml index b1c4252f..5b704d39 100644 --- a/modules/integration/tests-integration/src/test/resources/testng.xml +++ b/modules/integration/tests-integration/src/test/resources/testng.xml @@ -33,6 +33,16 @@ + + + + + + + + + + @@ -63,11 +73,6 @@ - - - - - diff --git a/pom.xml b/pom.xml index 01441639..285b6483 100644 --- a/pom.xml +++ b/pom.xml @@ -156,10 +156,6 @@ com.opera operadriver - - org.apache.jmeter - ApacheJMeter_core - com.saucelabs.selenium sauce-ondemand-driver @@ -229,10 +225,6 @@ org.seleniumhq.selenium selenium-java - - com.opera - operadriver - org.apache.jmeter ApacheJMeter_core @@ -890,7 +882,6 @@ test ${junit.version} - org.wso2.carbon.devicemgt org.wso2.carbon.dynamic.client.registration @@ -1467,7 +1458,7 @@ 6.8 4.4.1 1.1.0 - 4.4.2 + 4.4.3 3.6.100.v20120522-1841 @@ -1518,7 +1509,7 @@ - 2.0.43 + 2.0.46 [2.0.0, 3.0.0) @@ -1526,7 +1517,7 @@ - 3.0.22 + 3.0.23 6.1.80 @@ -1597,6 +1588,7 @@ 2.40.0 0.8.1 4.4.2 + 4.2.7 3.3.0 0.7.4.201502262128 1.1.1