- name
- appearance-score
- description
- >-
Appearance scoring (predict)
Endpoint
- Method:
POST - URL:
https://synerunify.com/api/process/appearance/predict - Content-Type:
multipart/form-data - Field:
image(required; image file; use a real image MIME such asimage/jpeg) - Query: Omit; server defaults apply.
Response JSON
Top level:
code:200means successmessage: human-readable status textdata: present on success; may be incomplete on failure
Inside data:
count: number of scored facessize:{ "width", "height" }of the original image in pixelsfaces: array of items with:
- region: { x1, y1, x2, y2, width, height } in original-image pixels - score: float; you may round for display
On errors or no faces, read message; data.faces may be empty.
Examples
curl
curl -sS -X POST "https://synerunify.com/api/process/appearance/predict" \
-F "image=@/path/to/photo.jpg"Python
import requests
url = "https://synerunify.com/api/process/appearance/predict"
with open("photo.jpg", "rb") as f:
r = requests.post(url, files={"image": ("photo.jpg", f, "image/jpeg")}, timeout=120)
r.raise_for_status()
payload = r.json()
if payload.get("code") != 200:
raise RuntimeError(payload.get("message", "API error"))
faces = payload["data"]["faces"]
scores = [round(f["score"]) for f in sorted(faces, key=lambda x: x["region"]["x1"])]Agent rules
- Upload only via multipart field
image; do not append query params; do not switch to JSON/Base64 unless the API docs explicitly say so. - When multiple faces are present, sort by
region.x1(left-to-right) before reporting scores. - On failure, surface
messageand the HTTP status first.