ML Prep API (v1)
http://{{your_prep_ip_address}}/
- Mock server
http://{{your_prep_ip_address}}/api/v1/deck/calibrate
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
'http://{{your_prep_ip_address}}/api/v1/deck/calibrate' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'{ "id": 0, "status": "string", "message": "string", "hasError": true, "calibrationDate": "2019-08-24T14:15:22Z" }
- Mock server
http://{{your_prep_ip_address}}/api/v1/deck/calibrate
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'http://{{your_prep_ip_address}}/api/v1/deck/calibrate' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'[ { "id": 0, "status": "string", "message": "string", "hasError": true, "calibrationDate": "2019-08-24T14:15:22Z" } ]
Request
The deck scan requires that the camera be enabled and functional. The deck should also have been recently calibrated (using PUT /Calibrate) to ensure optimal scan results. The scan returns the list of labware detected (sorted by confidence) at each position. The numMatches parameter specifies how many labware matches are returned per position.
- Mock server
http://{{your_prep_ip_address}}/api/v1/deck/legacy-scan/{numMatches}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'http://{{your_prep_ip_address}}/api/v1/deck/legacy-scan/{numMatches}' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'[ { "detectedLabwareId": 0, "confidence": 0.1, "isOccupied": true, "positionId": 0, "labwareClassification": "string", "matches": [ … ] } ]
Request
The deck scan requires that the camera be enabled and functional. The deck should also have been recently calibrated (using PUT /Calibrate) to ensure optimal scan results. The scan returns the list of labware detected (sorted by confidence) at each position. The numMatches parameter specifies how many labware matches are returned per position.
- Mock server
http://{{your_prep_ip_address}}/api/v1/deck/scan/{numMatches}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'http://{{your_prep_ip_address}}/api/v1/deck/scan/{numMatches}' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'[ { "detectedLabwareId": 0, "confidence": 0.1, "isOccupied": true, "positionId": 0, "labwareClassification": "string", "matches": [ … ] } ]
- Mock server
http://{{your_prep_ip_address}}/api/v1/deck/{protocolId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
'http://{{your_prep_ip_address}}/api/v1/deck/{protocolId}' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"id": 1,
"positions": [
{
"position": 1,
"labwarePositions": [
{
"row": 1,
"column": 1,
"id": 1,
"positionName": "Some Labware Position Name",
"labwareGroup": {
"labwareId": 42,
"id": 1,
"groupName": "Name for the Labware Group",
"reuseTipsBetweenSteps": false,
"liquidName": "Name of the Liquid",
"liquidType": "Water",
"liquidVolumeOptions": "CalculateForMe"
},
"liquidVolume": 42
}
],
"id": 1,
"positionName": "Name of the Deck Position",
"labwareGroup": {
"labwareId": 42,
"id": 1,
"groupName": "Name for the Deck Position Labware Group",
"reuseTipsBetweenSteps": false,
"liquidName": "Name of the Liquid",
"liquidType": "Water",
"liquidVolumeOptions": "CalculateForMe"
},
"liquidVolume": 4200
},
{
"position": 2,
"labwarePositions": [],
"id": 2,
"positionName": "Another Deck Position Name",
"labwareGroup": null,
"liquidVolume": 0
}
]
}'{ "id": 0, "positions": [ { … } ] }
- Mock server
http://{{your_prep_ip_address}}/api/v1/deck/{deckLayoutId}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'http://{{your_prep_ip_address}}/api/v1/deck/{deckLayoutId}' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'{ "id": 0, "positions": [ { … } ] }