Unknown macro: {next_previous_link3}
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

The following sections illustrate the console operation APIs that are used in EMM:

Getting device operations

Error rendering macro 'excerpt-include' : No link could be created for 'Getting Device Operations'.

Getting application details of a device

DescriptionGet the list of applications that a device has subscribed.
Resource Path/{type}/{id}/apps
URL/mdm-admin/operations/{type}/{id}/apps
HTTP MethodGET
Request/Response Formatapplication/json
cURL command
curl -X GET -H "Content-Type: application/json" -H "Authorization: Bearer <EMM_API_TOKEN>" -k -v https://<EMM_HOST>:<EMM_HTTPS_PORT>/mdm-admin/operations/{type}/{id}/apps
  • For more information on how to generate the <EMM_API_TOKEN>, see Generating the EMM API Token.
  • By default, <EMM_HOST> is localhost. However, if you are using a public IP, the respective IP address or domain needs to be specified.
  • By default, <EMM_HTTPS_PORT> has been set to 9443. However, if the port offset has been incremented by n, the default port value needs to be incremented by n.
  • Define the device type as the value for {type}. Example: ios, android or windows.
  • Define the device ID as the value for {id}.

Example:

curl -X GET -H "Content-Type: application/json" -H "Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a" -k -v https://localhost:9443/mdm-admin/operations/ios/f409r4c55924rt4af9a44tts15y9d6cd56h1047d/apps
 Sample output
> GET /mdm-admin/operations/ios/f409r4c55924rt4af9a44tts15y9d6cd56h1047d/apps HTTP/1.1
> Host: localhost:9443
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type: application/json
> Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a
< HTTP/1.1 200 OK
< Cache-Control: private
< Expires: Thu, 01 Jan 1970 05:30:00 IST
< Date: Thu, 18 Feb 2016 11:45:06 GMT
< Content-Type: application/json
< Content-Length: 2
< Server: WSO2 Carbon Server
[{"id":1,"platform":"ios","name":"WSO2%20Agent","isActive":"true","applicationIdentifier":"org.wso2.emm.agent"{"id":2,"platform":"ios","name":"QR%20Code%20Reader","isActive":"false","applicationIdentifier":"me.scan.ios.client"},{"id":3,"platform":"ios","name":"BasicManagedProfile","isActive":"true","applicationIdentifier":"com.example.ios.basicmanagedprofile"}]
Sample JSON Output
Definition 

The following is extracted from the sample output to get a better understanding of the fields:

 {  
   "id":1,
   "platform":"ios",
   "name":"WSO2%20Agent",
   "isActive:"true",
   "applicationIdentifier":"org.wso2.emm.agent"
}

Property Value

Description

id

The ID of the application that is installed on the device.

platform

The mobile device platform. It can be android, ios or windows.

nameThe name of the application that is installed on the device.
isActiveDefines of the application is active or inactive.
app_identifierThe application package name.

Getting pagination details of operations on a device

Description

You will carry out many operations on a device. In a situation where you wish to view the all the operations carried out on a device it is not feasible to show all the details on one page therefore the details are paginated.

Example: You carry out 21 operations via a given device. When you wish to see the operations carried out, the details of the 21 operations will be broken down into 3 pages with 10 operation details per page.

Resource Pathpagination/{type}/{id}
URL/mdm-admin/operations/paginate/{type}/{id}
HTTP MethodGET
Request/Response Formatapplication/json
cURL command
curl -X GET -H "Content-Type: application/json" -H "Authorization: Bearer <EMM_API_TOKEN>" -k -v https://<EMM_HOST>:<EMM_HTTPS_PORT>/mdm-admin/paginate/operation/{type}/{id}
  • For more information on how to generate the <EMM_API_TOKEN>, see Generating the EMM API Token.
  • By default, <EMM_HOST> is localhost. However, if you are using a public IP, the respective IP address or domain needs to be specified.
  • By default, <EMM_HTTPS_PORT> has been set to 9443. However, if the port offset has been incremented by n, the default port value needs to be incremented by n.
  • Define the device type as the value for {type}. Example: ios, android or windows.
  • Define the device ID as the value for {id}.

Example:

curl -X GET -H "Content-Type: application/json" -H "Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a" -k -v https://localhost:9443/mdm-admin/paginate/operations/ios/f409r4c55924rt4af9a44tts15y9d6cd56h1047d

Filter the device details using the query parameters given below:

  • start - Provide the starting pagination index. Example 10

     You will have many devices registered with the EMM. In a situation where you wish to view the all the registered devices it is not feasible to show all the details on one page therefore the details are paginated.
  • length - Provide how many device details you require from the starting pagination index. For example if you require the device details from the 10th pagination index to the 15th, you must define 10 as the value for start and 5 as the value for length.

    If you wish to get the device details within a predefined index range you need to define both the start and length fields.
    Example: https://localhost:9443/mdm-admin/devices?start=10&length=5
    There will be situations were you will not have device details in the specified index range. In such situation all the details of the devices registered to EMM will be given.

 Sample output
> GET /mdm-admin/operations/paginate/ios/f409r4c55924rt4af9a44tts15y9d6cd56h1047d HTTP/1.1
> Host: localhost:9443
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type: application/json
> Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a
< HTTP/1.1 200 OK
< Cache-Control: private
< Expires: Thu, 01 Jan 1970 05:30:00 IST
< Date: Tue, 23 Feb 2016 05:23:56 GMT
< Content-Type: application/json
< Content-Length: 3785
< Server: WSO2 Carbon Server
{"recordsTotal":6,"recordsFiltered":6,"draw":0,"data":[
{"code":"DEVICE_INFO","type":"COMMAND","id":38,"status":"PENDING","receivedTimeStamp":"","createdTimeStamp":"2016-02-23 10:51:22.06","isEnabled":false},{"code":"APPLICATION_LIST","type":"COMMAND","id":37,"status":"PENDING","receivedTimeStamp":"","createdTimeStamp":"2016-02-23 10:51:20.755","isEnabled":false}]}
Sample JSON Output
Definition 
{  
   "code":"ALARM",
   "type":"COMMAND",
   "id":34,
   "status":"COMPLETED",
   "receivedTimeStamp":"2016-02-23 09:57:22.113",
   "createdTimeStamp":"2016-02-23 09:57:21.113",
   "isEnabled":false
}, 

Property Value

Description

code

The code of the operation that you carried out. For example the code of the operation carried out to ring the alarm is ALARM.

type

The operation type that was carried out on the device. The operations types can be one of the following:

  • COMMAND
  • PROFILE
idThe operations carried out on a device is recorded in a database table The ID of the operation as in this database table is given as the ID in the output.
status

The status of the operation that has been carried out on a device. The operation status can be any of the following:

  • IN-PROGRESS - The operation is processing on the EMM server side and has not yet been delivered to the device.
  • PENDING - The operation is delivered to the device but the response from the device is pending.
  • COMPLETED - The operation is delivered to the device and the server has received a response back from the device.
  • ERROR - An error has occurred while carrying out the operation.
receivedTimeStampThe time WSO2 EMM received the response from the device.
createdTimeStampThe time when the operation was requested to be carried out.
isEnabledIf the assigned value is true it indicates that a policy is enforced on the device. If the assigned value is false it indicates that a policy is not enforced on a device.

Installing an application on a device

DescriptionInstall a selected application on a device.
Resource Path/installApp/{tenantDomain}
URL/mdm-admin/operations/installApp/{tenantDomain}
HTTP MethodPOST
Request/Response Formatapplication/json
cURL command
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <EMM_API_TOKEN>" -d @'<JSON_PAYLOAD>' -k -v https://<EMM_HOST>:<EMM_HTTPS_PORT>/mdm-admin/operation/installApp/{tenantDomain}
  • For more information on how to generate the <EMM_API_TOKEN>, see Generating the EMM API Token.
  • Define the path to the JSON file, which includes the required properties to install an application as the <JSON_PAYLOAD> value. For more information, see the Sample JSON Definition.
  • By default, <EMM_HOST> is localhost. However, if you are using a public IP, the respective IP address or domain needs to be specified.
  • By default, <EMM_HTTPS_PORT> has been set to 9443. However, if the port offset has been incremented by n, the default port value needs to be incremented by n.
  • Provide the tenant domain as the value for {tenantDomain}. The default tenant domain of WSO2 EMM is carbon.super. For more information on adding a tenant, see Managing Tenants.

Example:

curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a" -d @'device_id.json' -k -v https://localhost:9443/mdm-admin/operations/installApp/carbon.super
 Sample output
> POST /mdm-admin/operations/installApp/carbon.super HTTP/1.1
> Host: localhost:9443
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type: application/json
> Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a
> Content-Length: 23
< HTTP/1.1 201 Created
< Cache-Control: private
< Expires: Thu, 01 Jan 1970 06:35:00 IST
< Date: Thu, 25 Feb 2016 14:06:57 GMT
< Content-Type: application/json
< Content-Length: 80
< Server: WSO2 Carbon Server
{"statusCode": 201, "messageFromServer": "Application installation request has been sent to the device."}
Sample JSON
Definition 
[
  "2be702beaaf4ad34fc9e7f8da2b6b808c453fa72b", 
  "2ec33430ad456713c633de75b2219376bac45de56"
]

Property Value

Description

Required

Default
Value 

Data
Type

Example

device id

ID of the device. Multiple device IDs can be added by using comma separated values. 

Yes

N/A

String

2be702beaaf4ad34fc9e
7f8da2b6b808c453fa72b

Uninstalling an application on a device

DescriptionUninstall a selected application from a device.
Resource Path/uninstallApp/{tenantDomain}
URL/mdm-admin/operations/uninstallApp/{tenantDomain}
HTTP MethodPOST
Request/Response Formatapplication/json
cURL command
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer <EMM_API_TOKEN>" -d @'<JSON_PAYLOAD>' -k -v https://<EMM_HOST>:<EMM_HTTPS_PORT>/mdm-admin/operation/uninstallApp/{tenantDomain}
  • For more information on how to generate the <EMM_API_TOKEN>, see Generating the EMM API Token.
  • Define the path to the JSON file, which includes the required properties to uninstall an application from a device as the <JSON_PAYLOAD> value. For more information, see the Sample JSON Definition.
  • By default, <EMM_HOST> is localhost. However, if you are using a public IP, the respective IP address or domain needs to be specified.
  • By default, <EMM_HTTPS_PORT> has been set to 9443. However, if the port offset has been incremented by n, the default port value needs to be incremented by n.
  • Provide the tenant domain as the value for {tenantDomain}. The default tenant domain of WSO2 EMM is carbon.super. For more information on adding a tenant, see Managing Tenants.

Example:

curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a" -d @'device_id.json' -k -v https://localhost:9443/mdm-admin/operations/uninstallApp/carbon.super 
 Sample output
> POST /mdm-admin/operations/uninstallApp/carbon.super HTTP/1.1
> Host: localhost:9443
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type: application/json
> Authorization: Bearer 33392fb365b3ac693b405b565ddc8a3a
> Content-Length: 23
< HTTP/1.1 201 Created
< Cache-Control: private
< Expires: Thu, 01 Jan 1970 05:30:00 IST
< Date: Thu, 25 Feb 2016 11:29:30 GMT
< Content-Type: application/json
< Content-Length: 78
< Server: WSO2 Carbon Server
{"statusCode":201,"messageFromServer":"Application removal request has been sent to the device."} 
Sample JSON
Definition 
[
  "2be702beaaf4ad34fc9e7f8da2b6b808c453fa72b", 
  "2ec33430ad456713c633de75b2219376bac45de56"
]

Property Value

Description

Required

Default
Value 

Data
Type

Example

device id

ID of the devices. Multiple device IDs can be added by using comma separated values. 

Yes

N/A

String

2be702beaaf4ad34fc9e
7f8da2b6b808c453fa72b

Getting all operations

Error rendering macro 'excerpt-include' : No link could be created for 'ST1:Getting All Operations'.

Adding an operation

Error rendering macro 'excerpt-include' : No link could be created for 'ST1:Adding an Operation'.

 

  • No labels