Skip to main content

REST/HTTP API

Limelight OS features a REST/HTTP server running at (ipaddress):5807

LimelightLib Python is an open-source library that utilizes the Limelight HTTP/REST API.

Note: e.g. http://(limelight-ip-address):5807/results

General

MethodRouteDescription
GET/resultsRetrieve full JSON dump of current targeting results
GET/statusRetrieve JSON status object with temperature, fps, device name, pipeline index, cpu usage, ram usage
GET/hwreportReturns a JSON array of full hardware reports. A hardware report contains human-readable info such as FOV, principal offset, etc.

Pipeline Management

MethodRouteDescription
GET/pipeline-defaultGet default pipeline (JSON)
GET/pipeline-atindexGet pipeline[n] from the camera (JSON). Loads pipeline from disk. Include an 'index' url parameter in the request.
POST/pipeline-switchSwitch to a different pipeline. Include an 'index' url parameter in the request.
POST/reload-pipelineForce the camera to reload the current pipeline and all pipeline resources
POST/update-pipelineAccepts JSON with one or more settings updates. Set url parameter "flush" to 1 to save these settings to disk.
POST/upload-pipelineUpload a pipeline. Send JSON data in the request body. Optionally include an 'index' parameter. Overwrites pipeline on disk

Resource Management

MethodRouteDescription
POST/upload-fieldmapUpload a field map. Send JSON data in the request body. Optionally include an 'index' parameter.
POST/upload-pythonUpload Python code. Send the code as plain text in the request body. Optionally include an 'index' parameter.
POST/upload-nnUpload a neural network. Include a 'type' parameter ("detector" or "classifier"), the file contents in the request body, and optionally include an 'index' parameter.
POST/upload-nnlabelsUpload neural network labels. Include a 'type' parameter ("detector" or "classifier"), the file in the request body, and optionally include an 'index' parameter.
GET/getsnapscriptnamesList of snapscriptpro names

Python and Robot Orientation

MethodRouteDescription
POST/update-pythoninputsUpdate Python inputs for SnapScript pipelines. Send JSON data (array) in the request body.
POST/update-robotorientationUpdate robot orientation. Send JSON data (array) in the request body. EG "[45,0,0,0,0,0]. Use of this method disables NetworkTables-based orientation updates until restart/reboot

Calibration

MethodRouteDescription
GET/cal-defaultReturns default calibration result
GET/cal-fileReturns custom calibration result (file system)
GET/cal-eepromReturns custom calibration result (eeprom)
GET/cal-latestReturns latest custom calibration result. This result is not used unless it is saved to the file system or the eeprom
POST/cal-eepromUpdate the eeprom calibration result. Send calibration data in the request body.
POST/cal-fileUpdate the filesystem calibration result. Send calibration data in the request body.
DELETE/cal-latestDelete latest calibration result
DELETE/cal-eepromDelete eeprom calibration result
DELETE/cal-fileDelete filesystem calibration result

Snapshots

MethodRouteDescription
POST/capture-snapshotCapture a snapshot. Include a 'snapname' url parameter to name the snapshot.
POST/upload-snapshotUpload a named snapshot. Include a 'snapname' url parameter and an image file in the request body.
GET/snapshotmanifestReturns a list of snapshot file names
DELETE/delete-snapshotsDeletes all snapshots
DELETE/delete-snapshotDelete a specific snapshot. Include a 'snapname' parameter in the request.