[ad_1]
Requested
Seen
7 occasions
That is going to be self-answered query. This difficulty is losing days and complete weeks of developer time.
See the screenshots beneath to see what the issue is. Apple developer discussion board would not present you any solutions.
The problem is:
Apple App Retailer reveals no screenshots due to App Retailer’s internet interface difficulty. Once you attempt to add new screenshots it doesn’t allow you to try this. It throws a STATE_ERROR with a message of ‘Screenshots already exists!’.
The way in which you resolve that is to make use of the App Retailer Join API to delete the AppScreenshotSets for all of your “Making ready for submission” assessment model.
Steps to comply with:
-
Generate an API keys. Go to “App Retailer Join” > “Customers & Entry” > “Keys” (tab).
-
Use the ISSUER_ID, KEY_ID, AUTH KEY FILE (.p8 file) to create time-sensitive token utilizing the ruby script beneath:
require "base64"
require "jwt"
ISSUER_ID = "XXXX-XX-XXXXXX-XX-XXXXXXXX"
KEY_ID = "XXXXXXXX"
private_key = OpenSSL::PKey.learn(File.learn("AuthKey_XXXXXX.p8"))
token = JWT.encode(
{
iss: "XXXX-XX-XXXXXX-XX-XXXXXXXX",
exp: Time.now.to_i + 20 * 60,
aud: "appstoreconnect-v1"
},
private_key,
"ES256",
header_fields={
child: "XXXXXXXXX" }
)
places token
- Run the script with ruby
ruby generateTokenFromCredentials.rb
- Export the time delicate token in terminal:
export APPSTORETOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
- [OPTIONAL STEP] Get extra details about your app retailer app
export APPSTORETOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
//Checklist person
curl 'https://api.appstoreconnect.apple.com/v1/customers' --Header "Authorization: Bearer $APPSTORETOKEN"
//Checklist Apps
curl 'https://api.appstoreconnect.apple.com/v1/apps' --Header "Authorization: Bearer $APPSTORETOKEN"
//Get App Retailer Variations
curl 'https://api.appstoreconnect.apple.com/v1/apps/<APP_STORE_ID_NUMBER>/relationships/appStoreVersions' --Header "Authorization: Bearer $APPSTORETOKEN"
//Checklist All App Retailer Model Localizations for an App Retailer Model
curl 'https://api.appstoreconnect.apple.com/v1/appStoreVersions/<APP_STORE_ID_NUMBER>/appStoreVersionLocalizations' --Header "Authorization: Bearer $APPSTORETOKEN"
//Evaluation submissions
curl 'https://api.appstoreconnect.apple.com/v1/apps/<APP_STORE_ID_NUMBER>/reviewSubmissions' --Header "Authorization: Bearer $APPSTORETOKEN"
//Pre launch variations
curl 'https://api.appstoreconnect.apple.com/v1/apps/<APP_STORE_ID_NUMBER>/preReleaseVersions' --Header "Authorization: Bearer $APPSTORETOKEN"
//Get App Data
curl 'https://api.appstoreconnect.apple.com/v1/apps/<APP_STORE_ID_NUMBER>/appInfos' --Header "Authorization: Bearer $APPSTORETOKEN"
- Discover out the appStoreVersionLocalizations from the Google Chrome or Safari Console by going to the request that threw the five hundred Error.
curl 'https://appstoreconnect.apple.com/iris/v1/appScreenshotSets?embrace=appScreenshots&filter[appStoreVersionLocalization]=XXXXX-XX-XX-XX-XXXXXXX'
-H 'sec-ch-ua: "Chromium";v="104", " Not A;Model";v="99", "Google Chrome";v="104"'
-H 'x-csrf-itc: [asc-ui]'
Take appStoreVersionLocalization from the URL
- Checklist all of the appScreenshotSets and get the ids:
//Checklist all relavant App Screenshots
curl 'https://api.appstoreconnect.apple.com/v1/appStoreVersionLocalizations/21XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/appScreenshotSets' --Header "Authorization: Bearer $APPSTORETOKEN"
- DELETE EVERY LAST ONE OF THEM
//Delete Screenshots Units
curl -X DELETE 'https://api.appstoreconnect.apple.com/v1/appScreenshotSets/<XXXXX-XXX-XXX-XX-XXXX>' --Header "Authorization: Bearer $APPSTORETOKEN"
Now you possibly can return to the appstore join’s internet interface and proceed your uploads.
[Smash that like and subscribe button below!]
[Yes, that’s a joke making fun of all the youtube channels.]
default
[ad_2]



