Add attribute to appScreenshots for downloading source image (to prevent duplicate uploading)

Originator:me
Number:rdar://7824740 Date Originated:Jun 29, 2020 at 5:46 PM
Status:Open Resolved:
Product:App Store Connect API Product Version:
Classification: Reproducible:
 
The App Store Connect API contains a model called “appScreenshots”. The “appScreenshots” model contains attributes for “sourceFileChecksum” (which is the checksum of the originally uploaded image) and “imageAsset” (which contains a template url to download/view the image).

——— The issue

fastlane users will very often download copies of all screenshots that are uploaded and live on App Store Connect. The users will then use fastlane to update/images that aren't already on App Store Connect. The way this is done is by checking the checksum of the files on the user's local machine and compare them to the "sourceFileChecksum" that is returned by the App Store Connect API. 

The current problem is if the user is using images downloaded from the App Store Connected API, the image downloaded from "imageAsset" is modified (possibly meta data information removed) so the checksum will be different.

This difference in checksum will result in user's uploading duplicates or removing all photos and reuploading all photos.

——— The suggestion

I would like to suggest the addition of a "sourceFileUrl" attribute. This would a URL of the exact file that was uploaded (unmodified). The checksum of the file downloaded form "sourceFileUrl" will have the same checksum as "sourceFileChecksum".

This will drastically cut down on the extra number of delete screenshot requests and upload image requests that the App Store Connect API would need to process.

——— Example of what is currently returned (below)

"sourceFileChecksum" : "71a03f69ec57a2b051ad2bc828fa9680",
"imageAsset" : {
  "templateUrl" : "https://is2-ssl.mzstatic.com/image/thumb/PurpleSource113/v4/d9/63/a0/d963a0ec-3069-4b44-0a3d-118931e20e4f/c9367b69-b8e4-4199-a045-40aa6acd3f4c_iPhone_8_Plus-8Launch.png/{w}x{h}bb.{f}",
  "width" : 1242,
  "height" : 2208
}

——— Example of suggestion (below)

"sourceFileChecksum" : "71a03f69ec57a2b051ad2bc828fa9680",
"sourceFileUrl" : "https://is2-ssl.mzstatic.com/image/thumb/PurpleSource113/v4/d9/63/a0/d963a0ec-3069-4b44-0a3d-118931e20e4f/c9367b69-b8e4-4199-a045-40aa6acd3f4c_iPhone_8_Plus-8Launch.png",
"imageAsset" : {
  "templateUrl" : "https://is2-ssl.mzstatic.com/image/thumb/PurpleSource113/v4/d9/63/a0/d963a0ec-3069-4b44-0a3d-118931e20e4f/c9367b69-b8e4-4199-a045-40aa6acd3f4c_iPhone_8_Plus-8Launch.png/{w}x{h}bb.{f}",
  "width" : 1242,
  "height" : 2208
}

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!