Dynamics Mobile Docs
Ask or search…
K

Data API

Read data from dynamics mobile portal
The Data API allows external systems to read data from a specific application area (tenant) via ODATA .
The Data API is intended for use by external systems for reporting and analysis purposes
It Data API has the following usage limits:
  • (soft limit) up to 10 request per minute
  • (hard limit) up to 6Mb per request can be returned as a response
  • the maximum size of the data consumed per month is limited to 100GB per month (This is a tenant specific limit, which can be increased by purchasing higher tenant tier subscription)
The DATA API usage requires External Consumer Subscription. Please contact our sales teams via [email protected]. The External Consumer Subscription allows external systems to read data from a single tenant where the Data API limits and tenant specific limits applies.
The DATA API allow access to all data entities stored in the tenant. The actual data and entities stored within the tenant depends on the actual apps instralled in the tenant.
You can explore the available data entities by using the Schema Explorer from the tenant.
1. Login into your tenant
  1. 2.
    Go to ADM app
  2. 3.
    Go to Apps by using the left-side menu
  3. 4.
    Select a backend app from the list ( BIZES, MOBFL, ALRT, etc. )
  4. 5.
    Click "Schema Explorer" from the top right corner
  5. 6.
    You will see the list of the supported entities within the selected app
  6. 7.
    Click over an entity to expand the fields
You can use the same entity and fields names to extract the entities data via the Data API
The Data API is exposed to internet and can be called via HTTPS requests by sending and receiving JSON payload.
get
https://api.portal.dynamicsmobile.com/livelink/entity/:appArea/:appCode/:entity/
query
Allows external consumers to read entity records by providing filter expressions
Example - NodeJs
Example - C# (RestSharp)
var request = require('request');
var filter=`'dateCreated ge '2020-04-01 00:00:00' and dateCreated le '2021-04-31 23:59:59'`;
var sorting = `dateCreated desc`;
var options = {
'method': 'POST',
'url': `https://api.portal.dynamicsmobile.com/livelink/entity/myapparea/MOBFL/GeoLocationEvent/query?$filter=${filter}&$orderby=${sorting}`,
'headers': {
'x-api-key': '12321313'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
const jsonResponse = response.body;
const arrayOfMobileEntities = JSON.parse(jsonResponse);
for(const eventIndex in arrayOfMobileEntities ){
const event = arrayOfMobileEntities[eventIndex];
console.log(`new mobile event on ${event.DMS_DATEMODIFIED}` );
}
//parse reponse and obtain the value if the uploadPath field.
//use it to upload the packet content via PUT request
});
var appArea = "MyAppArea";
var apiKey = "1234567890";
var filter="'dateCreated ge '2020-04-01 00:00:00' and dateCreated le '2021-04-31 23:59:59'";
var sorting = "dateCreated desc";
var client = new RestClient("https://api.portal.dynamicsmobile.com/livelink/entity"+appArea+"/MOBFL/GeoLocationEvent/query?$filter="+filter+"&$orderby="+sorting);
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("x-api-key", apiKey);
IRestResponse response = client.Execute(request);
var jsonContent = response.Content;
//parse the json content which contains array of entities
Check out the following additional pages:
Dynamics Mobile provided by Mobile Affairs Ltd. | 1712 Sofia, Bulgaria, Alexander Malinov 51 | [email protected]