Example Captures

For testing API responses

We've put together a handful of sample images and outlined the highlights of their API responses to kickstart your testing efforts. You are free to download them here and use them in testing the API and webhook. Please remember that many applications destroy signed data on upload or resizing, so be sure to upload these directly to a compatible destination, like s3. If you need to send images to others, send via a zip file.

For your reference, a thumbnail of each image from the sample pack is included below.

Ordinary Image

This is a standard JPEG that does not have any signed data in it. It is not a Truepic.

RESPONSE HIGHLIGHTS

No verification present.

  ...
  "verification": {
    "status": "ERROR",
    "error": {
      "message": "Error: No manifest present in jpeg"
    }
  },
  ...

Valid Truepic

This is an example of a signed JPEG taken with the Lens SDK in a mobile application. Most of your captures should look this way.

RESPONSE HIGHLIGHTS

If each section under verification has a status of validated its a Truepic!

 "verification": {
    "status": "SUCCESS",
    "assertions": {
      "hash": {
        "status": "validated"
      },
      "location": {
        "status": "validated",
       ...
      },
      "device": {
        "status": "validated",
       ...
      },
      "date_time": {
        "status": "validated",
        ...
      }
    },
    ...
    "signature": {
      "status": "validated",
      ...
    },
    "trusted_timestamp": {
      "status": "validated" || "OFFLINE",
      ...
    },
    ...
  },
  

Recapture Failure

This photo is a valid Truepic, however it failed recapture detection and is likely a picture of a screen.

RESPONSE HIGHLIGHTS

If status returns as WARNING a recapture is suspected.

  "recapture": {
    "status": "WARNING",
    "blur_score": 95,
    "entropy_score": 1.29,
    "recapture_score": 0.999
  },

Image Search Failure

This photo has been found elsewhere on the internet. This means that it is a recapture of a pre-existing image.

RESPONSE HIGHLIGHTS

If status returns as MATCH images were found and flagged.

 "reverse_image_search": {
    "status": "MATCH",
    "url": "https://buscouncoche.es/wp-content/uploads/2018/04/como-saber-el-kilometraje-real-de-un-vehiculo.jpg"
  },

Invalid Credentials

Whether due to deliberate hacking or errors, sometimes a Truepic will be invalid.


RESPONSE HIGHLIGHTS
...
 "certificate": {
      "status": "INVALID",
      "status_reason": "None of the supplied certificate chains applies to the signing certificate",
      "issuer_name": "IOSClaimSigningCA",
      "name": "Truepic Lens SDK v1.0.3 in CAI Capture v1.0.2022.11.18.1",
      "org": "Adobe Inc.",
      "org_unit": "Content Authenticity Initiative",
      "valid_from": "2022-11-21T15:57:28Z",
      "valid_to": "2022-11-22T15:57:27Z"
 },
 ...

Location Within Threshold

This example shows a positive result with our location comparison feature.

RESPONSE HIGHLIGHTS

location.comparison.distance_threshold_exceeded is false!

...
 "location": {
    "latitude": 40.8648699,
    "longitude": -73.9315265,
    "street": "99 Margaret Corbin Dr",
    "city": "New York",
    "state": "NY",
    "postal_code": "10040",
    "country": "US",
    "formatted_address": "99 Margaret Corbin Dr, New York, NY 10040, USA",
    "comparison": {
      "latitude": 40.8618535,
      "longitude": -73.932974,
      "street": "99 Margaret Corbin Dr",
      "city": "New York",
      "state": "NY",
      "postal_code": "10040",
      "country": "US",
      "formatted_address": "99 Margaret Corbin Dr, New York, NY 10040, USA",
      "address": "99 Margaret Corbin Dr New York NY 10040  USA",
      "distance_threshold": 500,
      "distance": 357.21321749244805,
      "distance_min_accuracy": 340.71321749244805,
      "distance_max_accuracy": 373.71321749244805,
      "distance_threshold_exceeded": false
    }
  }
 ...

Location Exceeds Threshold

This example shows a negative result with our location comparison feature, meaning that location in the photo's metadata is not within the allowed threshold of the address provided that it is being compared to.

RESPONSE HIGHLIGHTS

location.comparison.distance_threshold_exceeded is true. True distance is provided.

...
 "location": {
    "latitude": 40.8648699,
    "longitude": -73.9315265,
    "street": "99 Margaret Corbin Dr",
    "city": "New York",
    "state": "NY",
    "postal_code": "10040",
    "country": "US",
    "formatted_address": "99 Margaret Corbin Dr, New York, NY 10040, USA",
    "comparison": {
      "latitude": 40.7484405,
      "longitude": -73.98566439999999,
      "street": "20 W 34th St.",
      "city": "New York",
      "state": "NY",
      "postal_code": "10001",
      "country": "US",
      "formatted_address": "20 W 34th St., New York, NY 10001, USA",
      "address": "Empire State Building, West 34th Street, New York, NY",
      "distance_threshold": 500,
      "distance": 13740.180956131562,
      "distance_min_accuracy": 13723.680956131562,
      "distance_max_accuracy": 13756.680956131562,
      "distance_threshold_exceeded": true
    }
  }
 ...