All Collections
Documentation
Phonecheck API's
Phonecheck 2-Way API Integration
Phonecheck 2-Way API Integration

This is a local API to public API Integration where the desktop system communicates with the client facing endpoint.

A
Written by Adam
Updated over a week ago

CURRENTLY ONLY AVAILABLE FOR MAC

API Requirements

  • Client provides a Public API Endpoint for Phonecheck desktop to call

  • Public API Endpoint provides a Response back to Phonecheck

Use Case

  1. Device Serials are received into the Client API Endpoint Database.

  2. Client API Endpoint Database – Contains the Source Channel & Actions for the device through the warehouse

  3. Source API Call is made to Public API and the response to Source API provides the Source Channel & Next Actions for the device

  4. The Result API call is made to Public API on the Erase trigger and the Result API Data Response provides the Label deposition details for Label elements.

  5. The Label API call is made to Public API to print original disposition details for re-printing labels.

API Integration Flow

  1. The device is connected to Phonecheck Desktop

  2. When the device is ready a call is made to Source API

  3. Client Endpoint - Source API Response provided tells Phonecheck what to do with the device

  4. The device is Grading and Routed based on the Shopfloor system

  5. The device is tested and performs the Auto Erasure process

  6. Erase triggers a call to Result API Request with all device data

  7. Client Endpoint – Result API Data Response provides the label deposition details to be printed on the label.

  8. API Responses are saved in Phonecheck Cloud Database

Desktop Settings

  • Source API Request: URL + API Key

  • Result API Request: URL + API Key

  • Label API Request: URL + API Key

Source API Next Actions

“ContinueTest”

  • Devices move forward with Shopfloor & Diagnostics

“ReProcess”

  • Pop-up prompt on Desktop allows the user to Select “Re-Print” or “Re-Process”

  • “Re-Process” – would allow the user to continue to process the device as new

  • “Re-Print” – calls the Label API to re-print the previous label for the device

“PrintExceptionLabel”

  • Use case: if the serial has not been received into the Client API Database

  • The device is stopped and a call to Results API is made to get the disposition details for Label

Source API Sample Schema

{"sourceRequest": {

"ApiResponse": "\n",
"AppVersion": "2.0.81.48",
"AppleID": "",
"BMic": "",
"BatterChargeEnd": "",
"BatteryChargeStart": "",
"BatteryCurrentMaxCapacity": "1960",
"BatteryCycle": "82",
"BatteryDesignMaxCapacity": "1960",
"BatteryDrain": "",
"BatteryDrainDuration": "",
"BatteryDrainInfo": "",
"BatteryDrainType": "",
"BatteryHealthPercentage": "100",
"BatteryModel": "0003-F",
"BatteryPercentage": "90",
"BatteryResistance": "18",
"BatterySerial": "F5D825754SNFQHNA6",
"BatterySource": "BS01",
"BatteryTemperature": "21",
"BuildNo": "1.3.149",
"Carrier": "AT&T",
"CocoBatteryHealth": "0.0",
"CocoCurrentCapacity": "1960",
"CocoDesignCapacity": "0",
"Color": "Black",
"CompatibleSim": "",
"Cosmetics": "",
"CountryOfOrigin": "US",
"Custom1": "A1778",
"DecimalMEID": "089464116004425766",
"DecimalMEID2": "",
"DefectsCode": "",
"DeviceLock": "Off",
"DeviceState": "Hello",
"ESN": "Good",
"EraseEndTime": "",
"EraseStartTime": "",
"EraseType": "",
"Erased": "",
"FMic": "",
"Failed": "",
"Firmware": "4.00.00",
"Grade": "",
"IMEI": "355324084388268",
"IMEI2": "",
"InvoiceNo": "Invoice#",
"LPN": "",
"LicenseID": "5495",
"LicenseIdentifier": "1084A24F8AD26",
"MDM": "No",
"MEID": "35532408438826",
"MEID2": "",
"Make": "Apple",
"ManualEntry": "No",
"ManualFailure": "No",
"Memory": "32 GB",
"Model": "iPhone 7",
"Model#": "MN9D2LL/A",
"Network": "",
"Network1": "",
"Network2": "",
"NotCompatibleSim": "",
"Notes": "",
"OEMBatteryHealth": "0.0",
"OS": "iOS",
"PCCarrier": "AT&T",
"PESN": "80F6F19F",
"PESN2": "",
"PackageName": "",
"Passed": "Fingerprint Sensor",
"Pending": "",
"Platform": "PhoneCheckmacOS",
"PortNumber": "1",
"ProductCode": "",
"RegulatoryModelNumber": "A1778",
"RestoreCode": "",
"Rooted": "Off",
"SIM1MCC": "",
"SIM1MNC": "",
"SIM1Name": "",
"SIM2MCC": "",
"SIM2MNC": "",
"SIM2Name": "",
"SIMSERIAL": "",
"SIMSERIAL2": "",
"SKUCode": "A1778.32GB.Black.U",
"Serial": "F4GT2D3KHG7F",
"SimErased": "",
"SimLock": "",
"SimLockResponse": "",
"SimTechnology": "GSM",
"TesterName": "PC02",
"TransactionDate": "2019-12-04 15:02:31",
"TransactionID": 176,
"UDID": "52df9950cb104ffd1d55f2d8a27cb610525f34e2",
"UnlockStatus": "",
"VMic": "",
"VendorName": "Vendor Name",
"Version": "13.1.2",
"WareHouse": "",
"WifiMacAddress": "48:bf:6b:4f:f4:57",
"Working": "Pending",
"apiKey": "1d752322-31ec-4c69-b99e-8ee6b0fdcee7",
"device_shutdown": "",
"endHeat": "",
"startHeat": ""
}}

Source API Response Sample Schema:

{"udid":"52df9950cb104ffd1d55f2d8a27cb610525f34e2","imei":"0","serialNumber":"F4GT2D3KHG7F","meid":null,"customerID":"183347","sourceSku":"UIP732--UM396T0001WR","sourceChannelCode":"APLR","sourceChannel":"Apple Retail","statusCode":"200","statusMessage":"Success.","nextAction":"ContinueTest."}

Result API Sample Schema:

{

"ApiKey": "1d752322-31ec-4c69-b99e-800000000007",
"reviewResult": {
"APIResponse1": {
"customerID": "183347",
"imei": "0",
"meid": null,
"nextAction": "ContinueTest.",
"serialNumber": "FTGVJ0V1GRX2",
"sourceChannel": "Apple Retail",
"sourceChannelCode": "APLR",
"sourceSku": "UI6SPC64UC655A000GWR",
"statusCode": "200",
"statusMessage": "Success.",
"udid": "6b92372154b0fa4d0037cdcc503f6be248e672e3"
},
"ApiResponse": "{\"udid\":\"6b92372154b0fa4d0037cdcc503f6be248e672e3\",\"imei\":\"0\",\"serialNumber\":\"FTGVJ0V1GRX2\",\"meid\":null,\"customerID\":\"183347\",\"sourceSku\":\"UI6SPC64UC655A000GWR\",\"sourceChannelCode\":\"APLR\",\"sourceChannel\":\"Apple Retail\",\"statusCode\":\"200\",\"statusMessage\":\"Success.\",\"nextAction\":\"ContinueTest.\"}\n",
"AppVersion": "2.0.81.48",
"AppleID": "",
"BMic": "",
"BatterChargeEnd": "",
"BatteryChargeStart": "",
"BatteryCurrentMaxCapacity": "2348",
"BatteryCycle": "456",
"BatteryDesignMaxCapacity": "2725",
"BatteryDrain": "",
"BatteryDrainDuration": "",
"BatteryDrainInfo": "",
"BatteryDrainType": "",
"BatteryHealthPercentage": "87",
"BatteryModel": "0003-F",
"BatteryPercentage": "66",
"BatteryResistance": "8",
"BatterySerial": "F8Y729411LLG8H8CE",
"BatterySource": "BS01",
"BatteryTemperature": "23",
"BuildNo": "1.3.149",
"Carrier": "",
"CocoBatteryHealth": "0.0",
"CocoCurrentCapacity": "2348",
"CocoDesignCapacity": "0",
"Color": "Gold",
"CompatibleSim": "",
"Cosmetics": "",
"CountryOfOrigin": "US",
"Custom1": "A1687",
"DecimalMEID": "089797504703290678",
"DecimalMEID2": "",
"DefectsCode": "",
"DeviceLock": "Off",
"DeviceState": "Hello",
"ESN": "Good",
"EraseEndTime": "",
"EraseStartTime": "",
"EraseType": "",
"Erased": "Yes",
"FMic": "",
"Failed": "",
"Firmware": "5.70.01",
"Grade": "Salvage",
"IMEI": "358603073236365",
"IMEI2": "",
"InvoiceNo": "Invoice#",
"LPN": "",
"LicenseID": "5495",
"LicenseIdentifier": "250DC04F9AF26",
"MDM": "No",
"MEID": "35860307323636",
"MEID2": "",
"Make": "Apple",
"ManualEntry": "No",
"ManualFailure": "No",
"Memory": "64 GB",
"Model": "iPhone 6S+",
"Model#": "NKU82LL/A",
"Network": "",
"Network1": "",
"Network2": "",
"NotCompatibleSim": "",
"Notes": "",
"OEMBatteryHealth": "0.0",
"OS": "iOS",
"PCCarrier": "N/A",
"PESN": "80126660",
"PESN2": "",
"PackageName": "",
"Passed": "Fingerprint Sensor",
"Pending": "",
"Platform": "PhoneCheckmacOS",
"PortNumber": "4",
"ProductCode": "",
"RegulatoryModelNumber": "A1687",
"RestoreCode": "",
"Rooted": "Off",
"SIM1MCC": "",
"SIM1MNC": "",
"SIM1Name": "",
"SIM2MCC": "",
"SIM2MNC": "",
"SIM2Name": "",
"SIMSERIAL": "",
"SIMSERIAL2": "",
"SKUCode": "UI6SPC64UC655A000GWR",
"Serial": "FTGVJ0V1GRX2",
"SimErased": "",
"SimLock": "",
"SimLockResponse": "",
"SimTechnology": "",
"TesterName": "PC02",
"TransactionDate": "2019-12-04 15:02:31",
"TransactionID": 176,
"UDID": "6b92372154b0fa4d0037cdcc503f6be248e672e3",
"UnlockStatus": "",
"VMic": "",
"VendorName": "Vendor Name",
"Version": "12.4.1",
"WareHouse": "",
"WifiMacAddress": "98:9e:63:d4:fe:76",
"Working": "Pending",
"device_shutdown": "",
"endHeat": "",
"gradingAnswers": [
{
"ParentId": "3133",
"qAnswer": "Yes",
"qCategory": "Customer Abuse",
"qID": "3138",
"qTitle": "No signs",
"qType": "MainMulti"
},
{
"ParentId": "3141",
"qAnswer": "Yes",
"qCategory": "Cracks",
"qID": "3147",
"qTitle": "Only 1 chip no LARGER than 1 mm",
"qType": "MainMulti"
},
{
"ParentId": "3624",
"qAnswer": "Yes",
"qCategory": "Cracks",
"qID": "3629",
"qTitle": "Chip no larger than 1 mm AND LCD damage",
"qType": "MainMulti"
}
],
"startHeat": ""
}
}

Result API Data Response Schema:

{"udid":"6b92372154b0fa4d0037cdcc503f6be248e672e3","additionalInfo":null,"data":"Successfully Created.","status":"Success.","statusCode":"200","disposition":{"printAttributeLookUpId":0,"customerID":"183347","templateName":"AppleRetailer","printAttributesByItemId":83503,"itemId":82452316,"serialNumber":"FTGVJ0V1GRX2","createDate":"12/5/2019 10:41:20 AM","dispositionDetails":{"DispositionType":"SLV","Grade":"BER","SourceSKU":"AI6SPC64UC600A000000","WMSItemID":"","WMSBin":"NDS","PartNumberDescription":"APL IP6SP GLD 64G A1687 BER   ","WMSBay":"","RMANumber":"RMAB300553","FUNC":""},"statusCode":"200","statusMessage":"Success"}}

Label API Information

NOTE: Label API only works for the BS4x2 and there can't be any changes made to how this label looks or functions.

The request for the Label is as follows

{
"ApiKey" :"",
"SerialNumber":"",
"IMEI" :""
}

The response looks the same as the response you get from the results API

"dispositionDetails":
{"DispositionType":"SLV","Grade":"BER","SourcesSKU":"AI6SPC64UC600A000000","WMSItemID":"","WMSBin":"NDS","PartNumberDescription":"APL IP6SP GLD 64G A1687 BER
","WMSBay":"","RMANumber":"RMAB353","FUNC":""},"statusCode":"200","statusMessage":"Success"}}

These details map to fields on the BS4x2 only.

Did this answer your question?