kvitera

Photo and screenshot metadata

EXIF, dates, device, software and GPS from JPEG, PNG, WebP and HEIC/HEIF.

POST /v1/image/metadata reads image properties without expected payment details. Use it to inspect photo and screenshot metadata or provide a report to an operator.

curl https://api.kvitera.tech/v1/image/metadata \
  -H "Authorization: Bearer $KVITERA_API_KEY" \
  -F "file=@photo.jpg"

Send one file in file. Additional form fields and query parameters are not supported. See the API reference for the full schema.

Read the report

FieldUse
fileFormat, file size, image dimensions, color mode and image/frame count
metadataRecorded device, software, author, orientation and dates
metadata.propertiesSupported values with exif, xmp or png source; truncated marks shortened values
locationGPS status: valid, missing or invalid; coordinates and available altitude
findingsExplanations about differing dates, sources and recorded editing software
coverageSource coverage and inspected image count
limitationsLimits to consider when interpreting the report

status: complete means the stated checks completed. partial means some information is unavailable or shortened. For a container with multiple images, only the primary image is inspected; this is explicitly marked with primary_image_only.

assessment is signals_detected, no_signals_detected or inconclusive. It is not an authenticity verdict. Ordinary editing and exporting can leave the same signs. Missing EXIF is normal for screenshots and does not establish forgery. This method does not inspect pixels, prove image origin or confirm payment receipt.

Dates and coordinates

Dates include the source string raw, interpreted value, status and timezone_known. Do not assume a date without a timezone means UTC. invalid means the value could not be interpreted correctly; source properties remain in the table when they could be read.

With location.status: valid, latitude and longitude are decimal degrees. Zero is a valid coordinate. missing means no coordinates in the supported fields; invalid means values are present but could not be interpreted. GPS can be sensitive: consider this when storing or sharing reports. Recorded coordinates are not independent proof of where an image was captured.

Limits, history and retries

  • JPEG/JPG, PNG, WebP and HEIC/HEIF up to 15 MiB and 100 MP. Complex files may be rejected earlier.
  • The standard limit is 30 requests per minute per company, shared across PDF/image metadata, API keys and workspace requests.
  • Uploads have 15 seconds and analysis has 10 seconds. Allow additional client time, for example a 35-second timeout.
  • Receipt check quota is not consumed. There is currently no separate tariff quota for metadata.
  • Repeating a request creates a new analysis and report. Idempotency-Key does not change this behavior.

Source images are not retained. Reports and filenames are available to your company’s members in workspace history for 30 days. Save JSON in your system for longer retention. The free landing-page form does not save reports to company history and shares its free limit with PDF inspections.

Handle errors

HTTPCodeAction
401 / 403unauthorized, tenant_disabledCheck the key and company access
408upload_timeoutCheck the connection and retry
413upload_too_largeChoose a smaller file
415unsupported_media_typeSend JPEG, PNG, WebP or HEIC/HEIF
422validation, invalid_imageCheck the request fields or choose a readable original file
422image_complexity_limit, image_analysis_timeoutUse a less complex file; do not retry it indefinitely
429rate_limitWait for the seconds in Retry-After
503overloaded, image_analysis_unavailable, database_unavailableRetry later
503feature_unavailableThe method is temporarily disabled

Responses include Cache-Control: no-store. See the error guide for the error envelope and the separate method for PDFs.

On this page