Install
openclaw skills install automatic-number-plate-recognitionDetect and read the largest license plate from an image using the TrafficEye REST API. Use when the user wants ANPR, ALPR, license plate OCR, number plate reading, or to extract a plate from a local image file. You can obtain API key and tokens from https://trafficeye.ai.
openclaw skills install automatic-number-plate-recognitionUse this skill when the user wants to read a license plate from an image with the TrafficEye API.
request form field if TRAFFICEYE_REQUEST_JSON is configured.https://trafficeye.ai/recognition.{"tasks":["DETECTION","OCR"],"requestedDetectionTypes":["BOX","PLATE"]}.apikey.TRAFFICEYE_API_KEY: required unless passed explicitly to the helper.TRAFFICEYE_API_URL: optional, defaults to https://trafficeye.ai/recognition.TRAFFICEYE_API_KEY_MODE: one of header, bearer, form, query. Default: header.TRAFFICEYE_API_KEY_NAME: key name for header, form, or query mode. Default: apikey.TRAFFICEYE_FILE_FIELD: multipart field for the image. Default: file.TRAFFICEYE_REQUEST_FIELD: multipart field for the JSON request. Default: request.TRAFFICEYE_REQUEST_JSON: JSON string to include as the request field. By default this is {"tasks":["DETECTION","OCR"],"requestedDetectionTypes":["BOX","PLATE"]}.TRAFFICEYE_TIMEOUT_S: optional timeout in seconds. Default: 30.Setup your API key:
export TRAFFICEYE_API_KEY='YOUR_REAL_KEY'
Use the bundled helper:
python3 recognize_plate.py /absolute/path/to/image.jpg
For structured output:
python3 recognize_plate.py /absolute/path/to/image.jpg --format json
If the deployment expects Bearer auth:
TRAFFICEYE_API_KEY_MODE=bearer python3 recognize_plate.py /absolute/path/to/image.jpg
If the deployment needs an explicit request payload:
TRAFFICEYE_REQUEST_JSON='{"requestedDetectionTypes":["PLATE"]}' python3 recognize_plate.py /absolute/path/to/image.jpg --format json
Equivalent to the documented public API example:
curl -X POST \
-H "Content-Type: multipart/form-data" \
-H "apikey: YOUR_API_KEY_HERE" \
-F "file=@image.jpg" \
-F 'request={"tasks":["DETECTION","OCR"],"requestedDetectionTypes":["BOX","PLATE"]}' \
https://trafficeye.ai/recognition
python3 recognize_plate.py <image-path> --format json.text, type, dimension, occlusion, unreadable, and position.You can validate the selection logic without calling the API:
python3 recognize_plate.py --response-json-file examples/sample_response.json --format json
combinations[].roadUsers[].plates[], then also supports roadUsers[].plates[], top-level plates[], and nested plate payloads discovered recursively.https://www.trafficeye.ai/api.