Image & Video APIs

Semantic data extraction

Last updated: Dec-11-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. Her neighbor Mrs. Patterson claims they're hers, a family heirloom, and has an old photo to prove it. Clara restored the blurry photo using Cloudinary's AI. They look pretty similar, but something feels off...

Help Clara confirm whether it's an exact match. Extract the earrings from the photo and analyze their exact color to see if Mrs. Patterson's story holds up!

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

Clara Denari

🔬 The Color Lab Analysis

A Clara Denari Mini Mystery, Part 2

Clara Denari

Welcome to my color lab! 🔬

I found sapphire earrings in my backyard. My neighbor Mrs. Patterson claims they're hers and showed me an old photo of her grandmother wearing similar ones. The photo was blurry, so I uploaded a restored version using Cloudinary's AI.

The earrings look similar, but are they the same?

Let's use Cloudinary to extract just the earring from the restored photo, upload that isolated earring image with color analysis enabled, and compare its predominant colors to my earrings.

If the colors don't match, Mrs. Patterson has some explaining to do! 🕵️‍♀️

🔍 Evidence to Analyze

Sapphire earrings Clara found

My earrings

Restored photograph from the neighbor

Restored photo

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: