Image & Video APIs

Semantic data extraction

Last updated: Nov-25-2025

When you upload an asset to Cloudinary, the upload API response includes basic information about the uploaded image such as width, height, number of bytes, format, and more. By default, the following semantic data is automatically included in the upload response as well: ETag, any face or custom coordinates, and the number of pages (or layers) in "paged" files.

Cloudinary supports extracting additional semantic data from the uploaded image such as: media metadata (including Exif, IPTC, XMP and GPS), color histogram, predominant colors, custom coordinates, pHash image fingerprint, ETag, and face and/or text coordinates. You request the inclusion of this additional information in the upload response by including one or more optional parameters.

You can request data extraction while uploading an image, or by using the explicit method on an already uploaded image.

Clara Denari, detective

Clara Denari's Mini Mystery: The Sapphire Earring Match

Clara found sapphire earrings in her backyard, but her neighbor claims they're a family heirloom with an old photo to prove it. Clara already restored the photo by uploading it to Cloudinary.

Now, using Cloudinary's analysis capabilities, help Clara extract the earrings from the restored photo and analyze their color to verify if they match the ones she found.

Data extraction while uploading

The following example uploads an image and requests the pHash value, a color analysis, and the media metadata:

Data extraction on already uploaded images

There are two ways to request data extraction on already uploaded images:

  • Use the Explicit method of the Upload API to request data extraction on a single asset. This method is not rate-limited and requires a signature to be generated on the server side.
  • Use the Update resources method of the Admin API. This method is rate-limited and requires your API key and secret, so is not suitable for use in client-side code.

Explicit example

The following example uses the Explicit method of the Upload API to request the pHash value, a color analysis, and the media metadata on an uploaded image with a public ID of "couple1":

Update resources example

The following example uses the Update resources method of the Admin API to request the pHash value, a color analysis, and the media metadata on an uploaded image with a public ID of "table":

Sample response

The following is an example of a JSON response returned with the following additional information: media_metadata, colors,and phash:

Clara Denari mini-mystery challenge

Mini Mystery: The Sapphire Earring Match

Clara found sapphire earrings in her backyard, but her neighbor claims they're a family heirloom and provided an old photo to prove it. Clara already restored the photo by uploading it to Cloudinary.

Now, help Clara extract the earrings from the restored photo and analyze their color to verify if they match the ones she found.

Sapphire earrings Clara found

The earrings Clara found

Restored photograph from the neighbor

The restored photograph from the neighbor

Goal: Extract the earrings from the neighbor's restored photo, upload it with color analysis enabled, and compare the predominant color to determine if they match Clara's earrings.

1
2
3
4

Step 1 - Construct the extraction URL:

Construct a Cloudinary URL that extracts and crops the earrings from the neighbor's photo. You'll need these transformation groups (separated by forward slashes):

  • e_extract:prompt:earring - uses generative AI to extract the earrings from the image
  • c_crop,g_auto:earring - crops the image to focus on the earrings (note: comma-separated parameters)
  • w_100,h_120 - resizes to 100x120 pixels for detailed color analysis (note: comma-separated parameters)

Base image URL: https://res.cloudinary.com/demo/image/upload/v1763564796/restored_earrings.jpg

Insert the transformations between /upload/ and /v1763564796/. Separate parameters within a group with commas, and separate transformation groups with forward slashes.

See the blog post on API for extracting semantic image data - colors, faces, Exif data and more for more information on semantic data extraction.

✔️ Feedback sent!

Rate this page: