Created date | Updated date | Affects version | Fix version |
---|---|---|---|
|
| Management Portal | N/A |
This page will cover the basics of how to utilize Management Portal APIs when exporting reports from the system.
More detailed examples and full descriptions for all available endpoint and their respective parameters can be found in the API Guide available within the "Support"-tab in the Management Portal.
The below table describes currently available report export endpoints and their differences on a higher level and allows users to choose the best option for the requirements.
Endpoint | Method | Request Format | Allows exporting reports for multiple devices in a single request | Allows filtering for reports | Description | |
---|---|---|---|---|---|---|
Export report | /report/export/{uuid} | GET | N/A | Export a single report with its UUID. | ||
Export reports (GET) | /report/export?@imei={imei} | GET | N/A | Export past month's reports with optional IMEI filtering. | ||
Export reports (POST) | /report/export | POST | application/json | Export reports with more advanced filters/options provided in the request body. |
Export Report
The most simple form of exporting an individual report, requires the report UUID to be provided as part of the endpoint.
In the following examples replace {UUID} with a valid report UUID and {API_KEY} with the key string of your API key. If you don't have an API key yet, see more details from API Keys documentation.
curl -X "GET" \ "https://api.eu-west-1.blancco.cloud/v1/report/export/{UUID}" \ -H "accept: */*" \ -H "X-BLANCCO-API-KEY: {API_KEY}"
By default, the report is exported in XML format. Also, PDF and JSON are supported, the format can be changed by defining "?format=" parameter as part of the request URL after the UUID. Supported values for the format parameter are XML, JSON and PDF.
curl -X "GET" \ "https://api.eu-west-1.blancco.cloud/v1/report/export/{UUID}?format=PDF" \ -H "accept: */*" \ -H "X-BLANCCO-API-KEY: {API_KEY}"
Export Reports (GET)
Export past month's reports with optional IMEI filtering. If the report is not created during the past month it will not be included in the results.
In the following examples replace {IMEI} with a valid device IMEI and {API_KEY} with the key string of your API key. If you don't have an API key yet, see more details from API Keys documentation.
curl -X "GET" \ "https://api.eu-west-1.blancco.cloud/v1/report/export?@imei={IMEI}" \ -H "accept: */*" \ -H "X-BLANCCO-API-KEY: {API_KEY}"
Export Reports (POST)
Export reports with the options provided in the request body. Allows users to define more defined search criteria and only return matching reports.
Supported report fields
Field name | XML field path | Name |
---|---|---|
IMEI | blancco_hardware_report.system.imei | @imei |
System Serial | blancco_hardware_report.system.serial | @system_serial |
Erasure State | blancco_erasure_report.erasures.erasure.state | @erasure_state |
Custom field | user_data.fields.{CUSTOM_FIELD_NAME} | @custom-{CUSTOM_FIELD_NAME} |
Additionally, multiple other parameters can be defined to further limit the returned results and the output format.
Additional parameters
Parameter | Description |
---|---|
date | The date range for the exported reports. This object consists of properties with the following valid names: lte (less than or equal), lt (less than), eq (equal), gt (greater than), and gte (greater than or equal). If this isn't defined, the default is to export reports from the past month. For example, in order to export all reports from January 2021, you'd use the following: {"gte": "2021-01-01T00:00:00Z", "lt": "2021-02-01T00:00:00Z"}. In order to disable date filtering, use an empty object. The default range of the past month is derived by decreasing the "number" of the month. E.g. if the current date at the time the export is executed is 2021-03-01T07:00:00Z, then that becomes the end of the date range and the start would be 2021-02-01T07:00:00Z. |
format | Format of the exported report. If omitted, the default format for ERASURE reports is "XML". Valid values: "CSV", "JSON", and "XML". |
container | Container in which all individual reports are wrapped in. Valid values: "NONE" and "ZIP" (default). With "NONE", the reports are wrapped into a single document of the same format as the reports themselves. For example, if the format is "XML" and the container is "NONE", a single XML document is returned that contains all individual XML reports. When the container is "ZIP", all reports have their own file within the returned ZIP file. |
{ "filter": { "date": { "gte": "2023-01-01T00:00:00Z" }, "fields": [ { "name": "@imei", "like": "{IMEI}" }, { "name": "@custom-my custom field", "like": "{CUSTOM_FIELD_VALUE}" } ] }, "format": "XML", "container": "ZIP" }
{ "filter": { "date":{ }, "fields": [ { "name": "@erasure_state", "like": "Successful" } ] }, "csv":{ "columns": ["blancco_erasure_report.erasures.erasure.timestamp","blancco_erasure_report.erasures.erasure.state","blancco_hardware_report.system.manufacturer","blancco_hardware_report.system.model"] }, "format": "CSV", "container": "NONE" }
Example Request
This example request would export XML format reports for IMEI 123456789012345 created after 1st of January 2023. The exported reports will be returned in a zip folder (each report in its own separate file).
In the following example replace IMEI with a valid IMEI and {API_KEY} with the key string of your API key. If you don't have an API key yet, see more details from API Keys documentation.
curl -X 'POST' \ 'https://api.eu-west-1.blancco.cloud/v1/report/export' \ -H 'accept: */*' \ -H 'X-BLANCCO-API-KEY: {API_KEY}' \ -H 'Content-Type: application/json' \ -d '{ "filter": { "date": { "gte": "2023-01-01T00:00:00Z" }, "fields": [ { "name": "@imei", "like": "123456789012345" }, { "name": "@custom-my custom field", "like": "my custom field value" } ] }, "format": "XML", "container": "ZIP" }'