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

76 Posts

Post

Replies

Boosts

Views

Activity

Upload to App Store Connect internal gets stuck almost every time
About 90% of the time I attempt to upload my app build to App Store Connect 'Internal Testing Only', it gets stuck on either "Sending SPI Analysis to App Store Connect" or "Waiting for App Store Connect SPI Analysis Response". The only solution I've seen is to sign in and out of my dev account in Xcode and close the app - and keep repeating this process until it works again. Sometimes it takes one, sometimes it still won't work after doing this 10 times. I learned that I can export the IPA and upload via Transporter which I have been doing recently. But this is an extremely annoying problem that I do not understand why it continues to happen every session, and I have seen barely any other forums anywhere with this same issue. Can anyone help?
0
0
107
21h
App stuck in "In Review" state while in review tab says "Approved"
Hi all, has anyone experienced an issue where App Store Connect shows the app as In Review and doesn't allow you to release it to production, but under General → App Review the review appears to be completed and the status is Approved? (attached screenshots) It's been in this state for more than 3 days already. Has anyone encountered this before or knows how to resolve it? Any advice would be appreciated. I've contacted support already but no response
0
0
114
6d
Analytics Reports API: ONE_TIME_SNAPSHOT stuck with reports but no instances, and deleted snapshot still blocks recreation (409)
Hello, We are trying to back up App Store Connect Analytics data before an app transfer, and we are seeing two different problems with ONE_TIME_SNAPSHOT requests. Apps com.estmob.paprika (App ID: 596642855) com.estmob.ios.sendy.app (App ID: 1489041568) Issue 1: Paprika snapshot exists, but no instances or segments are ever generated Current snapshot request: Request ID: 4a40d802-5cd4-4bb2-ad53-8539f43c9ce2 What we see: GET /v1/analyticsReportRequests/4a40d802-5cd4-4bb2-ad53-8539f43c9ce2 returns 200 The request has a reports relationship GET /v1/analyticsReportRequests/{id}/reports returns 127 analyticsReports However, for all of those reports, GET /v1/analyticsReports/{reportId}/instances returns no instances Therefore there are still no segments and no downloadable raw files As of May 26, 2026, the state is still: reports: 127 reportsWithInstances: 0 instances: 0 segments: 0 Issue 2: Sendy snapshot was deleted, but creating a new snapshot still fails with 409 Previous snapshot request: Request ID: d40503ae-7a75-4d88-a8a6-115456c333cc Current state: GET /v1/analyticsReportRequests/d40503ae-7a75-4d88-a8a6-115456c333cc now returns 404 Listing analyticsReportRequests for the app shows no visible ONE_TIME_SNAPSHOT request Only the ONGOING request is visible However, creating a new ONE_TIME_SNAPSHOT still fails with: 409 STATE_ERROR "You already have such an entity" We also found this forum thread, which seems related: https://developer.apple.com/forums/thread/759773 Questions For Paprika, does this mean the ONE_TIME_SNAPSHOT is still processing, or is it stuck? For Sendy, is this expected behavior due to a cooldown / retention rule after deleting a snapshot request? If Sendy is blocked by backend state, how long should we wait before a new ONE_TIME_SNAPSHOT can be created? Is there anything else we should check to determine whether the Paprika snapshot will eventually produce instances and segments? This is currently blocking our analytics backup for app transfer. If needed, I can provide additional request/response details. Thank you.
0
0
147
1w
It says: "There are still screenshot uploads in progress." when submit a new build
I'm submitting a new version of my app, and after click "submit for Review", it show that: A few more items are needed in order to submit for review The items listed below are required for submission:There are still screenshot uploads in progress. I didn't met this problem before. Is that mean I haven't upload all the screenshot required or it's still uploading the screenshots to App Store Connect's server? Cause before there is a "save" button after you drag images to the screenshots area, now you don't. And I think I have uploaded all the screenshots needed and I waited a day to try submit again, still the same. What should I do?
204
16
89k
1w
Unable to create/renew pass type certificate
See below error. I have created a key to use enterprise API KEYS: keyID = "RQ32N4328Z" issuerID = "69a6de7a-6c6c-47e3-e053-5b8c7c11a4d1" privateP8 = "AuthKey.p8" POST: req, _ := http.NewRequest("POST", "https://api.appstoreconnect.apple.com/v1/certificates", bytes.NewBuffer(jsonData)) req.Header.Set("Authorization", "Bearer "+jwtToken) req.Header.Set("Content-Type", "application/json") Payload: "data": map[string]interface{}{ "type": "certificates", "attributes": attrs, "relationships": map[string]interface{}{ "passTypeId": map[string]interface{}{ "data": map[string]interface{}{ "type": "passTypeIds", "id": passTypeRecordID, }, }, }, }, Error: {"pass_type_identifier":"pass.com.example4.dev","pass_type_record_id":"XQY3D39M6N","pass_type_created_new":true,"display_name":"New Dev Pass 4","error":"apple create cert: apple api error: [map[code:FORBIDDEN_ERROR detail:You are not allowed to perform this operation. Please check with one of your Team Admins, or, if you need further assistance, please contact Apple Developer Program Support. https://developer.apple.com/support id:7feed70a-0aa4-4be6-9ef0-f7948f9466ee status:403 title:This request is forbidden for security reasons]]","timestamp":"2026-04-30T00:05:12.451618866-04:00"}
0
0
69
1w
409 ENTITY_ERROR.RELATIONSHIP.INVALID — Cannot attach build or create version, affecting 2 separate accounts for 1 week
I am unable to submit any app for review. Every attempt to add a build to an App Store version results in a 409 error, both through the App Store Connect website and directly through the App Store Connect REST API. Affected accounts: Account 1: My personal Apple Developer account Account 2: A company-owned Apple Developer account where I have Admin access Both accounts are completely separate — different legal entities, different enrollments — but exhibit the exact same behavior simultaneously. API errors observed When calling PATCH /v1/appStoreVersions/{id}/relationships/build: 409 ENTITY_ERROR.RELATIONSHIP.INVALID "The specified pre-release build could not be added." When calling POST /v1/appStoreVersions to create a new version: 409 ENTITY_ERROR.RELATIONSHIP.INVALID "You cannot create a new version of the App in the current state." What I have verified All builds are processingState: VALID and not expired usesNonExemptEncryption: false is set on all builds No build is already attached to another version Build version string matches the App Store version (1.1.0) App bundle ID matches the build bundle ID Localization, review contact details, and keywords are all filled in Banking info in Agreements, Tax, and Banking was recently updated on both accounts Issue persists on both the website and via the REST API, ruling out a browser/cache issue Question Has anyone seen 409 errors affecting two completely separate developer accounts simultaneously? Could there be a platform-level issue with App Store Connect that is not reflected on the System Status page? I opened a support ticket 1 week ago but I only got a reply today and it's just asking for more details.
9
2
632
2w
Solve statistical noise under "App Store Installations and Deletions" report
Hello all, I'm currently using Apple Connect API to retrieve download info from my app. Namely I'm using App Store Installations and Deletions under the Analytics Reports API, using an ONGOING request with daily granularity. Unfortunately, the data received is not matching the data from apple store connect UI. Recently I found this article, from apple help documentation for Analytics Reports API that states the following: "(..) Some usage reports are not generated if minimum thresholds are not met (...)" and "(...) Additionally, a small amount of statistical noise is added to metrics, preventing the reverse-engineering of individual activity while preserving accuracy at scale." I kindly ask if: What is stated in 1. happens often within the report generated from App Store Installations and Deletions. If yes, do you have any idea of the percentage, so we take that into account when showing our metrics? What is stated in 2. happens often within the report generated from App Store Installations and Deletions. If yes, how to handle the statistical noise? Discard events with the field "count" < 5, for instance? Thank you very much, HH DOCs: https://developer.apple.com/documentation/analytics-reports/app-installs https://developer.apple.com/help/app-store-connect-analytics/overview/analytics-reports-api https://developer.apple.com/documentation/analytics-reports
0
0
90
2w
Functional difference betwwen "Date" and "App Download Date" under "Analytics Reports" API
Hello all, I'm currently using Apple Connect API to retrieve download info from my app. Namely I'm using App Store Installations and Deletions under the Analytics Reports API, using an ONGOING request with daily granularity. Unfortunately, the data received is not matching the data from apple store connect UI. Under the functional doc for the report-generated-fields (https://developer.apple.com/documentation/analytics-reports/app-installs), I see the following descriptions: Field Date: "Date on which the event occurred. For weekly and monthly instances, this column represents the first day of the week and month, respectively." Field App Download Date: "The date on which the app was downloaded onto the device. This field is only populated if the download occurred in the previous 30 days, otherwise it is null." Since I am using daily granularity, could you clarify exactly what is the functional difference between the two fields? Which one should I use to show the metric total downloads per day? Since the field App Download Date becomes null after 30 days, if that is the one to use, how could I gather historical data from a ONE_TIME_SNAPSHOT request? Thank you very much, HH DOCs: https://developer.apple.com/documentation/analytics-reports/app-installs https://developer.apple.com/documentation/analytics-reports
0
0
156
2w
stuck in “Waiting for Review” since February 7
Hello Apple Developer Support, My app has been stuck in “Waiting for Review” since February 7, and I have submitted multiple inquiries without receiving any response. This delay has now become extremely concerning. Missing a planned launch due to an indefinite review timeline is very difficult for independent developers. If there is an issue with the submission, I would appreciate clear communication. If there are review delays, transparency would help us plan accordingly. I respect the review process, but the lack of updates after this amount of time is frustrating. I would sincerely appreciate clarification on the status. I kindly ask for a specific and personalized response regarding my case, as my previous inquiries received only general or automated replies without addressing the actual issue. Thank you.
6
4
384
3w
App Store Connect Analytics API (ONGOING): duplicate instances causing permanent data gaps
We've been pulling daily download reports (First-time downloads + Redownloads) via ONGOING requests and noticed random missing days in our data — in April alone, we were missing the 11th, 14th, 23rd, and 27th. After debugging, here's what's actually happening: Apple sometimes publishes two consecutive ONGOING instances with identical content (same processingDate → same Date in the CSV) The day after a duplicate, the CSV skips a date entirely — that data is simply never published Those missing days are gone forever. There's no way to recover them via API Does this happen to anyone else? Do you know if there is a way to recover missing data?
1
0
300
3w
Cannot Create Certificate Via API
I am no longer able to provision certificates using the App Store Connect API. I believe this stopped working around January 2026. Documentation: https://developer.apple.com/documentation/appstoreconnectapi/post-v1-certificates Request POST https://api.appstoreconnect.apple.com/v1/certificates Authorization: Bearer ........ Content-Type: application/json Accept: application/json { "data":{ "type":"certificates", "attributes":{ "csrContent":"...", "certificateType":"PASS_TYPE_ID" }, "relationships":{ "passTypeId":{ "data":{ "type":"passTypeIds", "id":"..." } } } } } Response { errors: [ { code: 'FORBIDDEN_ERROR', status: '403', id: '3dcd6c8d-8e50-492f-8097-2a8bfd57018e', title: 'This request is forbidden for security reasons', detail: 'You are not allowed to perform this operation. Please check with one of your Team Admins, or, if you need further assistance, please contact Apple Developer Program Support. https://developer.apple.com/support' } ] } I have verified that the key used for this API call has Admin access to my account and that the key is working with other requests to the App Store Connect API. Apple Developer Program Support said that I should post here. Case #102831520012 How do I get additional information around this error?
0
0
96
May ’26
App Store Connect Analytics API (ONGOING): duplicate instances causing permanent data gaps
We've been pulling daily download reports (First-time downloads + Redownloads) via ONGOING requests and noticed random missing days in our data — in April alone, we are missing the 11th, 14th, 23rd, and 27th. After debugging, here's what's actually happening: Apple sometimes publishes two consecutive ONGOING instances with identical content (same processingDate → same Date in the CSV) The day after a duplicate, the CSV skips a date entirely — that data is simply never published Those missing days are gone forever. There's no way to recover them via API Does anyone know if there is a way to fix this and recover lost days?
0
0
212
May ’26
Communication problems with Apple
Hello, About 7-8 months ago, I received an e-mail stating that my apple developer account would be deleted after 30 days, and my account was deleted after 30 days. I tried to contact many times, I got hopeful each time, but the Apple team never gave a full explanation. They always responded saying they would be interested, but it never came to fruition. In fact, I was most excited when I received the following e-mail: Hello Oğuzcan, My name is Joel, and I’m a senior Advisor with Developer Support. Your case has been given to me for further handling, and I’m happy to follow up with you today. I understand that you have initiated a conversation in our developer forums. Please, provide us more information and show us the email that you received, so we will assist your better. Please, reply to the received email for obtaining more information as the appropriate team will be able to assist you better. Please, reply to this email if you have further questions. Have a great day. Best Regards, Joel Developer Support I was very hopeful when I read that he was a Senior Advisor. This e-mail came on July 28, 18:17, today is December 8, 2025. I'm giving up hope now, my account won't be opened again. My members ask why there are no iOS versions of my applications, this is very difficult for me. Does anyone have any recommendations? I filled out forms and created requests many times.
1
0
353
May ’26
is there a tool to check compliance before submitting the App?
We recently ran into an issue where our submission was rejected due to references to an API that we are not using but that was present in the code. Guideline 2.5.1 - Performance - Software Requirements Issue Description The app uses the Clinical Health Records API but the app does not appear to include any primary features that require the Clinical Health Records API. Next Steps To resolve this issue, please remove the Clinical Health Records API from the app, as well as any references to this app’s interactivity with Clinical Health Records from the app or its metadata. And as it turns out, we actually did have references to that API that we had missed and did have to remove them. Usually, I would recommend to just resubmit the new build and see if it gets accepted, then hold it until the powers that be approve it for publication. For this client, though, their QA team forces us into more of a waterfall-ish approach, where we are not allowed to submit production builds ahead of time (i.e. until after all manual testing has concluded, test evidence has been filed and the required documents have been updated and approved). And if after resubmission we find something else that needs to be fixed, we get to restart the process all over again. That's ... slower. We do have a workaround in place where we submit a development build for review and check whether that would get accepted, then retract that version and submit the production build once we are allowed to. But that means more work for Apple (the App has to be reviewed twice) and more risk for us (if the submission team accidentally publishes a development build, the consequences would be severe). Is there a tool that allows us to check for guideline violations without having to submit a build to the App Store Connect? I'm not looking for a "yes, this will get approved" kind of guarantee, just a "well, the review team may find something else to question / reject, but as far as automated checks go, this looks ready for submission".
2
0
508
Apr ’26
Is there a reliable way to check pending agreement status for multiple App Store Connect accounts via API?
Hey everyone, I'm managing CI/CD pipelines for around 45 iOS apps across different Apple Developer accounts. One recurring pain point is blocked pipelines due to unsigned agreements. Things like the Paid Applications Agreement and the Apple Developer Program License Agreement. I built an internal dashboard to flag these before they block a release, but I'm hitting a wall with detection accuracy. Since there's no dedicated endpoint for agreement status, I'm running three probes per account and checking for 403 FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED: GET /v1/agreements GET /v1/bundleIds?filter[identifier]={bundleId}&filter[platform]=IOS GET /v1/certificates?limit=1 Case 1 : Works perfectly. Account has "Apple Developer Program License Agreement has been updated and needs to be reviewed" : All three endpoint return 403 (In this case, the step 1 is enough) # Step 1 /v1/agreements → HTTP 403 ⛔ BLOCKED # Step 2 /v1/bundleIds → HTTP 403 ⛔ BLOCKED # Step 3 /v1/certificates → HTTP 403 ⛔ BLOCKED # [Step 1 body] { "errors": [ { "id": "TXF6QUVS6OY66YVUNINVLKXZFA", "status": "403", "code": "FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED", "title": "A required agreement is missing or has expired.", "detail": "This request requires an in-effect agreement that has not been signed or has expired.", "links": { "see": "/business" } } ] } # [Step 2 body] { "errors": [ { "id": "MTDI5P37UTYQOOVJSMXCWUK42U", "status": "403", "code": "FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED", "title": "A required agreement is missing or has expired.", "detail": "This request requires an in-effect agreement that has not been signed or has expired.", "links": { "see": "/business" } } ] } # [Step 3 body] { "errors": [ { "id": "GI6EN2CMBFJIJJZM547LSW66KY", "status": "403", "code": "FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED", "title": "A required agreement is missing or has expired.", "detail": "This request requires an in-effect agreement that has not been signed or has expired.", "links": { "see": "/business" } } ] } Case 2 : Not detected. Different account, same message in App Store Connect UI. But v1/agreements endpoint return 404 while other 2 steps return 200 # Step 1 /v1/agreements → HTTP 404 ➖ 404 # Step 2 /v1/bundleIds → HTTP 200 ✅ OK # Step 3 /v1/certificates → HTTP 200 ✅ OK # [Step 1 body] { "errors": [ { "id": "37459578-8167-449c-ad22-e0ffa392df2d", "status": "404", "code": "NOT_FOUND", "title": "The specified resource does not exist", "detail": "The path provided does not match a defined resource type." } ] } # [Step 2 body] { "data": [ { "type": "bundleIds", "id": "xxx", "attributes": { "identifier": "xxx" }, "links": { "self": "https://api.appstoreconnect.apple.com/v1/bundleIds/[xxx]" } } ], "links": { "self": "https://api.appstoreconnect.apple.com/v1/bundleIds?fields%5BbundleIds%5D=identifier&filter%5Bplatform%5D=IOS&filter%5Bidentifier%5D=[xxx]&limit=1" }, "meta": { "paging": { "total": 1, "limit": 1 } } } # [Step 3 body] { "data": [ { "type": "certificates", "id": "xxx", "attributes": { "serialNumber": "xxx", "expirationDate": "2026-07-03T04:47:09.000+00:00", "certificateType": "DISTRIBUTION" }, "links": { "self": "https://api.appstoreconnect.apple.com/v1/certificates/[xxx]" } } ], "links": { "self": "https://api.appstoreconnect.apple.com/v1/certificates?fields%5Bcertificates%5D=serialNumber%2CcertificateType%2CexpirationDate&limit=1", "next": "https://api.appstoreconnect.apple.com/v1/certificates?fields%5Bcertificates%5D=serialNumber%2CcertificateType%2CexpirationDate&cursor=[xxx]&limit=1" }, "meta": { "paging": { "total": 4, "limit": 1 } } } Same agreement type, same UI warning, completely different API behaviour. My best guess is Apple enforces the agreement deadline progressively. The 403 gate only kicks in once the deadline is crossed or the account reaches a certain state, while the UI warning shows much earlier. What I'm looking for, Is there a supported API endpoint that reflects pending agreement status regardless of enforcement state? Or is the 403 gate genuinely the only signal available and some pending agreements just won't show up until Apple enforces them? Happy to hear "there's no API for this" if that's the reality. Just want to make sure I'm not missing something before I accept that limitation. Thanks.
1
1
693
Apr ’26
Is there a way to pull Ratings data via API or other method?
We are currently pulling data via the API to look various metrics, including reviews and ratings. However, I noticed the ratings only come in with associated reviews - it doesn't appear there is public access to the API for pulling all historic ratings (without associated reviews). Is this correct? Does anyone know a workaround or way to access the ratings data via API or other method?
2
1
859
Apr ’26
code Cloud export fails: Session Proxy unable to authenticate with App Store Connect (Code=1, response null)
Xcode Cloud builds fail at the export archive step. The critical log shows: Account "Session Proxy Provider": Unable to authenticate with App Store Connect Error Domain=DVTServicesSessionProviderCredentialITunesAuthenticationContextError Code=1 "(null)" And in DVTITunesSoftwareService.log: App Store Connect response failed with unknown failure; response (null); error (null) error: DVTServicesSessionProviderCredentialITunesAuthenticationContextError.proxy Environment: Xcode Cloud, iOS app, team type Individual (S43L28SVX2) What I have ruled out: Regenerated all DISTRIBUTION_MANAGED certificates (per thread 744683) — portal API is reachable, certs issued successfully Removed an obsolete App Groups entitlement that was causing a secondary error — that error is now gone All agreements accepted, no pending legal items Failure persists across multiple builds with identical symptoms The developer portal API responds correctly. The failure is isolated to the App Store Connect store configuration endpoint specifically, where the proxy returns response (null) — no HTTP response at all. This appears identical to thread https://developer.apple.com/forums/thread/810658 where Apple confirmed the root cause was a backend API permission issue for the team requiring an Apple-side fix. Support case 102857550486 was opened but redirected to admin support without technical investigation. Has anyone else hit this recently, or can an Apple engineer look at the backend state for this team?
0
0
377
Apr ’26
App Store connect api key generation.
Hi, I can't generate new key in the App Store connect dashboard. I'm receiving this as error. { "errors" : [ { "id" : "59e466f3-70aa-4798-b183-8a4903a7c2cc", "status" : "403", "code" : "FORBIDDEN_ERROR.PLA_NOT_VALID", "title" : "Operation is forbidden because of PLA status.", "detail" : "" } ] } I'm the account owner and I accepted all the policy agreements in both apple developper dashboard and app connect dashboard. what's goin on?
2
3
978
Apr ’26
TestFlight: “Beta app contract is missing” + 422 TF_BETA_APP_REVIEW_RESPONSE (all apps affected)
Hi folks, I had a similar issue I was able to replicate without fail: Public beta submission fails with: "Beta app contract is missing" POST /iris/v1/betaAppReviewSubmissions returns 422 Error: TF_BETA_APP_REVIEW_RESPONSE Internal TestFlight installs fail with: "The requested app is not available or doesn't exist" Adding apps to beta review also fails I was unable to: Add builds to public testing groups Submit builds for TestFlight review Reliably update TestFlight metadata ("What to Test", etc.) The fix: filed via Feedback Assistant (not Developer Support email). Included a HAR capture of the failing request and response headers, also provided all affected App IDs (even though this was account-wide). Got traction within a couple days after filing, much faster than waiting on Developer Support. Note: In my case this affected every app on the account. From what I’ve seen, this may be triggered by changes to tester groups (adding/removing testers), but this is not confirmed. Seems to be a backend contract/entitlement desync Apple-side. Hope this helps someone.
0
0
132
Apr ’26
Upload to App Store Connect internal gets stuck almost every time
About 90% of the time I attempt to upload my app build to App Store Connect 'Internal Testing Only', it gets stuck on either "Sending SPI Analysis to App Store Connect" or "Waiting for App Store Connect SPI Analysis Response". The only solution I've seen is to sign in and out of my dev account in Xcode and close the app - and keep repeating this process until it works again. Sometimes it takes one, sometimes it still won't work after doing this 10 times. I learned that I can export the IPA and upload via Transporter which I have been doing recently. But this is an extremely annoying problem that I do not understand why it continues to happen every session, and I have seen barely any other forums anywhere with this same issue. Can anyone help?
Replies
0
Boosts
0
Views
107
Activity
21h
App stuck in "In Review" state while in review tab says "Approved"
Hi all, has anyone experienced an issue where App Store Connect shows the app as In Review and doesn't allow you to release it to production, but under General → App Review the review appears to be completed and the status is Approved? (attached screenshots) It's been in this state for more than 3 days already. Has anyone encountered this before or knows how to resolve it? Any advice would be appreciated. I've contacted support already but no response
Replies
0
Boosts
0
Views
114
Activity
6d
Analytics Reports API: ONE_TIME_SNAPSHOT stuck with reports but no instances, and deleted snapshot still blocks recreation (409)
Hello, We are trying to back up App Store Connect Analytics data before an app transfer, and we are seeing two different problems with ONE_TIME_SNAPSHOT requests. Apps com.estmob.paprika (App ID: 596642855) com.estmob.ios.sendy.app (App ID: 1489041568) Issue 1: Paprika snapshot exists, but no instances or segments are ever generated Current snapshot request: Request ID: 4a40d802-5cd4-4bb2-ad53-8539f43c9ce2 What we see: GET /v1/analyticsReportRequests/4a40d802-5cd4-4bb2-ad53-8539f43c9ce2 returns 200 The request has a reports relationship GET /v1/analyticsReportRequests/{id}/reports returns 127 analyticsReports However, for all of those reports, GET /v1/analyticsReports/{reportId}/instances returns no instances Therefore there are still no segments and no downloadable raw files As of May 26, 2026, the state is still: reports: 127 reportsWithInstances: 0 instances: 0 segments: 0 Issue 2: Sendy snapshot was deleted, but creating a new snapshot still fails with 409 Previous snapshot request: Request ID: d40503ae-7a75-4d88-a8a6-115456c333cc Current state: GET /v1/analyticsReportRequests/d40503ae-7a75-4d88-a8a6-115456c333cc now returns 404 Listing analyticsReportRequests for the app shows no visible ONE_TIME_SNAPSHOT request Only the ONGOING request is visible However, creating a new ONE_TIME_SNAPSHOT still fails with: 409 STATE_ERROR "You already have such an entity" We also found this forum thread, which seems related: https://developer.apple.com/forums/thread/759773 Questions For Paprika, does this mean the ONE_TIME_SNAPSHOT is still processing, or is it stuck? For Sendy, is this expected behavior due to a cooldown / retention rule after deleting a snapshot request? If Sendy is blocked by backend state, how long should we wait before a new ONE_TIME_SNAPSHOT can be created? Is there anything else we should check to determine whether the Paprika snapshot will eventually produce instances and segments? This is currently blocking our analytics backup for app transfer. If needed, I can provide additional request/response details. Thank you.
Replies
0
Boosts
0
Views
147
Activity
1w
It says: "There are still screenshot uploads in progress." when submit a new build
I'm submitting a new version of my app, and after click "submit for Review", it show that: A few more items are needed in order to submit for review The items listed below are required for submission:There are still screenshot uploads in progress. I didn't met this problem before. Is that mean I haven't upload all the screenshot required or it's still uploading the screenshots to App Store Connect's server? Cause before there is a "save" button after you drag images to the screenshots area, now you don't. And I think I have uploaded all the screenshots needed and I waited a day to try submit again, still the same. What should I do?
Replies
204
Boosts
16
Views
89k
Activity
1w
Unable to create/renew pass type certificate
See below error. I have created a key to use enterprise API KEYS: keyID = "RQ32N4328Z" issuerID = "69a6de7a-6c6c-47e3-e053-5b8c7c11a4d1" privateP8 = "AuthKey.p8" POST: req, _ := http.NewRequest("POST", "https://api.appstoreconnect.apple.com/v1/certificates", bytes.NewBuffer(jsonData)) req.Header.Set("Authorization", "Bearer "+jwtToken) req.Header.Set("Content-Type", "application/json") Payload: "data": map[string]interface{}{ "type": "certificates", "attributes": attrs, "relationships": map[string]interface{}{ "passTypeId": map[string]interface{}{ "data": map[string]interface{}{ "type": "passTypeIds", "id": passTypeRecordID, }, }, }, }, Error: {"pass_type_identifier":"pass.com.example4.dev","pass_type_record_id":"XQY3D39M6N","pass_type_created_new":true,"display_name":"New Dev Pass 4","error":"apple create cert: apple api error: [map[code:FORBIDDEN_ERROR detail:You are not allowed to perform this operation. Please check with one of your Team Admins, or, if you need further assistance, please contact Apple Developer Program Support. https://developer.apple.com/support id:7feed70a-0aa4-4be6-9ef0-f7948f9466ee status:403 title:This request is forbidden for security reasons]]","timestamp":"2026-04-30T00:05:12.451618866-04:00"}
Replies
0
Boosts
0
Views
69
Activity
1w
409 ENTITY_ERROR.RELATIONSHIP.INVALID — Cannot attach build or create version, affecting 2 separate accounts for 1 week
I am unable to submit any app for review. Every attempt to add a build to an App Store version results in a 409 error, both through the App Store Connect website and directly through the App Store Connect REST API. Affected accounts: Account 1: My personal Apple Developer account Account 2: A company-owned Apple Developer account where I have Admin access Both accounts are completely separate — different legal entities, different enrollments — but exhibit the exact same behavior simultaneously. API errors observed When calling PATCH /v1/appStoreVersions/{id}/relationships/build: 409 ENTITY_ERROR.RELATIONSHIP.INVALID "The specified pre-release build could not be added." When calling POST /v1/appStoreVersions to create a new version: 409 ENTITY_ERROR.RELATIONSHIP.INVALID "You cannot create a new version of the App in the current state." What I have verified All builds are processingState: VALID and not expired usesNonExemptEncryption: false is set on all builds No build is already attached to another version Build version string matches the App Store version (1.1.0) App bundle ID matches the build bundle ID Localization, review contact details, and keywords are all filled in Banking info in Agreements, Tax, and Banking was recently updated on both accounts Issue persists on both the website and via the REST API, ruling out a browser/cache issue Question Has anyone seen 409 errors affecting two completely separate developer accounts simultaneously? Could there be a platform-level issue with App Store Connect that is not reflected on the System Status page? I opened a support ticket 1 week ago but I only got a reply today and it's just asking for more details.
Replies
9
Boosts
2
Views
632
Activity
2w
Solve statistical noise under "App Store Installations and Deletions" report
Hello all, I'm currently using Apple Connect API to retrieve download info from my app. Namely I'm using App Store Installations and Deletions under the Analytics Reports API, using an ONGOING request with daily granularity. Unfortunately, the data received is not matching the data from apple store connect UI. Recently I found this article, from apple help documentation for Analytics Reports API that states the following: "(..) Some usage reports are not generated if minimum thresholds are not met (...)" and "(...) Additionally, a small amount of statistical noise is added to metrics, preventing the reverse-engineering of individual activity while preserving accuracy at scale." I kindly ask if: What is stated in 1. happens often within the report generated from App Store Installations and Deletions. If yes, do you have any idea of the percentage, so we take that into account when showing our metrics? What is stated in 2. happens often within the report generated from App Store Installations and Deletions. If yes, how to handle the statistical noise? Discard events with the field "count" < 5, for instance? Thank you very much, HH DOCs: https://developer.apple.com/documentation/analytics-reports/app-installs https://developer.apple.com/help/app-store-connect-analytics/overview/analytics-reports-api https://developer.apple.com/documentation/analytics-reports
Replies
0
Boosts
0
Views
90
Activity
2w
Functional difference betwwen "Date" and "App Download Date" under "Analytics Reports" API
Hello all, I'm currently using Apple Connect API to retrieve download info from my app. Namely I'm using App Store Installations and Deletions under the Analytics Reports API, using an ONGOING request with daily granularity. Unfortunately, the data received is not matching the data from apple store connect UI. Under the functional doc for the report-generated-fields (https://developer.apple.com/documentation/analytics-reports/app-installs), I see the following descriptions: Field Date: "Date on which the event occurred. For weekly and monthly instances, this column represents the first day of the week and month, respectively." Field App Download Date: "The date on which the app was downloaded onto the device. This field is only populated if the download occurred in the previous 30 days, otherwise it is null." Since I am using daily granularity, could you clarify exactly what is the functional difference between the two fields? Which one should I use to show the metric total downloads per day? Since the field App Download Date becomes null after 30 days, if that is the one to use, how could I gather historical data from a ONE_TIME_SNAPSHOT request? Thank you very much, HH DOCs: https://developer.apple.com/documentation/analytics-reports/app-installs https://developer.apple.com/documentation/analytics-reports
Replies
0
Boosts
0
Views
156
Activity
2w
stuck in “Waiting for Review” since February 7
Hello Apple Developer Support, My app has been stuck in “Waiting for Review” since February 7, and I have submitted multiple inquiries without receiving any response. This delay has now become extremely concerning. Missing a planned launch due to an indefinite review timeline is very difficult for independent developers. If there is an issue with the submission, I would appreciate clear communication. If there are review delays, transparency would help us plan accordingly. I respect the review process, but the lack of updates after this amount of time is frustrating. I would sincerely appreciate clarification on the status. I kindly ask for a specific and personalized response regarding my case, as my previous inquiries received only general or automated replies without addressing the actual issue. Thank you.
Replies
6
Boosts
4
Views
384
Activity
3w
App Store Connect Analytics API (ONGOING): duplicate instances causing permanent data gaps
We've been pulling daily download reports (First-time downloads + Redownloads) via ONGOING requests and noticed random missing days in our data — in April alone, we were missing the 11th, 14th, 23rd, and 27th. After debugging, here's what's actually happening: Apple sometimes publishes two consecutive ONGOING instances with identical content (same processingDate → same Date in the CSV) The day after a duplicate, the CSV skips a date entirely — that data is simply never published Those missing days are gone forever. There's no way to recover them via API Does this happen to anyone else? Do you know if there is a way to recover missing data?
Replies
1
Boosts
0
Views
300
Activity
3w
Cannot Create Certificate Via API
I am no longer able to provision certificates using the App Store Connect API. I believe this stopped working around January 2026. Documentation: https://developer.apple.com/documentation/appstoreconnectapi/post-v1-certificates Request POST https://api.appstoreconnect.apple.com/v1/certificates Authorization: Bearer ........ Content-Type: application/json Accept: application/json { "data":{ "type":"certificates", "attributes":{ "csrContent":"...", "certificateType":"PASS_TYPE_ID" }, "relationships":{ "passTypeId":{ "data":{ "type":"passTypeIds", "id":"..." } } } } } Response { errors: [ { code: 'FORBIDDEN_ERROR', status: '403', id: '3dcd6c8d-8e50-492f-8097-2a8bfd57018e', title: 'This request is forbidden for security reasons', detail: 'You are not allowed to perform this operation. Please check with one of your Team Admins, or, if you need further assistance, please contact Apple Developer Program Support. https://developer.apple.com/support' } ] } I have verified that the key used for this API call has Admin access to my account and that the key is working with other requests to the App Store Connect API. Apple Developer Program Support said that I should post here. Case #102831520012 How do I get additional information around this error?
Replies
0
Boosts
0
Views
96
Activity
May ’26
App Store Connect Analytics API (ONGOING): duplicate instances causing permanent data gaps
We've been pulling daily download reports (First-time downloads + Redownloads) via ONGOING requests and noticed random missing days in our data — in April alone, we are missing the 11th, 14th, 23rd, and 27th. After debugging, here's what's actually happening: Apple sometimes publishes two consecutive ONGOING instances with identical content (same processingDate → same Date in the CSV) The day after a duplicate, the CSV skips a date entirely — that data is simply never published Those missing days are gone forever. There's no way to recover them via API Does anyone know if there is a way to fix this and recover lost days?
Replies
0
Boosts
0
Views
212
Activity
May ’26
Communication problems with Apple
Hello, About 7-8 months ago, I received an e-mail stating that my apple developer account would be deleted after 30 days, and my account was deleted after 30 days. I tried to contact many times, I got hopeful each time, but the Apple team never gave a full explanation. They always responded saying they would be interested, but it never came to fruition. In fact, I was most excited when I received the following e-mail: Hello Oğuzcan, My name is Joel, and I’m a senior Advisor with Developer Support. Your case has been given to me for further handling, and I’m happy to follow up with you today. I understand that you have initiated a conversation in our developer forums. Please, provide us more information and show us the email that you received, so we will assist your better. Please, reply to the received email for obtaining more information as the appropriate team will be able to assist you better. Please, reply to this email if you have further questions. Have a great day. Best Regards, Joel Developer Support I was very hopeful when I read that he was a Senior Advisor. This e-mail came on July 28, 18:17, today is December 8, 2025. I'm giving up hope now, my account won't be opened again. My members ask why there are no iOS versions of my applications, this is very difficult for me. Does anyone have any recommendations? I filled out forms and created requests many times.
Replies
1
Boosts
0
Views
353
Activity
May ’26
View opt-in rate via API
Is there a way to view the opt-in rate via the API? I have been unsuccessful in finding one.
Replies
1
Boosts
0
Views
704
Activity
Apr ’26
is there a tool to check compliance before submitting the App?
We recently ran into an issue where our submission was rejected due to references to an API that we are not using but that was present in the code. Guideline 2.5.1 - Performance - Software Requirements Issue Description The app uses the Clinical Health Records API but the app does not appear to include any primary features that require the Clinical Health Records API. Next Steps To resolve this issue, please remove the Clinical Health Records API from the app, as well as any references to this app’s interactivity with Clinical Health Records from the app or its metadata. And as it turns out, we actually did have references to that API that we had missed and did have to remove them. Usually, I would recommend to just resubmit the new build and see if it gets accepted, then hold it until the powers that be approve it for publication. For this client, though, their QA team forces us into more of a waterfall-ish approach, where we are not allowed to submit production builds ahead of time (i.e. until after all manual testing has concluded, test evidence has been filed and the required documents have been updated and approved). And if after resubmission we find something else that needs to be fixed, we get to restart the process all over again. That's ... slower. We do have a workaround in place where we submit a development build for review and check whether that would get accepted, then retract that version and submit the production build once we are allowed to. But that means more work for Apple (the App has to be reviewed twice) and more risk for us (if the submission team accidentally publishes a development build, the consequences would be severe). Is there a tool that allows us to check for guideline violations without having to submit a build to the App Store Connect? I'm not looking for a "yes, this will get approved" kind of guarantee, just a "well, the review team may find something else to question / reject, but as far as automated checks go, this looks ready for submission".
Replies
2
Boosts
0
Views
508
Activity
Apr ’26
Is there a reliable way to check pending agreement status for multiple App Store Connect accounts via API?
Hey everyone, I'm managing CI/CD pipelines for around 45 iOS apps across different Apple Developer accounts. One recurring pain point is blocked pipelines due to unsigned agreements. Things like the Paid Applications Agreement and the Apple Developer Program License Agreement. I built an internal dashboard to flag these before they block a release, but I'm hitting a wall with detection accuracy. Since there's no dedicated endpoint for agreement status, I'm running three probes per account and checking for 403 FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED: GET /v1/agreements GET /v1/bundleIds?filter[identifier]={bundleId}&filter[platform]=IOS GET /v1/certificates?limit=1 Case 1 : Works perfectly. Account has "Apple Developer Program License Agreement has been updated and needs to be reviewed" : All three endpoint return 403 (In this case, the step 1 is enough) # Step 1 /v1/agreements → HTTP 403 ⛔ BLOCKED # Step 2 /v1/bundleIds → HTTP 403 ⛔ BLOCKED # Step 3 /v1/certificates → HTTP 403 ⛔ BLOCKED # [Step 1 body] { "errors": [ { "id": "TXF6QUVS6OY66YVUNINVLKXZFA", "status": "403", "code": "FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED", "title": "A required agreement is missing or has expired.", "detail": "This request requires an in-effect agreement that has not been signed or has expired.", "links": { "see": "/business" } } ] } # [Step 2 body] { "errors": [ { "id": "MTDI5P37UTYQOOVJSMXCWUK42U", "status": "403", "code": "FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED", "title": "A required agreement is missing or has expired.", "detail": "This request requires an in-effect agreement that has not been signed or has expired.", "links": { "see": "/business" } } ] } # [Step 3 body] { "errors": [ { "id": "GI6EN2CMBFJIJJZM547LSW66KY", "status": "403", "code": "FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED", "title": "A required agreement is missing or has expired.", "detail": "This request requires an in-effect agreement that has not been signed or has expired.", "links": { "see": "/business" } } ] } Case 2 : Not detected. Different account, same message in App Store Connect UI. But v1/agreements endpoint return 404 while other 2 steps return 200 # Step 1 /v1/agreements → HTTP 404 ➖ 404 # Step 2 /v1/bundleIds → HTTP 200 ✅ OK # Step 3 /v1/certificates → HTTP 200 ✅ OK # [Step 1 body] { "errors": [ { "id": "37459578-8167-449c-ad22-e0ffa392df2d", "status": "404", "code": "NOT_FOUND", "title": "The specified resource does not exist", "detail": "The path provided does not match a defined resource type." } ] } # [Step 2 body] { "data": [ { "type": "bundleIds", "id": "xxx", "attributes": { "identifier": "xxx" }, "links": { "self": "https://api.appstoreconnect.apple.com/v1/bundleIds/[xxx]" } } ], "links": { "self": "https://api.appstoreconnect.apple.com/v1/bundleIds?fields%5BbundleIds%5D=identifier&filter%5Bplatform%5D=IOS&filter%5Bidentifier%5D=[xxx]&limit=1" }, "meta": { "paging": { "total": 1, "limit": 1 } } } # [Step 3 body] { "data": [ { "type": "certificates", "id": "xxx", "attributes": { "serialNumber": "xxx", "expirationDate": "2026-07-03T04:47:09.000+00:00", "certificateType": "DISTRIBUTION" }, "links": { "self": "https://api.appstoreconnect.apple.com/v1/certificates/[xxx]" } } ], "links": { "self": "https://api.appstoreconnect.apple.com/v1/certificates?fields%5Bcertificates%5D=serialNumber%2CcertificateType%2CexpirationDate&limit=1", "next": "https://api.appstoreconnect.apple.com/v1/certificates?fields%5Bcertificates%5D=serialNumber%2CcertificateType%2CexpirationDate&cursor=[xxx]&limit=1" }, "meta": { "paging": { "total": 4, "limit": 1 } } } Same agreement type, same UI warning, completely different API behaviour. My best guess is Apple enforces the agreement deadline progressively. The 403 gate only kicks in once the deadline is crossed or the account reaches a certain state, while the UI warning shows much earlier. What I'm looking for, Is there a supported API endpoint that reflects pending agreement status regardless of enforcement state? Or is the 403 gate genuinely the only signal available and some pending agreements just won't show up until Apple enforces them? Happy to hear "there's no API for this" if that's the reality. Just want to make sure I'm not missing something before I accept that limitation. Thanks.
Replies
1
Boosts
1
Views
693
Activity
Apr ’26
Is there a way to pull Ratings data via API or other method?
We are currently pulling data via the API to look various metrics, including reviews and ratings. However, I noticed the ratings only come in with associated reviews - it doesn't appear there is public access to the API for pulling all historic ratings (without associated reviews). Is this correct? Does anyone know a workaround or way to access the ratings data via API or other method?
Replies
2
Boosts
1
Views
859
Activity
Apr ’26
code Cloud export fails: Session Proxy unable to authenticate with App Store Connect (Code=1, response null)
Xcode Cloud builds fail at the export archive step. The critical log shows: Account "Session Proxy Provider": Unable to authenticate with App Store Connect Error Domain=DVTServicesSessionProviderCredentialITunesAuthenticationContextError Code=1 "(null)" And in DVTITunesSoftwareService.log: App Store Connect response failed with unknown failure; response (null); error (null) error: DVTServicesSessionProviderCredentialITunesAuthenticationContextError.proxy Environment: Xcode Cloud, iOS app, team type Individual (S43L28SVX2) What I have ruled out: Regenerated all DISTRIBUTION_MANAGED certificates (per thread 744683) — portal API is reachable, certs issued successfully Removed an obsolete App Groups entitlement that was causing a secondary error — that error is now gone All agreements accepted, no pending legal items Failure persists across multiple builds with identical symptoms The developer portal API responds correctly. The failure is isolated to the App Store Connect store configuration endpoint specifically, where the proxy returns response (null) — no HTTP response at all. This appears identical to thread https://developer.apple.com/forums/thread/810658 where Apple confirmed the root cause was a backend API permission issue for the team requiring an Apple-side fix. Support case 102857550486 was opened but redirected to admin support without technical investigation. Has anyone else hit this recently, or can an Apple engineer look at the backend state for this team?
Replies
0
Boosts
0
Views
377
Activity
Apr ’26
App Store connect api key generation.
Hi, I can't generate new key in the App Store connect dashboard. I'm receiving this as error. { "errors" : [ { "id" : "59e466f3-70aa-4798-b183-8a4903a7c2cc", "status" : "403", "code" : "FORBIDDEN_ERROR.PLA_NOT_VALID", "title" : "Operation is forbidden because of PLA status.", "detail" : "" } ] } I'm the account owner and I accepted all the policy agreements in both apple developper dashboard and app connect dashboard. what's goin on?
Replies
2
Boosts
3
Views
978
Activity
Apr ’26
TestFlight: “Beta app contract is missing” + 422 TF_BETA_APP_REVIEW_RESPONSE (all apps affected)
Hi folks, I had a similar issue I was able to replicate without fail: Public beta submission fails with: "Beta app contract is missing" POST /iris/v1/betaAppReviewSubmissions returns 422 Error: TF_BETA_APP_REVIEW_RESPONSE Internal TestFlight installs fail with: "The requested app is not available or doesn't exist" Adding apps to beta review also fails I was unable to: Add builds to public testing groups Submit builds for TestFlight review Reliably update TestFlight metadata ("What to Test", etc.) The fix: filed via Feedback Assistant (not Developer Support email). Included a HAR capture of the failing request and response headers, also provided all affected App IDs (even though this was account-wide). Got traction within a couple days after filing, much faster than waiting on Developer Support. Note: In my case this affected every app on the account. From what I’ve seen, this may be triggered by changes to tester groups (adding/removing testers), but this is not confirmed. Seems to be a backend contract/entitlement desync Apple-side. Hope this helps someone.
Replies
0
Boosts
0
Views
132
Activity
Apr ’26