Geofencing
Geofencing
Attribute
[
{
"compliance_id": 350,
"collection_id": 650,
"compliance_status": 110,
"compliance_name": "ComplianceUpdated0.8934500788002706",
"platform_type": 5,
"created_by": 1,
"created_by_name": "admin",
"creation_time": 1542869208225,
"last_modified_by": 1,
"last_modified_by_name": "admin",
"last_modified_time": 1542869208225,
"total_count": 10,
"yet_to_evaluate_count": 8,
"compliant_devices_count": 0,
"non_compliant_devices_count": 1,
"not_applicable_count": 1,
"notification_sent_count": 1
}
]
Get Fence Policies
Get the list of all fence profiles availableoauthscope : MDMOnDemand.MDMInventory.READ
GET - /api/v1/mdm/compliance
import http.client
conn = http.client.HTTPSConnection("www.mdm.manageengine.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("GET", "/api/v1/mdm/compliance", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.mdm.manageengine.com/api/v1/mdm/compliance")
.get()
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
curl --request GET \
--url https://www.mdm.manageengine.com/api/v1/mdm/compliance \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
HTTP/1.1 200 OK{
"compliance_policies": [
{
"compliance_id": 350,
"collection_id": 650,
"compliance_status": 110,
"compliance_name": "ComplianceUpdated0.8934500788002706",
"platform_type": 5,
"created_by": 1,
"created_by_name": "admin",
"creation_time": 1542869208225,
"last_modified_by": 1,
"last_modified_by_name": "admin",
"last_modified_time": 1542869208225,
"total_count": 10,
"yet_to_evaluate_count": 8,
"compliant_devices_count": 0,
"non_compliant_devices_count": 1,
"not_applicable_count": 1,
"notification_sent_count": 1
}
]
}
Add Fence Policy
Add a Fence profileoauthscope : MDMOnDemand.MDMInventory.CREATE
POST - /api/v1/mdm/compliance
Arguments
import http.client
conn = http.client.HTTPSConnection("www.mdm.manageengine.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("POST", "/api/v1/mdm/compliance", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.mdm.manageengine.com/api/v1/mdm/compliance")
.post(body)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
curl --request POST \
--url https://www.mdm.manageengine.com/api/v1/mdm/compliance \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"policies": [
{
"rule": {
"rule_name": "Tower",
"rule_criterions": [
{
"rule_criteria_type": 2,
"geo_fence_id": 1,
"rule_criteria_state": 2
}
],
"evaluation_order": 1,
"rule_id": 412
},
"action": {
"action_attributes": [
{
"execution_order": 1,
"time_to_execution": 0,
"action_attribute_type": 1,
"phone_number": 0,
"lock_message": "Device is lost",
"unlock_pin": "01928374",
"is_remote_alarm": false,
"is_mark_as_non_compliant": true,
"alert_email_ids": [
{
"email": "admin@zylker.com",
"user_name": "admin"
}
],
"subject": "Warning",
"body_message": "The device is outside its permitted fence."
}
]
}
}
],
"description": "Compliance Profile",
"compliance_name": "ComplianceUpdated0.8934500788002706"
}
HTTP/1.1 200 OK{
"policies": [
{
"rule": {
"rule_name": "Tower",
"rule_criterions": [
{
"rule_criteria_type": 2,
"geo_fence_id": 1,
"rule_criteria_state": 2
}
],
"evaluation_order": 1,
"rule_id": 412
},
"action": {
"action_attributes": [
{
"execution_order": 1,
"time_to_execution": 0,
"action_attribute_type": 1,
"phone_number": 0,
"lock_message": "Device is lost",
"unlock_pin": "01928374",
"is_remote_alarm": false,
"is_mark_as_non_compliant": true,
"alert_email_ids": [
{
"email": "admin@zylker.com",
"user_name": "admin"
}
],
"subject": "Warning",
"body_message": "The device is outside its permitted fence."
}
]
}
}
],
"description": "Compliance Profile",
"rule": {
"rule_name": "Tower",
"rule_criterions": [
{
"rule_criteria_type": 2,
"geo_fence_id": 1,
"rule_criteria_state": 2
}
],
"evaluation_order": 1,
"rule_id": 412
},
"compliance_name": "ComplianceUpdated0.8934500788002706",
"collection_id": 650,
"is_moved_to_trash": false,
"compliance_id": 350
}
Delete Multiple Fence Policy
Delete multiple Fence Policyoauthscope : MDMOnDemand.MDMInventory.DELETE
DELETE - /api/v1/mdm/compliance
Arguments
import http.client
conn = http.client.HTTPSConnection("www.mdm.manageengine.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("DELETE", "/api/v1/mdm/compliance", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.mdm.manageengine.com/api/v1/mdm/compliance")
.delete(body)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
curl --request DELETE \
--url https://www.mdm.manageengine.com/api/v1/mdm/compliance \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"compliance_ids": [
"1",
"2",
"3"
]
}
HTTP/1.1 204 No Content
Get Fence Policy Details
Gets a specific Fence profileoauthscope : MDMOnDemand.MDMInventory.READ
GET - /api/v1/mdm/compliance/{compliance_id}
import http.client
conn = http.client.HTTPSConnection("www.mdm.manageengine.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("GET", "/api/v1/mdm/compliance/350", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.mdm.manageengine.com/api/v1/mdm/compliance/350")
.get()
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
curl --request GET \
--url https://www.mdm.manageengine.com/api/v1/mdm/compliance/350 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
HTTP/1.1 200 OK{
"policies": [
{
"rule": {
"rule_name": "Tower",
"rule_criterions": [
{
"rule_criteria_type": 2,
"geo_fence_id": 1,
"rule_criteria_state": 2
}
],
"evaluation_order": 1,
"rule_id": 412
},
"action": {
"action_attributes": [
{
"execution_order": 1,
"time_to_execution": 0,
"action_attribute_type": 1,
"phone_number": 0,
"lock_message": "Device is lost",
"unlock_pin": "01928374",
"is_remote_alarm": false,
"is_mark_as_non_compliant": true,
"alert_email_ids": [
{
"email": "admin@zylker.com",
"user_name": "admin"
}
],
"subject": "Warning",
"body_message": "The device is outside its permitted fence."
}
]
}
}
],
"description": "Compliance Profile",
"rule": {
"rule_name": "Tower",
"rule_criterions": [
{
"rule_criteria_type": 2,
"geo_fence_id": 1,
"rule_criteria_state": 2
}
],
"evaluation_order": 1,
"rule_id": 412
},
"compliance_name": "ComplianceUpdated0.8934500788002706",
"collection_id": 650,
"is_moved_to_trash": false,
"compliance_id": 350
}
Modify Fence Policy
Modifies specified Fence profileoauthscope : MDMOnDemand.MDMInventory.CREATE
PUT - /api/v1/mdm/compliance/{compliance_id}
Arguments
import http.client
conn = http.client.HTTPSConnection("www.mdm.manageengine.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
'content-type': "application/json"
}
conn.request("PUT", "/api/v1/mdm/compliance/350", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
.url("https://www.mdm.manageengine.com/api/v1/mdm/compliance/350")
.put(body)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.addHeader("content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
curl --request PUT \
--url https://www.mdm.manageengine.com/api/v1/mdm/compliance/350 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
--header 'content-type: application/json' \
--data '{"field1":"value1","field2":"value2"}'
{
"policies": [
{
"rule": {
"rule_name": "Tower",
"rule_criterions": [
{
"rule_criteria_type": 2,
"geo_fence_id": 1,
"rule_criteria_state": 2
}
],
"evaluation_order": 1,
"rule_id": 412
},
"action": {
"action_attributes": [
{
"execution_order": 1,
"time_to_execution": 0,
"action_attribute_type": 1,
"phone_number": 0,
"lock_message": "Device is lost",
"unlock_pin": "01928374",
"is_remote_alarm": false,
"is_mark_as_non_compliant": true,
"alert_email_ids": [
{
"email": "admin@zylker.com",
"user_name": "admin"
}
],
"subject": "Warning",
"body_message": "The device is outside its permitted fence."
}
]
}
}
],
"description": "Compliance Profile",
"compliance_name": "ComplianceUpdated0.8934500788002706"
}
HTTP/1.1 200 OK{
"collection_id": 650,
"user_id": 1,
"compliance_file_name_path": ".. webapps DesktopCentral client-data 1 mdm compliance 650 compliance_profile.json",
"remove_compliance_file_name_path": ".. webapps DesktopCentral client-data 1 mdm compliance 650 remove_compliance_profile.json",
"customer_id": 1,
"compliance_id": 350,
"compliance_name": "ComplianceUpdated0.8934500788002706"
}
Delete Fence Policy
Delete a Fence profileoauthscope : MDMOnDemand.MDMInventory.DELETE
DELETE - /api/v1/mdm/compliance/{compliance_id}
import http.client
conn = http.client.HTTPSConnection("www.mdm.manageengine.com")
headers = { 'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f" }
conn.request("DELETE", "/api/v1/mdm/compliance/350", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://www.mdm.manageengine.com/api/v1/mdm/compliance/350")
.delete(null)
.addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
.build();
Response response = client.newCall(request).execute();
curl --request DELETE \
--url https://www.mdm.manageengine.com/api/v1/mdm/compliance/350 \
--header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
HTTP/1.1 204 No Content