Get image metadata for uploaded media files

You can programmatically get image exif, pHash and other metadata for uploaded files in ImageKit.io media library using this API.

💡 You can also get the image metadata while uploading the image by passing metadata in responseFields parameter.

get
Get image metadata for uploaded media files API

https://api.imagekit.io/v1/files/:fileId/metadata
Get image exif, pHash and other metadata for uploaded files in ImageKit.io media library using this API.
Request
Response
Request
Path Parameters
fileId
required
string
The unique fileId of the uploaded file. fileId is returned in list files API and upload API.
Headers
Authorization
required
string
base64 encoding of your_private_api_key: Note the colon in the end.
Response
200: OK
On success, you will receive the image metadata in JSON-encoded response body.
{
"height": 68,
"width": 100,
"size": 7749,
"format": "jpg",
"hasColorProfile": true,
"quality": 0,
"density": 72,
"hasTransparency": false,
"pHash": "f06830ca9f1e3e90",
"exif": {
"image": {
"Make": "Canon",
"Model": "Canon EOS 40D",
"Orientation": 1,
"XResolution": 72,
"YResolution": 72,
"ResolutionUnit": 2,
"Software": "GIMP 2.4.5",
"ModifyDate": "2008:07:31 10:38:11",
"YCbCrPositioning": 2,
"ExifOffset": 214,
"GPSInfo": 978
},
"thumbnail": {
"Compression": 6,
"XResolution": 72,
"YResolution": 72,
"ResolutionUnit": 2,
"ThumbnailOffset": 1090,
"ThumbnailLength": 1378
},
"exif": {
"ExposureTime": 0.00625,
"FNumber": 7.1,
"ExposureProgram": 1,
"ISO": 100,
"ExifVersion": "0221",
"DateTimeOriginal": "2008:05:30 15:56:01",
"CreateDate": "2008:05:30 15:56:01",
"ShutterSpeedValue": 7.375,
"ApertureValue": 5.625,
"ExposureCompensation": 0,
"MeteringMode": 5,
"Flash": 9,
"FocalLength": 135,
"SubSecTime": "00",
"SubSecTimeOriginal": "00",
"SubSecTimeDigitized": "00",
"FlashpixVersion": "0100",
"ColorSpace": 1,
"ExifImageWidth": 100,
"ExifImageHeight": 68,
"InteropOffset": 948,
"FocalPlaneXResolution": 4438.356164383562,
"FocalPlaneYResolution": 4445.969125214408,
"FocalPlaneResolutionUnit": 2,
"CustomRendered": 0,
"ExposureMode": 1,
"WhiteBalance": 0,
"SceneCaptureType": 0
},
"gps": {
"GPSVersionID": [
2,
2,
0,
0
]
},
"interoperability": {
"InteropIndex": "R98",
"InteropVersion": "0100"
},
"makernote": {}
}
}

Response structure and status code (application/JSON)

In case of error you will get an error code along with the error message. On success, you will receive a 200 status code with the image metadata in JSON-encoded response body.

Metadata object example can be found here.

Examples

Here are some example requests to understand the API usage.

Get metadata of an uploaded image

cURL
Node.js
Python
PHP
Java
Ruby
cURL
# The unique fileId of the uploaded file. fileId is returned in response of list files API and upload API.
curl -X GET "https://api.imagekit.io/v1/files/fileId/metadata" \
-u your_private_api_key:
Node.js
var ImageKit = require("imagekit");
var imagekit = new ImageKit({
publicKey : "your_public_api_key",
privateKey : "your_private_api_key",
urlEndpoint : "https://ik.imagekit.io/your_imagekit_id/"
});
imagekit.getFileMetadata("fileId", function(error, result) {
if(error) console.log(error);
else console.log(result);
});
Python
from imagekitio import ImageKit
imagekit = ImageKit(
private_key='your_public_api_key',
public_key='your_private_api_key',
url_endpoint = 'https://ik.imagekit.io/your_imagekit_id/'
)
metadata = imagekit.get_metadata("file_id")
print("File detail-", metadata, end="\n\n")
PHP
use ImageKit\ImageKit;
$public_key = "your_public_api_key";
$your_private_key = "your_private_api_key";
$url_end_point = "https://ik.imagekit.io/your_imagekit_id";
$imageKit = new ImageKit(
$public_key,
$your_private_key,
$url_end_point
);
$getFileDetails = $imageKit->getMetaData("file_id");
echo("File metadata : " . json_encode($getFileDetails));
Java
ResultMetaData result=ImageKit.getInstance().getFileMetadata("file_id");
Ruby
imagekitio = ImageKit::ImageKitClient.new("your_private_key", "your_public_key", "your_url_endpoint")
file_metadata = imagekitio.get_file_metadata("file_id")

Calculate pHash distance between two images

See examples here.