App Store Connect API

RSS for tag

The App Store Connect API helps you automate tasks usually done on the Apple Developer website and App Store Connect.

Posts under App Store Connect API tag

200 Posts
Sort by:

Post

Replies

Boosts

Views

Activity

Analytics Reports API response only returns empty data array
I am following the Downloading Analytics Reports guide which consists of five steps: request the ONGOING report generation for the app once list all analytics report requests for the app list all analytics reports based on the analytics report request id :x: list all analytics report instances based on the analytics report id list all segments of the analytics report instance to get the download url I can only complete the third step which returns a list of all available reports. However when I continue with step four, the request for the analytics report instances returns with a response code 200 but the data array is always empty: I am using the Home Screen Widget Installs report but this is also happening for other reports Also changing or omitting the filter doesn't change anything { "data": [], "links": { "self": "https://api.appstoreconnect.apple.com/v1/analyticsReports/{reportId}/instances?filter%5Bgranularity%5D=DAILY" }, "meta": { "paging": { "total": 0, "limit": 50 } } } What could be the reason that the data array is empty and how can I fix it because there is no error message?
0
0
46
11h
server-side iap authentication error code 401
I created a project to validate in-app purchase receipts using c# but I always get error 401, you don't have permission, I followed the instructions exactly but still failed, I created a private key in Certificates, IDs & Profiles and download the .p8 file but it still doesn't work, I also created and tried another key in Users and Access > Integrations > App Store Connect API and also In-App Purchase but it still doesn't work. When I try to put the created token on jwt.io, I always get an Invalid Signature error using Jose; using System; using System.Collections.Generic; using System.Net.Http.Headers; using System.Net.Http; using System.Security.Cryptography; using System.Threading.Tasks; using System.IO; using System.Net; namespace CheckIAP { internal class Program { static async Task Main(string[] args) { string jwtToken = GenerateAppStoreJwtToken(); string transactionId = "110002159078***"; Console.WriteLine(jwtToken); string url = $"https://api.storekit.itunes.apple.com/inApps/v2/history/{transactionId}"; using (HttpClient client = new HttpClient()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", jwtToken); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = await client.GetAsync(url); if (response.IsSuccessStatusCode) { string responseData = await response.Content.ReadAsStringAsync(); Console.WriteLine(responseData); } else { Console.WriteLine($"Error: {response.StatusCode}, {response.ReasonPhrase}"); string responseData = await response.Content.ReadAsStringAsync(); Console.WriteLine(responseData); } } Console.ReadLine(); } public static string GenerateAppStoreJwtToken() { string teamId = "PZG479xxxx"; string keyId = "JCXH26xxxx"; string issuerId = "7aa0c9c2-***-***-***-xxxx"; string bundleId = "com.***.***"; const string API_KEY = "MIGTAgEAMBMGByqGSM...."; var header = new Dictionary<string, object>() { { "alg", "ES256" }, { "kid", keyId }, { "typ", "JWT" } }; var payload = new Dictionary<string, object> { { "iss", issuerId }, { "iat", DateTimeOffset.UtcNow.ToUnixTimeSeconds() }, { "exp", DateTimeOffset.UtcNow.AddMinutes(15).ToUnixTimeSeconds() }, { "aud", "appstoreconnect-v1" }, { "sub", bundleId } }; var key = CngKey.Import(Convert.FromBase64String(API_KEY), CngKeyBlobFormat.Pkcs8PrivateBlob); return Jose.JWT.Encode(payload, key, JwsAlgorithm.ES256, header); } } }
1
0
50
12h
Beta tester remove API failed with 500 error
https://api.appstoreconnect.apple.com/v1/betaTesters/{id} Cannot call delete on any of the above Cannot be uninstalled from the app store console (IDs cannot be provided as personal information) { "errors": [ { "status": "500", "code": "UNEXPECTED_ERROR", "title": "An unexpected error occurred.", "detail": "An unexpected error occurred on the server side. If this issue continues, contact us at https://developer.apple.com/contact/." } ] }
1
0
91
3d
App Store Connect API responds with status 403 Forbidden
As other threads have reported, the endpoint “GET /v1/salesReports” responds with a status of 403 (Forbidden). It worked a week ago but no longer works today. Further Information: There is no warning on https://appstoreconnect.apple.com/ after logging in. I have generated API keys with Admin, Developer, and Finance authority, but none worked. It does not reach the request rate limit per hour. Other endpoints "GET /v1/apps" for instance, respond with status 200(work properly). I would appreciate any help or advice. Thank you.
2
0
185
3d
Data gaps on App Store Analytics API reports
Hey all, It's been now a few weeks since we started to help clients connect to their App Store Analytics API. I'm starting to notice that very often we'll see things like: Small data gaps. Eg. I have data on June 1, no data on June 2-4, and then data from June 5 to now Big data gaps. Eg. I'd have data on Jan 2024, but not on Feb-Mar 2024, then there's data again from April 2024 onwards. The actual files from Apple are like that we're not doing any treatments whatsoever. That's happening on both ONGOING and ONE_TIME_SNAPSHOT I also opened a Customer Support case and sent the files over 10 days ago, but no definitive answer so far. Are you also seeing gaps like this on your data? Any tips/recommendations?
1
0
124
3d
Error: Product ID already in use
Hi everyone, I created an IAP When I filled a the information in the require database, my internet was broken. When the internet in working normally, I create it again (I didn't save it before I lost my internet) The system reported an error "The Product ID you entered is already being used by another in-app purchase associated with this app." Question: Why can't I reuse a Product ID that I haven't saved before? Please reply to me soon, Thank you so much
1
0
197
4d
Enterprise Developer Device Management API
We currently have an Enterprise Developer account and find it a challenge to manage devices, profiles, and so on in an automated fashion. I am curious to understand if an API interface, similar to App Store Connect API is available - for Enterprise. There is no option in the Enterprise 'Users and Access' tab to manage or create API keys, like there is in a regular Apple Developer Account. An API would greatly simplify much of our processes. We currently use Fastlane Spaceship to manage automated/scripted tasks around this, like adding new devices, adding devices to profiles, and so on. We manage in the order of 70 provisioning profiles, so, it may be appreciated that adding even one device to that many profiles is not something you want do manually via the web interface - you script it - so we use Fastlane. The issue is that Fastlane Spaceship uses a 'workround' that basically emulates a user web session, and so requires re-authentication when user session expires, and also requires re-authentication by 2FA when AppleID session expires each month. This is no good for scripted automation on a server, as user interaction is then required. So, I guess this is a request, or an insight as to whether or not API functionality, via API keys is coming soon to Enterprise, or never coming, or if there is some other mechanism we can use - or do we just stick with fastlane? We have looked at Custom Apps, but don't think that fits our needs, as the apps we build hit internal test systems, which are not publicly accessible, and so not available for App Store review teams, as our understanding is that Custom apps must still pass App Store review and TestFlight review. Thanks.
2
0
220
1w
Screenshot uploads indefinitely processing
I'm submitting a new version of my app, and after click "submit for Review", it shows "Unable to Add for Review: There are still screenshot uploads in progress." However, these screenshots have been in progress for many hours. I tried verified that it was not a problem with the screenshot files, as I deleted and uploaded screenshots that had uploaded and been approved in previous updates. I also verified this behavior is happening across multiple apps. Therefore, I suspect that it is an issue with App Store Connect's server. I have been waiting all day for this to be resolved - hopefully someone can fix this ASAP as it is a blocker to submit any app updates and I have a critical bug fix that needs to be approved.
1
0
145
2w
Ios Sdk 17 Compatibility with react native version
Hi, I would like to know if ios 17 sdk is compatible with react native version 0.64. I am not able to build my app currently.. Error that i got when build Undefined symbols for architecture x86_64: "_GULLogBasic", referenced from: _MLKLog in MLKitCommon[x86_64]7 "OBJC_CLASS$_AppCenterReactNative", referenced from: in AppDelegate.o "OBJC_CLASS$_AppCenterReactNativeAnalytics", referenced from: in AppDelegate.o "OBJC_CLASS$_AppCenterReactNativeCrashes", referenced from: in AppDelegate.o "OBJC_CLASS$_FKUserDefaultsPlugin", referenced from: in AppDelegate.o "OBJC_CLASS$_FlipperClient", referenced from: in AppDelegate.o "OBJC_CLASS$_FlipperKitLayoutPlugin", referenced from: in AppDelegate.o "OBJC_CLASS$_FlipperKitNetworkPlugin", referenced from: in AppDelegate.o "OBJC_CLASS$_FlipperKitReactPlugin", referenced from: in AppDelegate.o "OBJC_CLASS$_GDTCORTransport", referenced from: in MLKitCommon[x86_64]6 "OBJC_CLASS$_GTMLogMininumLevelFilter", referenced from: in MLKitCommon[x86_64]200 "OBJC_CLASS$_GTMLogger", referenced from: in MLKitCommon[x86_64]26 OBJC_CLASS$_MLKITx_GIPLoggingReroutingGTMLogger in MLKitCommon[x86_64]200 "OBJC_CLASS$_GTMSessionCookieStorage", referenced from: in MLKitCommon[x86_64]26 "OBJC_CLASS$_GTMSessionFetcher", referenced from: in MLKitCommon[x86_64]26 "OBJC_CLASS$_GTMSessionFetcherService", referenced from: in MLKitCommon[x86_64]18 "OBJC_CLASS$_GULCCComponent", referenced from: in MLKitCommon[x86_64]11 "OBJC_CLASS$_GULCCComponentContainer", referenced from: in MLKitCommon[x86_64]3 "OBJC_CLASS$_GULCCComponentType", referenced from: in MLKitCommon[x86_64]3 "OBJC_CLASS$_GULUserDefaults", referenced from: in MLKitCommon[x86_64]2 "OBJC_CLASS$_RCTBundleURLProvider", referenced from: in AppDelegate.o "OBJC_CLASS$_RCTLinkingManager", referenced from: in AppDelegate.o "OBJC_CLASS$_ReactNativeNavigation", referenced from: in AppDelegate.o "OBJC_CLASS$_SKDescriptorMapper", referenced from: in AppDelegate.o "OBJC_CLASS$_SKIOSNetworkAdapter", referenced from: in AppDelegate.o "OBJC_METACLASS$_GTMLogger", referenced from: OBJC_METACLASS$_MLKITx_GIPLoggingReroutingGTMLogger in MLKitCommon[x86_64]200 "_kGTMSessionFetcherStatusDomain", referenced from: ___69-[MLKModelDownloader beginModelDownloadWithURL:modelInfo:conditions:]_block_invoke.285 in MLKitCommon[x86_64]18 ___150-[MLKITx_PHTHeterodyneSyncer batchSyncWithAccounts:syncedScopes:fetchReason:throttlingCache:heterodyneSyncInfo:accountToAuthToken:lastError:callback:]_block_invoke in MLKitCommon[x86_64]48 ___91-[MLKITx_PHTInternalHeterodyneSyncer syncHoldingLockWithSyncedScopes:fetchReason:callback:]_block_invoke in MLKitCommon[x86_64]51 ___63-[MLKITx_GMVCloudVisionClient initWithCloudUri:apiKey:options:]_block_invoke in MLKitVision[x86_64]7 ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) Undefined symbol: _GULLogBasic Undefined symbol: OBJC_CLASS$_AppCenterReactNative Undefined symbol: OBJC_CLASS$_AppCenterReactNativeAnalytics Undefined symbol: OBJC_CLASS$_AppCenterReactNativeCrashes Undefined symbol: OBJC_CLASS$_FKUserDefaultsPlugin Undefined symbol: OBJC_CLASS$_FlipperClient Undefined symbol: OBJC_CLASS$_FlipperKitLayoutPlugin Undefined symbol: OBJC_CLASS$_FlipperKitNetworkPlugin Undefined symbol: OBJC_CLASS$_FlipperKitReactPlugin Undefined symbol: OBJC_CLASS$_GDTCORTransport Undefined symbol: OBJC_CLASS$_GTMLogMininumLevelFilter Undefined symbol: OBJC_CLASS$_GTMLogger Undefined symbol: OBJC_CLASS$_GTMSessionCookieStorage Undefined symbol: OBJC_CLASS$_GTMSessionFetcher Undefined symbol: OBJC_CLASS$_GTMSessionFetcherService Undefined symbol: OBJC_CLASS$_GULCCComponent Undefined symbol: OBJC_CLASS$_GULCCComponentContainer Undefined symbol: OBJC_CLASS$_GULCCComponentType Undefined symbol: OBJC_CLASS$_GULUserDefaults Undefined symbol: OBJC_CLASS$_RCTBundleURLProvider Undefined symbol: OBJC_CLASS$_RCTLinkingManager Undefined symbol: OBJC_CLASS$_ReactNativeNavigation Undefined symbol: OBJC_CLASS$_SKDescriptorMapper Undefined symbol: OBJC_CLASS$_SKIOSNetworkAdapter Undefined symbol: OBJC_METACLASS$_GTMLogger Undefined symbol: _kGTMSessionFetcherStatusDomain Linker command failed with exit code 1 (use -v to see invocation)
1
0
211
3w
Problem with adding bank account to meet the Paid Apps Agreement
Hi, I have a problem with adding a bank account to meet the conditions of the Paid Apps Agreement in App Store Connect. I have tried several times, and each time my account status is "verifying" and then changes back to "pending user info." I don't receive any explanation via email as to why this is happening; I only see these yellow messages that are very vague and don't explain much. I don't know exactly what is wrong and why it is not passing the verification. I have tried adding both a scan of my passport and my ID card, but nothing works. Has anyone had a similar situation? (I'm from Poland)
0
0
178
3w
New iPad 13" screenshots with App Store Connect API
The App Store Connect API documentation still doesn't list the new 13" iPad display type: https://developer.apple.com/documentation/appstoreconnectapi/screenshotdisplaytype When adding screenshots to 13" iPads on the website, they still seem to use the display type APP_IPAD_PRO_3GEN_129 when listed by the API, and uploading to that same type uploads them to the 13" display type instead, but then there is the requirement that one still has to upload screenshots for 12.9" display type, without an apparent way of doing so. I would expect to have an option to upload to 13" display type that is also used for 12.9" display type. Do we have to wait for Apple to update the documentation or does someone know a workaround?
0
0
262
3w
Can't create new version
When I try to create 1.1 (which is a new version), I get the following message: Additionally, if I try to create another version, let's say 1.1.1 or 2.0, I just get same error. When inspecting the call, this is the result: { "errors" : [ { "id" : "48d65ae9-b7d5-44cb-85a6-b7295202f13b", "status" : "409", "code" : "ENTITY_ERROR.RELATIONSHIP.INVALID", "title" : "The provided entity includes a relationship with an invalid value", "detail" : "You cannot create a new version of the App in the current state.", "source" : { "pointer" : "/data/relationships/app" } } ]
0
0
171
May ’24
InAppPurchase create problem
Hello, I try to create a product in app purchase with the API calls. I meet a problem during this creation for some products, see the error message : Erreur lors de l'appel d'API Apple : { "errors" : [ { "id" : "89876075-5f2a-44ea-a910-fcbcf95ea641", "status" : "409", "code" : "ENTITY_ERROR.ATTRIBUTE.INVALID.DUPLICATE", "title" : "The provided entity includes an attribute with a value that has already been used", "detail" : "This product ID has already been used", "source" : { "pointer" : "/data/attributes/productId" } } ] } It seems that the productId has already created but when we check in the app we cannot find its. Is it possible that if the productId has already created and deleted after ? And now we cannot created again with the samed productId ? Thank you in advance to help us. Best Regards.
2
0
243
May ’24
Cannot create ios distribution certificate with visual studio
I registered as a developer with Apple. Since I work alone, I have an individual developer account. Unfortunately, I am unable to create an iOS distribution certificate from Visual Studio (for Windows). The option is grayed out even though my role in App Store Connect is "Admin". Visual Studio also shows me that my user is an admin - yet I don't seem to have rights to create iOS distribution certificates. I can create iOS development certificates without any problems.
1
0
252
May ’24
App Store Connect API randomly returns error "An unexpected error occurred on the server side" or "The request timed out"
I use the App Store Connect API to run many parallel requests to update different parts of a single app. I am randomly getting errors such as An unexpected error occurred on the server side. or The request timed out. Usually when these errors happen, I can simply run the unsuccessful requests one or two more times and then they succeed. Is there an explanation for this? Is this possibly caused by too many parallel requests? What is the maximum suggested number of parallel requests?
0
0
244
May ’24
List All Subscriptions for a Subscription Group: "subscriptionAvailability" is not a valid relationship name
I try to fetch subscriptions with included relationships according to the documentation GET https://api.appstoreconnect.apple.com/v1/subscriptionGroups/12345678/subscriptions?include=[ "appStoreReviewScreenshot", "group", "introductoryOffers", "offerCodes", "prices", "promotedPurchase", "promotionalOffers", "subscriptionAvailability" ] The form of include field is taken from the official OpenAPI spec In the response I get a bunch of errors What am I doing wrong? { "errors": [ { "id": "0c02ac40-47c6-4107-b725-930e938a587f", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "'[ \"appStoreReviewScreenshot\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "cf2e214a-cab7-4e63-8971-d8974b0903f6", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"group\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "56d7e72f-cf29-4fac-9456-79074e294567", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"introductoryOffers\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "abdaf783-9a95-4053-a614-bcee7aedab45", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"offerCodes\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "53270b6c-f0f5-4d18-9004-2c99ce9905bd", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"prices\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "9676075f-d2fb-493e-b093-c973e3b103d2", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"promotedPurchase\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "451dd333-1c75-4e22-90e1-40c6532fa465", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"promotionalOffers\"' is not a valid relationship name", "source": { "parameter": "include" } }, { "id": "b0afb70e-ab6a-4aa3-9840-3e94844d3385", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "' \"subscriptionAvailability\" ]' is not a valid relationship name", "source": { "parameter": "include" } } ] }
1
0
216
May ’24