M360 Customer API documentation

Customer / V1 endpoints

POST https://m360soft.com/api/customer/v1/getHistory

Lists the previously uploaded and closed device session records (work history)

Request parameters:
Name Type Description
order string The type and direction of the order of the records. Optional, possible values: ["id:desc", "id:asc", "connectionTime:desc", "connectionTime:asc"].
limit integer Maximum number of returned records. Default: 20. Optional, range: 1 - 100.
startingAfter string Can be used for forward pagination. The ID of the last record on the previous page. Optional, exactly 36 characters.
endingBefore string Can be used for backward pagination. The ID of the first record on the next page. Optional, exactly 36 characters.
sessionId string Filters the results by session ID. Optional, exactly 36 characters.
imei string Filters the results by IMEI / serial. Optional, 3 - 64 characters.
m360id string Filters the results by M360 ID or Custom ID. Optional, 3 - 20 characters.
marketingName string Filters the results by marketing name. Optional, 3 - 100 characters.
username string Filters the results by username. Optional, 3 - 100 characters.
connectionTimeMin string Filters the results by connection time. Optional, Any valid datetime value.
connectionTimeMax string Filters the results by connection time. Optional, Any valid datetime value.
hasDiagnostics bool Setting this filter option to TRUE or FALSE will filter out all records without or with diagnostics results respectively. Optional.
hasGrading bool Setting this filter option to TRUE or FALSE will filter out all records without or with grading results respectively. Optional.
hasWipe bool Setting this filter option to TRUE or FALSE will filter out all records without or with wipe results respectively. Optional.
hasOemCheck bool Setting this filter option to TRUE or FALSE will filter out all records without or with OEM check results respectively. Optional.
hasBlacklistCheck bool Setting this filter option to TRUE or FALSE will filter out all records without or with blacklist checks respectively. Optional.
hasReport bool Setting this filter option to TRUE or FALSE will filter out all records without or with generated reports respectively. Optional.
isManual bool Setting this filter option to TRUE or FALSE will filter out all non-manual or manual records respectively. Optional.
includeOpen bool Setting this filter option to TRUE will include sessions that are still open. Note that open sessions will appear in the history only after the device has been identified successfully. Optional.
*** *** ***
authCode string The authentication ID of the customer API account. Required, max. 100 characters.
authToken string The secret authentication token of the customer API account. Required, max. 100 characters.
testing bool Setting this value to true will result in a response populated only with syntactically correct test data which can be used to test the API integration. While your account is in testing mode the value of this parameter is always true and cannot be overridden. Optional.
The response data object
Property Type Description
totalCount integer The total number of records matching the given filter criteria
hasMore bool True if there are more records available after the current page
records DeviceSession[] Array of device session records matching the given filter and paging criteria
The DeviceSession object
Property Type Description
sessionId string The unique ID of the device session
username string | null The username of the user that has created the session. The value will be null if the user is deleted
connectionTime string | null The local time when the device was connected to the PC client
marketingName string | null The friendly or marketing name of the device
alternativeMarketingNames array List of alternative names of the device
modelName string | null Model name of the device if available
applicationVersion string | null The version of the PC client that has created the session
m360id string | null The unique M360 identifier assigned to the device
imei1 string | null IMEI number of the device #1
imei2 string | null IMEI number of the device #3
imei3 string | null IMEI number of the device #3
isManual bool This value is true if the session was created manually
isClosed bool This value is true if the session is closed
isCombined bool This value is true if the session is a combined session
batteryHealth string | null The result of the battery health check. Possible values:
Value Description
unknown The health of the battery is unknown
failure The battery health check has failed
good The battery is in good condition
dead The battery is practically unusable
cold The battery is too cold at the moment and cannot be tested reliably
overheat The battery overheated during the check
over_voltage The voltage of the battery is abnormally high
change_soon The capacity of the battery has significantly degraded and the item should be replaced soon
batteryHealthPercent string | null The health level of the battery as percentage (precise or estimated value)
estimatedBatteryHealthPercent string | null The health level of the battery as percentage (estimated value)
preciseBatteryHealthPercent string | null The health level of the battery as percentage (precise value)
associatedAccount string | null Presence of an associated account (Google, Samsung, AppleID etc.) on the device. Possible values:
Value Description
no No account is present on the device
found An account is present on the device
samsungKnoxWarranty string | null Status of the Samsung KNOX warranty. Possible values:
Value Description
valid The warranty is still valid
invalid The warranty is void
unknown The status of the warranty is unknown
deviceOrigin string | null Origin of the device. Possible values:
Value Description
retail The device was sold by retail
refurbished The device was refurbished
replacement The device is a replacement item
personalized The device is a personalized item
simStatus string | null Information about the presence of a SIM card. Possible values:
Value Description
no_sim No SIM card was found in the device
has_sim A SIM card was found
networkOperator string | null The name of the network operator. This information is only available if a SIM card is present in the device
bluetoothMac string | null The MAC address of the bluetooth network adapter if available
wifiMac string | null The MAC address of the WiFi network adapter if available
portName string | null The name of the port the device was connected to
osType string | null The type of the operating system on the device. Possible values:
Value Description
android Android
ios iOS
modelCode string | null The raw model code read from the device
manufacturer string | null The raw manufacturer name read from the device
productCode string | null The raw product code string read from the device
serial string | null The manufacturer specific serial number of the device
udid string | null The Unique Device Identifier of the device (iOS only)
softwareVersion string | null The version of the operating system running on the device
mobilAppVersion string | null The version of the M360 application installed on the device
internalStorageFree string | null The free storage space on the internal storage of the device
totalRAMSize string | null The total RAM size installed on the device. Android only, it will always null on iOS devices.
device Device | null An object representing the connected unique device and all of its data that is non session specific
diagnosticsResults DiagnosticsResult[] Array of objects containing the results of diagnostics tests performed during the session
gradingResult GradingResult | null An object containing the grading data saved during the session
wipeResult WipeResult | null An object containing the result of the OEM part check operation performed during the session
oemCheckResult OemCheckResult | null An object containing the result of the wipe operation performed during the session
blacklistChecks BlacklistCheck[] Array of objects containing the results of IMEI blacklist checks
reports DiagnosticsReport[] Array of objects containing the reports generated from the device session
historicalStickyData StickyData  | null An object containing the historical state of sticky information attached to the device that was available at the end of the device session
The Device object
Property Type Description
id integer The unique ID of the device
createdAt string The UTC time of the first detection of the device
actualStickyData StickyData | null The actual value of all sticky information attached to the device
The StickyData object
Property Type Description
createdAt string The UTC time when the data was saved on the server
customId string The user provided custom identifier of the device
phoneStatus string The status of the device. Possible values:
Value Description
unknown Unknown
customer_device Customer device
own_device Own device
stock_transfer Stock transfer
in_for_service In for service
serviced Serviced
unrepairable Unrepairable
just_purchased Just purchased
for_sale For sale
overallRating string Overall rating of the device. Possible values: unknown, A++, A+, A, B+, B, C+, C
customerInfo object Optional personal information about the customer. Possible properties:
Property Type Description
firstName string First name
lastName string Last name
dateOfBirth string Date of birth
placeOfBirth string Place of birth
id1Type string Type of ID document #1
id1Number string Number of ID document #1
id2Type string Type of ID document #2
id2Number string Number of ID document #2
customNotes string Custom notes
The DiagnosticsResult object

Properties marked with an asterisk (*) are optional.

Property Type Description
createdAt string The UTC time when the data was saved on the server
clientTime string | null The local time reported by the PC client when the testing was done
diagnosticsTemplate DiagnosticsTemplate | null The template that was used for the testing
touchscreen * TestResult The result of the touch functionality test
multiTouch * TestResult The result of the multi touch functionality test
color * TestResult The result of the screen test
speaker * TestResult The result of the built-in speaker test
earspeaker * TestResult The result of the ear-speaker test
microphone * TestResult The result of the microphone test
hwButton * TestResult The result of the hardware button test
batteryHealth * TestResult The result of the battery health check. Possible details:
Property Type Description
designCapacity * string The manufacturer specified capacity of the battery when fully charged
fullCapacity * string The actual capacity of the battery when fully charged
cycles * string The number of charge / discharge cycles reported by the device
voltage * string The current voltage level of the battery
health * string Generic health status of the battery. See the batteryHealth property of the DeviceSession object for more info
healthPercent * string The health level of the battery as percentage (iOS only)
temperature * string The temperature of the battery during the test
technology * string The type of the battery like Lithium Ion, Lithium Polymer etc.
cameraBack * TestResult The result of the back camera test
cameraFront * TestResult The result of the front camera test
autofocus * TestResult The result of the camera auto focus test
flash * TestResult The result of the camera flash test
vibration * TestResult The result of the vibration test
biometric * TestResult The result of the biometric sensor (fingerprint reader / face recognition) test
accelero * TestResult The result of the accelerometer test
gyroscope * TestResult The result of the gyroscope test
proximity * TestResult The result of the proximity sensor test
lightsensor * TestResult The result of the light sensor test
magneticSensor * TestResult The result of the magnetic sensor test
call * TestResult The result of the call test
usb * TestResult The result of the USB connection test
wifi * TestResult The result of the WiFI connection test
bluetooth * TestResult The result of the bluetooth adapter test
gps * TestResult The result of the GPS module test
headset * TestResult The result of the headset test
storage * TestResult The result of the storage test. Possible details:
Property Type Description
total string Total space available on the built-in storage
free string Free space left on the built-in storage
used string Space used on the built-in storage
totalSd * string Total space available on the SD card
freeSd * string Free space left on the SD card
usedSd * string Space used on the SD card
pen * TestResult The result of the stylus pen test
nfc * TestResult The result of the NFC test
touch3d * TestResult The result of the 3D Touch test (iOS only)
autoSound * TestResult The result of the aAutomated speaker and microphone test
lcd * TestResult The result of the LCD test (android only)
The DiagnosticsTemplate object
Property Type Description
name string The name of the template
isDefault boolean Simple true / false value indicating whether the template is marked as default
The TestResult object

Properties marked with an asterisk (*) are optional.

Property Type Description
status string The result of the test. Possible values:
Value Description
passed The device successfully passed the test
failed The device failed to pass the test
skipped The test was skipped by the user
hardware_not_found A required hardware was missing to perform the test
missing_test The test is not supported on this OS / platform
details * object Some tests will provide extra information about the device. The possible keys of this objects are specific to the performed test. See the relevant properties of the DiagnosticsResult object for more info
The BlacklistCheck object
Property Type Description
createdAt string The UTC time when the check was requested by the client
imei string The IMEI number the check is performed on
status string The status of the operation. Possible values:
Value Description
queued The IMEI check was scheduled and currently waiting in the queue for processing
started The check request has been sent to GSMA and currently are being processed
successful The check has been completed and the result is available
failed The check has failed for some reason
result string The result of the blacklist check operation if available. Possible values:
Value Description
red the device was reported stolen or lost
green the device is clean
unknown the result is not available
The DiagnosticsReport object
Property Type Description
createdAt string The UTC time when the data was saved on the server
locale string Locale of the report
htmlLink string The URL of the HTML version of the report
pdfLink string The URL of the downloadable PDF version of the report
The WipeResult object
Property Type Description
createdAt string The UTC time when the data was saved on the server
clientTime string | null The local time reported by the PC client when the wipe started
type string The type of the wipe operation. Possible values:
Value Description
normal The operation is a factory reset
secure The operation is a secure wipe
result string The status / result of the wipe operation. Possible values:
Value Description
started The operation has started
disconnected The device was disconnected during the operation
aborted The operation was aborted
failed The operation has failed
finished The operation has finished successfully
hasWarning boolean If the value of this flag is true, then the result of the operation could not be determined accurately and a manual verification is advised
The OemCheckResult object
Property Type Description
createdAt string The UTC time when the data was saved on the server
clientTime string | null The local time reported by the PC client when the testing was done
bluetoothAddress * OemCheckPartResult The result of the bluetooth adapter MAC address originality check
wifiAddress * OemCheckPartResult The result of the WiFi adapter MAC address originality check
serialNumber * OemCheckPartResult The result of the device serial originality check
mainboardSerial * OemCheckPartResult The result of the mainboard originality check
batterySerial * OemCheckPartResult The result of the battery originality check
rearCamera * OemCheckPartResult The result of the rear camera originality check
frontCamera * OemCheckPartResult The result of the front camera originality check
screenSerial * OemCheckPartResult The result of the screen originality check
The OemCheckPartResult object

Properties marked with an asterisk (*) are optional.

Property Type Description
original * string The original value of the device part's serial / identifier
current * string The actual value of the device part's serial / identifier
isOriginal boolean | null Simple true / false value indicating whether the two identifiers are matching. If any of them is missing (eg. in case of reading issues) this flag will be null
The GradingResult object

Properties marked with an asterisk (*) are optional.

Property Type Description
createdAt string The UTC time when the data was saved on the server
clientTime string | null The local time reported by the PC client when the data was saved
screen * integer The condition of the screen (0-5)
case * integer The condition of the case (0-5)
cover * integer The condition of the back cover (0-5)
lcd * integer The condition of the LCD (0-5)
accessories * array The list of accessories available for the device. Possible values:
Value Description
original_box Original box
papers Papers
usb_cable USB cable
charger Charger
receipt Receipt
headset Headset
sim_tool SIM tool
comment * string Generic notes
Example responses:
Request: POST https://m360soft.com/api/customer/v1/getHistory 

    Content-Type: application/json

    {
        "authCode": "a167b9ae-948d-490c-9995-932984fbb223",
        "authToken": "f3e1016b87d4d11d7994d39050ac5d05ef475bc422131b0916337f0c0a424be3"
    }

Response:

    Status: 200
    Content-Type: application/json

    {
        "data": {
            "totalCount": 1,
            "records": [
                {
                    "sessionId": "1a3be5f5-dedd-470e-8252-0468b5216ace",
                    "username": null,
                    "createdAt": "2020-01-01T12:00:00+00:00",
                    "connectionTime": "2020-01-01T12:00:00+00:00",
                    "marketingName": "Sample Phone 32 GB",
                    "alternativeMarketingNames": [],
                    "modelName": "Phone",
                    "applicationVersion": "1.1.13",
                    "m360id": "AS4MPL3S4MPL3S4MPL3S",
                    "imei1": "990000862471854",
                    "imei2": "351756051523999",
                    "imei3": null,
                    "isManual": false,
                    "isClosed": true,
                    "isCombined": false,
                    "batteryHealth": "good",
                    "batteryHealthPercent": "97%",
                    "preciseBatteryHealthPercent": "97%",
                    "estimatedBatteryHealthPercent": "95%",
                    "associatedAccount": "found",
                    "samsungKnoxWarranty": null,
                    "deviceOrigin": "refurbished",
                    "simStatus": "no_sim",
                    "simLockStatus": "unlocked",
                    "networkOperator": null,
                    "bluetoothMac": "0D:B0:00:88:51:EA",
                    "wifiMac": "A4:D5:5C:2E:2C:7D",
                    "portName": "1",
                    "osType": "android",
                    "modelCode": "Sample",
                    "manufacturer": "Sample",
                    "productCode": "SAMPLE",
                    "serial": "SAMPLE",
                    "udid": null,
                    "softwareVersion": "9",
                    "mobilAppVersion": "1.1.6",
                    "internalStorageFree": "6.33 GB",
                    "totalRAMSize": "8 GB",
                    "iosSalesRegion": null,
                    "MDMState": null,
                    "batteryCycles": null,
                    "batteryDesignCapacity": null,
                    "fullChargeCapacity": null,
                    "rooted": null,
                    "secureLocked": null,
                    "memoryCard": null,
                    "iosRegulatoryModel": null,
                    "ecid": null,
                    "deviceColor": null,
                    "iosJailbreak": null,
                    "device": {
                        "id": 1,
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "actualStickyData": {
                            "createdAt": "2020-01-01T12:00:00+00:00",
                            "customId": "device/1",
                            "phoneStatus": "serviced",
                            "customerInfo": {
                                "firstName": "John",
                                "lastName": "Doe",
                                "dateOfBirth": "",
                                "placeOfBirth": "",
                                "id1Type": "",
                                "id1Number": "",
                                "id2Type": "",
                                "id2Number": "",
                                "customNotes": ""
                            },
                            "overallRating": "N/A"
                        }
                    },
                    "historicalStickyData": {
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "customId": "device/1",
                        "phoneStatus": "serviced",
                        "customerInfo": {
                            "firstName": "John",
                            "lastName": "Doe",
                            "dateOfBirth": "",
                            "placeOfBirth": "",
                            "id1Type": "",
                            "id1Number": "",
                            "id2Type": "",
                            "id2Number": "",
                            "customNotes": ""
                        },
                        "overallRating": "N/A"
                    },
                    "gradingResult": {
                        "clientTime": "2020-01-01T12:00:00+00:00",
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "comment": "Sample comment",
                        "cover": 3,
                        "screen": 3,
                        "lcd": 0,
                        "case": 0,
                        "accessories": [
                            "original_box",
                            "papers",
                            "usb_cable",
                            "charger",
                            "receipt",
                            "headset",
                            "sim_tool"
                        ]
                    },
                    "wipeResult": {
                        "clientTime": "2020-01-01T12:00:00+00:00",
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "type": "secure",
                        "result": "finished",
                        "hasWarning": false
                    },
                    "oemCheckResult": {
                        "clientTime": "2020-01-01T12:00:00+00:00",
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "frontCamera": {
                            "original": "ANM45312LQXFNQW39",
                            "current": "ANM45312LQXFNQW38",
                            "isOriginal": false
                        },
                        "serialNumber": {
                            "original": "DLXP4BG8FCM6",
                            "current": "DLXP4BG8FCM6",
                            "isOriginal": true
                        },
                        "batterySerial": {
                            "original": "D6D503227VWFJY7AA",
                            "isOriginal": null
                        }
                    },
                    "diagnosticsResults": [
                        {
                            "clientTime": "2020-01-01T12:00:00+00:00",
                            "createdAt": "2020-01-01T12:00:00+00:00",
                            "diagnosticsTemplate": null,
                            "touchscreen": {
                                "status": "passed"
                            },
                            "multiTouch": {
                                "status": "passed"
                            },
                            "color": {
                                "status": "passed"
                            },
                            "speaker": {
                                "status": "passed"
                            },
                            "earspeaker": {
                                "status": "passed"
                            },
                            "microphone": {
                                "status": "passed"
                            },
                            "hwButton": {
                                "status": "passed"
                            },
                            "batteryHealth": {
                                "status": "passed",
                                "details": {
                                    "designCapacity": "2642mAh",
                                    "fullCapacity": "2410mAh",
                                    "technology": "Li-poly",
                                    "voltage": "4383mV"
                                }
                            },
                            "cameraBack": {
                                "status": "passed"
                            },
                            "cameraFront": {
                                "status": "passed"
                            },
                            "autofocus": {
                                "status": "passed"
                            },
                            "flash": {
                                "status": "passed"
                            },
                            "vibration": {
                                "status": "passed"
                            },
                            "biometric": {
                                "status": "passed"
                            },
                            "accelero": {
                                "status": "passed"
                            },
                            "gyroscope": {
                                "status": "passed"
                            },
                            "proximity": {
                                "status": "passed"
                            },
                            "lightsensor": {
                                "status": "passed"
                            },
                            "magneticSensor": {
                                "status": "passed"
                            },
                            "call": {
                                "status": "passed"
                            },
                            "wifi": {
                                "status": "passed"
                            },
                            "bluetooth": {
                                "status": "passed"
                            },
                            "gps": {
                                "status": "passed"
                            },
                            "headset": {
                                "status": "passed"
                            },
                            "storage": {
                                "status": "passed",
                                "details": {
                                    "free": "32.0 GB",
                                    "total": "6.33 GB",
                                    "used": "25.67 GB"
                                }
                            },
                            "pen": {
                                "status": "passed"
                            },
                            "nfc": {
                                "status": "passed"
                            },
                            "touch3d": {
                                "status": "passed"
                            },
                            "LCD": {
                                "status": "passed"
                            }
                        }
                    ],
                    "blacklistChecks": [
                        {
                            "imei": "990000862471854",
                            "status": "successful",
                            "result": "green",
                            "createdAt": "2020-01-01T12:00:00+00:00"
                        }
                    ],
                    "lastBlacklistCheckResult": {
                        "imei": "990000862471854",
                        "result": "green",
                        "lastAction": null,
                        "createdAt": "2020-01-01T12:00:00+00:00"
                    },
                    "lastNetworkCheckResult": {
                        "imei": "990000862471854",
                        "result": {
                            "carrier": "Unlocked",
                            "isLocked": false
                        },
                        "createdAt": "2020-01-01T12:00:00+00:00"
                    },
                    "reports": [
                        {
                            "createdAt": "2020-01-01T12:00:00+00:00",
                            "locale": "en",
                            "htmlLink": "http://m360.lan/reports/diagnostics/sample.html",
                            "pdfLink": "http://m360.lan/reports/diagnostics/sample.pdf"
                        }
                    ]
                }
            ],
            "hasMore": false
        },
        "meta": {
            "success": true
        }
    }
Request: POST https://m360soft.com/api/customer/v1/getHistory 

    Content-Type: application/json

    {
        "limit": -1,
        "authCode": "a167b9ae-948d-490c-9995-932984fbb223",
        "authToken": "f3e1016b87d4d11d7994d39050ac5d05ef475bc422131b0916337f0c0a424be3"
    }

Response:

    Status: 400
    Content-Type: application/json

    {
        "data": [],
        "meta": {
            "success": false,
            "errors": {
                "code": "validation:parameter_error",
                "title": "One or more parameters are missing or invalid",
                "details": {
                    "limit": [
                        "This value should be between 1 and 100."
                    ]
                }
            }
        }
    }
Request: POST https://m360soft.com/api/customer/v1/getHistory 

    Content-Type: application/json

    {
        "imei": "990000862471854",
        "authCode": "a167b9ae-948d-490c-9995-932984fbb223",
        "authToken": "f3e1016b87d4d11d7994d39050ac5d05ef475bc422131b0916337f0c0a424be3"
    }

Response:

    Status: 200
    Content-Type: application/json

    {
        "data": {
            "totalCount": 1,
            "records": [
                {
                    "sessionId": "1a3be5f5-dedd-470e-8252-0468b5216ace",
                    "username": null,
                    "createdAt": "2020-01-01T12:00:00+00:00",
                    "connectionTime": "2020-01-01T12:00:00+00:00",
                    "marketingName": "M360test TestPhone 9T 64 GB",
                    "alternativeMarketingNames": [],
                    "modelName": "TestPhone 9T",
                    "applicationVersion": null,
                    "m360id": "AS4MPL3S4MPL3S4MPL3S",
                    "imei1": "990000862471854",
                    "imei2": "351756051523999",
                    "imei3": "null",
                    "isManual": false,
                    "isClosed": true,
                    "isCombined": false,
                    "batteryHealth": "change_soon",
                    "batteryHealthPercent": "85%",
                    "preciseBatteryHealthPercent": null,
                    "estimatedBatteryHealthPercent": "85%",
                    "associatedAccount": null,
                    "samsungKnoxWarranty": null,
                    "deviceOrigin": null,
                    "simStatus": "has_sim",
                    "simLockStatus": "unknown",
                    "networkOperator": "vodafone HU",
                    "bluetoothMac": "38:DF:40:88:A8:74",
                    "wifiMac": "3F:79:DE:BF:2D:30",
                    "portName": "1",
                    "osType": "android",
                    "modelCode": "SAMPLE",
                    "manufacturer": "SAMPLE",
                    "productCode": "SAMPLE",
                    "serial": "SAMPLE",
                    "udid": null,
                    "softwareVersion": "7.0",
                    "mobilAppVersion": null,
                    "internalStorageFree": null,
                    "totalRAMSize": "8 GB",
                    "iosSalesRegion": null,
                    "MDMState": null,
                    "batteryCycles": null,
                    "batteryDesignCapacity": null,
                    "fullChargeCapacity": null,
                    "rooted": null,
                    "secureLocked": null,
                    "memoryCard": null,
                    "iosRegulatoryModel": null,
                    "ecid": null,
                    "deviceColor": null,
                    "iosJailbreak": null,
                    "device": {
                        "id": 515380,
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "actualStickyData": null
                    },
                    "historicalStickyData": null,
                    "gradingResult": null,
                    "wipeResult": null,
                    "oemCheckResult": {
                        "clientTime": "2020-01-01T12:00:00+00:00",
                        "createdAt": "2020-01-01T12:00:00+00:00",
                        "frontCamera": {
                            "current": "ANM45312LQXFNQW38",
                            "original": "ANM45312LQXFNQW39",
                            "isOriginal": false
                        },
                        "serialNumber": {
                            "current": "DLXP4BG8FCM6",
                            "original": "DLXP4BG8FCM6",
                            "isOriginal": true
                        },
                        "screenSerial": {
                            "isOriginal": true,
                            "current": "X",
                            "original": "X"
                        }
                    },
                    "diagnosticsResults": [
                        {
                            "clientTime": "2020-01-01T12:00:00+00:00",
                            "createdAt": "2020-01-01T12:00:00+00:00",
                            "diagnosticsTemplate": null,
                            "color": {
                                "status": "passed"
                            },
                            "microphone": {
                                "status": "skipped"
                            },
                            "hwButton": {
                                "status": "passed"
                            },
                            "batteryHealth": {
                                "status": "passed",
                                "details": {
                                    "cycles": "254"
                                }
                            },
                            "cameraBack": {
                                "status": "skipped"
                            },
                            "gyroscope": {
                                "status": "failed"
                            },
                            "autoSound": {
                                "status": "passed",
                                "details": {
                                    "autoSoundWorkingHardware": "Bottom",
                                    "autoSoundNotWorkingHardware": "Front"
                                }
                            }
                        }
                    ],
                    "blacklistChecks": [],
                    "lastBlacklistCheckResult": null,
                    "lastNetworkCheckResult": null,
                    "reports": []
                }
            ],
            "hasMore": false
        },
        "meta": {
            "success": true
        }
    }

POST https://m360soft.com/api/customer/v1/generateReport

Creates a PDF / HTML report from the specified details of the given device session

Request parameters:
Name Type Description
diagnosticsResultId integer ID of the DiagnosticsResult object to include in the report. The default value is the ID of the last diagnostics test result of the session. Optional.
contents array List of the content parts to include in the report. Default: all contents. Optional, possible values: ["diagnostics", "grading", "wipe", "oem_check", "device_expenses", "grading_photos"].
dateTimeFormat string Date/time format to use in the report. Default: dd/MM/yyyy HH:mm. Optional, possible values: ["dd/MM/yyyy HH:mm", "MM/dd/yyyy HH:mm", "yyyy/MM/dd HH:mm"].
timeZone string Timezone to use (eg.: "UTC", "Europe/Berlin" etc.) when displaying dates and times in the report. Default: UTC. Optional, max. 100 characters.
sessionId string The unique ID of the device session. Required, exactly 36 characters.
locale string ISO 639-1 language code that is supported by the application. Optional, exactly 2 characters, Allowed values: "de","en","es","fr","hu","it","pt","ru","tr","uk","zh".
*** *** ***
authCode string The authentication ID of the customer API account. Required, max. 100 characters.
authToken string The secret authentication token of the customer API account. Required, max. 100 characters.
testing bool Setting this value to true will result in a response populated only with syntactically correct test data which can be used to test the API integration. While your account is in testing mode the value of this parameter is always true and cannot be overridden. Optional.
Example responses:
Request: POST https://m360soft.com/api/customer/v1/generateReport 

    Content-Type: application/json

    {
        "sessionId": "bc883c8b-46d3-ef73-924d-23005e7e8e13",
        "contents": [
            "diagnostics",
            "grading"
        ],
        "authCode": "a167b9ae-948d-490c-9995-932984fbb223",
        "authToken": "f3e1016b87d4d11d7994d39050ac5d05ef475bc422131b0916337f0c0a424be3"
    }

Response:

    Status: 200
    Content-Type: application/json

    {
        "data": {
            "diagnosticsReport": {
                "id": "15d8-3390b0bbfadb61e0b4c3f-20200115",
                "htmlLink": "https://m360soft.com/reports/diagnostics/sample.html",
                "pdfLink": "https://m360soft.com/reports/diagnostics/sample.pdf"
            }
        },
        "meta": {
            "success": true
        }
    }