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.

App Store Connect API Documentation

Posts under App Store Connect API tag

212 Posts
Sort by:
Post not yet marked as solved
0 Replies
251 Views
Recently Apple has deprecated subscriptions property availableInAllTerritories from the resource 'subscriptions'" Post this, You are not able to update prices to the subscription. As availableInAllTerritories is not set for new subscription. So you have to enable availableInAllTerritories manually to change the prices. So the steps listed in https://developer.apple.com/documentation/appstoreconnectapi/app_store/auto-renewable_subscriptions/managing_auto-renewable_subscriptions will not work out of box.
Posted
by
Post not yet marked as solved
0 Replies
428 Views
I intend to use Apple Store Connect API for making & updating OFFER CODES in my subscription. I have created the GET requests needed using an API Key I have generated but the POST requests are not going through and getting an error in the process. https://api.appstoreconnect.apple.com/v1/subscriptionOfferCodes This is the API that I am trying to hit using the POST request but the process is not going through for some reason.
Posted
by
Post not yet marked as solved
0 Replies
274 Views
Hi I have an api which was downloading the apple sales report by using Apple Connect Api in short it used to generate the jwt and then was fetching the report. Some how it stopped working and same code now returns 401. Question is the details which I use to generate the jwt for each request do I need to refresh / renew that ? Is there an expiry date associated with that which I use to generate the jwt or not ? Say you use the private key to create the jwt or ECParameters parameters to generate the key which is used to create the jwt do we need to renew that private key / ECP details or that remains alive / active until it is revoked ? If that is the case how I can refresh that ? I know that the jwt which we need to send to apple connect to get the sale report has maximum 20 mins life. Thanks Khurram
Posted
by
Post not yet marked as solved
12 Replies
1.1k Views
Hey, I've been utilizing the v1/salesReports endpoint to retrieve a daily summary sales report. Below is an example of the query I use: Example query https://api.appstoreconnect.apple.com/v1/salesReports?filter[vendorNumber]=***&filter[reportType]=SALES&filter[reportSubType]=SUMMARY&filter[frequency]=DAILY&filter[reportDate]=2024-01-20&filter[version]=1_0 Starting today (23.01.24) I encountered an error stating: : The version parameter you have specified is invalid. The latest version for this report is 1_1. This is confusing because according to the documentation, the SALES report should use version 1_0. I attempted to use version 1_1, but it resulted in a 404 error with the message: There were no sales for the date specified. Interestingly, when I change the frequency to WEEKLY, the request with version 1_0 is processed successfully and contains data. Is this discrepancy a known issue, or has there been a recent change in the API that I might have missed?
Posted
by
Post not yet marked as solved
0 Replies
289 Views
I'm using the App Store Connect API to fetch sales and trends reports. Fetching the "SUBSCRIPTION" report works well and it does include recent offer code redemptions. The dashboard in App Store Connect also confirms that there was a recent offer code redemption. However, when requesting the Offer Code Redemption Report ("SUBSCRIPTION_OFFER_CODE_REDEMPTION") through the App Store Connenct API using the request shown below I always get a "404 Not Found" error with the message "There were no sales for the date specified." (see below) even though the other sources confirm there were sales for the date specified. So, for some reason the Offer Code Redemption Report API does not seem to work. Did anybody make this work? Any idea to fetch the offer code redemption report through the API? API REQUEST: https://api.appstoreconnect.apple.com/v1/salesReports?filter[frequency]=DAILY&filter[reportDate]={DATE}&filter[reportSubType]=SUMMARY&filter[reportType]=SUBSCRIPTION_OFFER_CODE_REDEMPTION&filter[vendorNumber]={VENDOR_NUMBER}&filter[version]=1_0 API RESPONSE: { "errors" : [ { "id" : "586b3f95-3eb8-4249-8df6-06bd8dea001a", "status" : "404", "code" : "NOT_FOUND", "title" : "The request expected results but none were found", "detail" : "There were no sales for the date specified." } ] }
Posted
by
Post not yet marked as solved
1 Replies
432 Views
I just deployed an app in the Appstore. When my app is in the list with other apps, they all show 3 screenshots but mine doesn't. Only when I click on my app it shows the 4 screenshots I uploaded in app store connect. I have a presumption that it is because I entered 6.7" and 5.5" screenshots in app store connect instead of 6.5" and 5.5". The problem is testing it: I have to deploy another version to try it out which is cumbersome. It would be nice to know beforehand whether such an amendment has a chance on success. The app is called Your New Calendar and you find it when you search under "arjen" and scroll down some apps.
Posted
by
Post not yet marked as solved
0 Replies
275 Views
Hello! I am wondering what the best way is to fetch previous introductory offers from the App Store Connect API. I have tried hitting this endpoint: https://developer.apple.com/documentation/appstoreconnectapi/list_all_introductory_offers_for_a_subscription which seemed to only return the current, active introductory offer. I am looking to gather all introductory offers for my subscription products, including the following attributes: Start date End date Customer price Territory Currency Introductory offer mode Number of periods Thank you.
Posted
by
Post not yet marked as solved
0 Replies
283 Views
I want to use Appstore connect's api to upload images using php. But when I finished creating the image and received a response containing the image upload link, I didn't know what to do next. I tried searching but to no avail. Document Respone url: "uploadOperations" : [ { "method" : "PUT", "url" : "https://store-030.blobstore.apple.com/itms6-assets-massilia...", "length" : 11097, "offset" : 0, "requestHeaders" : [ { "name" : "Content-Type", "value" : "image/png" } ] } ], I try code: PHP $url = "https://store-030.blobstore.apple.com/itms6-assets-massilia..." $imageData = file_get_contents($filePath); $responseUpload = $client->put($url, [ 'headers' => [ 'Content-Type' => 'image/png', ], 'body' => $imageData ]); echo $responseUpload->getStatusCode() . PHP_EOL; var_dump($responseUpload->getBody()->getContents()); Response: 200, string(2) "{}". I don't know why it's wrong Hope everybody help please.
Posted
by
Post not yet marked as solved
0 Replies
259 Views
I wrote some scripts in Python to make supporting multiple Localizations much easier, however I run into some weird errors when looping through and updating the App Info for a handful of random languages. Check out this log. These calls are all being made in an identical way, why am I getting 405 METHOD_NOT_ALLOWED on: nl,fr,de,pt,sl,es? ca localization created/updated successfully zh-Hans localization created/updated successfully zh-Hant localization created/updated successfully hr localization created/updated successfully cs localization created/updated successfully da localization created/updated successfully Failed to create/update nl localization: {'errors': [{'status': '405', 'code': 'METHOD_NOT_ALLOWED', 'title': 'The request method is not valid for the resource path.', 'detail': 'The request method used for this request is not valid for the resource path. Please consult the documentation.'}]} fi localization created/updated successfully Failed to create/update fr localization: {'errors': [{'status': '405', 'code': 'METHOD_NOT_ALLOWED', 'title': 'The request method is not valid for the resource path.', 'detail': 'The request method used for this request is not valid for the resource path. Please consult the documentation.'}]} Failed to create/update de localization: {'errors': [{'status': '405', 'code': 'METHOD_NOT_ALLOWED', 'title': 'The request method is not valid for the resource path.', 'detail': 'The request method used for this request is not valid for the resource path. Please consult the documentation.'}]} el localization created/updated successfully he localization created/updated successfully hi localization created/updated successfully hu localization created/updated successfully id localization created/updated successfully it localization created/updated successfully ja localization created/updated successfully ko localization created/updated successfully ms localization created/updated successfully no localization created/updated successfully pl localization created/updated successfully Failed to create/update pt localization: {'errors': [{'status': '405', 'code': 'METHOD_NOT_ALLOWED', 'title': 'The request method is not valid for the resource path.', 'detail': 'The request method used for this request is not valid for the resource path. Please consult the documentation.'}]} pt-PT localization created/updated successfully ro localization created/updated successfully ru localization created/updated successfully sk localization created/updated successfully Failed to create/update sl localization: {'errors': [{'status': '405', 'code': 'METHOD_NOT_ALLOWED', 'title': 'The request method is not valid for the resource path.', 'detail': 'The request method used for this request is not valid for the resource path. Please consult the documentation.'}]} Failed to create/update es localization: {'errors': [{'status': '405', 'code': 'METHOD_NOT_ALLOWED', 'title': 'The request method is not valid for the resource path.', 'detail': 'The request method used for this request is not valid for the resource path. Please consult the documentation.'}]} sv localization created/updated successfully th localization created/updated successfully tr localization created/updated successfully uk localization created/updated successfully vi localization created/updated successfully
Posted
by
Post not yet marked as solved
0 Replies
339 Views
Hi Team, We are receiving below error message while retrieving data form appstore connect API (https://api.appstoreconnect.apple.com) ERROR - { "errors" : [ { "id" : "4TODNPAPCW332EEZC54U4SQZJI", "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" : "/agreements" } } ] }
Posted
by
Post not yet marked as solved
1 Replies
365 Views
Hi Team, WE are receiving the below error message while connecting to https://api.appstoreconnect.apple.com . Any help greatly appreciated ERROR - { "errors" : [ { "id" : "4TODNPAPCW332EEZC54U4SQZJI", "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" : "/agreements" } } ] }
Posted
by
Post not yet marked as solved
1 Replies
447 Views
On one hand: I download the following report from the Apple Store API: https://api.appstoreconnect.apple.com/v1/salesReports with the following filters: "filter[reportType]": "SUBSCRIPTION_EVENT", "filter[reportSubType]": "SUMMARY", "filter[frequency]": "DAILY", "filter[version]": "1_3" On the other hand: I download the report from the website, generated by: "sales and trends", "Event", and filtering by "event Type=Activations. If I sum the Quantity field of the events corresponding to activations (according to this other website), the daily activation counts differ between the API and the web report. The quantity is higher in the web report and lower in the API, averaging a difference of approximately 50%, if not more I confirmed that the events I should count in the API are: 'Start Introductory Offer,' 'Subscribe,' 'Opt-In,' 'Start Offer Code,' according to the website I copied above, but they do not add up to the total activations shown on the website. The same happens with "Reactivations." What could be happening? Thanks for everything
Posted
by
Post not yet marked as solved
2 Replies
962 Views
when calling APPConnectAPI, It says to me that "This request requires an in-effect agreement that has not been signed or has expired." But when I go to https://appstoreconnect.apple.com/agreements/#/, There is no agreements I can agree. {"status": 403, "msg": "", "data": {"errors": [{"id": "6V4Q4XMVTZIH2URMLCQ5BPD4FU", "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": "/agreements"}}]}} API address: https://api.appstoreconnect.apple.com/v1/certificates
Posted
by
Post not yet marked as solved
3 Replies
621 Views
Hello, I am using the Get Transaction History endpoint in our application back end and I've noticed that "price" and "currency" are no longer in the response payload. I did not see this change in the Apple App Store Server API Changelog and was wondering if this is due to a pending change or an error on Apple's server-side? I've added handling into my application to not utilize those items in the payload but it would be nice to have them if they are going to return.
Posted
by
Post not yet marked as solved
0 Replies
252 Views
Hi I am looking through this documentation - https://developer.apple.com/documentation/appstoreconnectapi/create_an_introductory_offer - but where will the intro be applied to what app? There is no info for id or app id - I need an example request
Posted
by