apyhub
ARTIFICIAL INTELLIGENCE · IMAGE PROCESSING

Score Image Quality API

What it does

Image Quality Scorer analyzes an uploaded image and returns a composition and visual-quality breakdown. Send a binary image file up to 20 MB, and get back an overall score plus component metrics that help you understand what is driving the result.

The response includes face_count, color_score, thirds_score, exposure_score, sharpness_score, and a suggestions array of strings. That makes it useful when you need to rank user-submitted photos, filter low-quality images before moderation or review, or give photographers and creators quick feedback on framing, lighting, and focus.

Use it anywhere image quality matters but a human review would be too slow or inconsistent. For example, you can sort marketplace listings by image quality, reject blurry uploads before they hit storage, or score candidate thumbnails before choosing the best one for a campaign.

Image Quality Scorer returns simple numeric signals you can compare, threshold, or combine with your own business rules.

POST
Score image composition and visual quality
https://api.eu.apyhub.com/dosvak/score-image-aesthetic-quality

QUICKSTART

GUIDE

Quickstart

Upload an image to score its aesthetic quality.

curl -X POST "https://api.eu.apyhub.com/dosvak/score-image-aesthetic-quality" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/image.jpg"

What you'll get back

Returns a JSON object with numeric scoring fields such as score, face_count, color_score, thirds_score, exposure_score, and sharpness_score, plus suggestions as an array of strings.

{
  "score": 0.82,
  "face_count": 1,
  "color_score": 0.77,
  "suggestions": ["Improve lighting", "Try a tighter crop"],
  "thirds_score": 0.74,
  "exposure_score": 0.8,
  "sharpness_score": 0.79
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*
Image file

About this endpoint

What it does

Scores an uploaded image for composition and visual quality. It accepts one image file in the request body and returns numeric quality metrics, a face count, and a list of improvement suggestions.

Request Body

ParameterTypeMandatoryDescription
fileStringYesImage file uploaded as binary. Maximum size: 20 MB.

Response

Returns a JSON object with score (number), face_count (integer), color_score (number), suggestions (string array), thirds_score (number), exposure_score (number), and sharpness_score (number) fields.

ParameterTypeMandatoryDescription
scoreNumberNoOverall image score.
face_countIntegerNoNumber of faces detected in the image.
color_scoreNumberNoColor-related score.
suggestionsString ArrayNoList of suggestion strings.
thirds_scoreNumberNoScore related to composition using the rule of thirds.
exposure_scoreNumberNoExposure-related score.
sharpness_scoreNumberNoSharpness-related score.

Body

Name
Type
Description
bodyREQUIRED
object

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.