Update an add-on submission

Use this method in the Microsoft Store submission API to update an existing add-on (also known as in-app product or IAP) submission. After you successfully update a submission by using this method, you must commit the submission for ingestion and publishing.

For more information about how this method fits into the process of creating an add-on submission by using the Microsoft Store submission API, see Manage add-on submissions.

Prerequisites

To use this method, you need to first do the following:

  • If you have not done so already, complete all the prerequisites for the Microsoft Store submission API.
  • Obtain an Azure AD access token to use in the request header for this method. After you obtain an access token, you have 60 minutes to use it before it expires. After the token expires, you can obtain a new one.
  • Create an add-on submission for one of your apps. You can do this in Partner Center, or you can do this by using the Create an add-on submission method.

Request

This method has the following syntax. See the following sections for usage examples and descriptions of the header and request body.

Method Request URI
PUT https://manage.devcenter.microsoft.com/v1.0/my/inappproducts/{inAppProductId}/submissions/{submissionId}

Request header

Header Type Description
Authorization string Required. The Azure AD access token in the form Bearer <token>.

Request parameters

Name Type Description
inAppProductId string Required. The Store ID of the add-on for which you want to update a submission. The Store ID is available in Partner Center, and it is included in the response data for requests to Create an add-on or get add-on details.
submissionId string Required. The ID of the submission to update. This ID is available in the response data for requests to create an add-on submission. For a submission that was created in Partner Center, this ID is also available in the URL for the submission page in Partner Center.

Request body

The request body has the following parameters.

Value Type Description
contentType string The type of content that is provided in the add-on. This can be one of the following values:
  • NotSet
  • BookDownload
  • EMagazine
  • ENewspaper
  • MusicDownload
  • MusicStream
  • OnlineDataStorage
  • VideoDownload
  • VideoStream
  • Asp
  • OnlineDownload
keywords array An array of strings that contain up to 10 keywords for the add-on. Your app can query for add-ons using these keywords.
lifetime string The lifetime of the add-on. This can be one of the following values:
  • Forever
  • OneDay
  • ThreeDays
  • FiveDays
  • OneWeek
  • TwoWeeks
  • OneMonth
  • TwoMonths
  • ThreeMonths
  • SixMonths
  • OneYear
listings object An object that contains listing info for the add-on. For more information, see Listing resource.
pricing object An object that contains pricing info for the add-on. For more information, see Pricing resource.
targetPublishMode string The publish mode for the submission. This can be one of the following values:
  • Immediate
  • Manual
  • SpecificDate
targetPublishDate string The publish date for the submission in ISO 8601 format, if the targetPublishMode is set to SpecificDate.
tag string The custom developer data for the add-on (this information was previously called the tag).
visibility string The visibility of the add-on. This can be one of the following values:
  • Hidden
  • Public
  • Private
  • NotSet

Request example

The following example demonstrates how to update an add-on submission.

PUT https://manage.devcenter.microsoft.com/v1.0/my/inappproducts/9NBLGGH4TNMP/submissions/1152921504621230023 HTTP/1.1
Authorization: Bearer <your access token>
Content-Type: application/json
{
  "contentType": "EMagazine",
  "keywords": [
    "books"
  ],
  "lifetime": "FiveDays",
  "listings": {
    "en": {
      "description": "English add-on description",
      "icon": {
        "fileName": "add-on-en-us-listing2.png",
        "fileStatus": "Uploaded"
      },
      "title": "Add-on Title (English)"
    },
    "ru": {
      "description": "Russian add-on description",
      "icon": {
        "fileName": "add-on-ru-listing.png",
        "fileStatus": "Uploaded"
      },
      "title": "Add-on Title (Russian)"
    }
  },
  "pricing": {
    "marketSpecificPricings": {
      "RU": "Tier3",
      "US": "Tier4",
    },
    "sales": [],
    "priceId": "Free"
  },
  "targetPublishDate": "2016-03-15T05:10:58.047Z",
  "targetPublishMode": "Immediate",
  "tag": "SampleTag",
  "visibility": "Public",
}

Response

The following example demonstrates the JSON response body for a successful call to this method. The response body contains information about the updated submission. For more details about the values in the response body, see Add-on submission resource.

{
  "id": "1152921504621243680",
  "contentType": "EMagazine",
  "keywords": [
    "books"
  ],
  "lifetime": "FiveDays",
  "listings": {
    "en": {
      "description": "English add-on description",
      "icon": {
        "fileName": "add-on-en-us-listing2.png",
        "fileStatus": "Uploaded"
      },
      "title": "Add-on Title (English)"
    },
    "ru": {
      "description": "Russian add-on description",
      "icon": {
        "fileName": "add-on-ru-listing.png",
        "fileStatus": "Uploaded"
      },
      "title": "Add-on Title (Russian)"
    }
  },
  "pricing": {
    "marketSpecificPricings": {
      "RU": "Tier3",
      "US": "Tier4",
    },
    "sales": [],
    "priceId": "Free"
  },
  "targetPublishDate": "2016-03-15T05:10:58.047Z",
  "targetPublishMode": "Immediate",
  "tag": "SampleTag",
  "visibility": "Public",
  "status": "PendingCommit",
  "statusDetails": {
    "errors": [
      {
        "code": "None",
        "details": "string"
      }
    ],
    "warnings": [
      {
        "code": "ListingOptOutWarning",
        "details": "You have removed listing language(s): []"
      }
    ],
    "certificationReports": [
      {
      }
    ]
  },
  "fileUploadUrl": "https://productingestionbin1.blob.core.windows.net/ingestion/26920f66-b592-4439-9a9d-fb0f014902ec?sv=2014-02-14&sr=b&sig=usAN0kNFNnYE2tGQBI%2BARQWejX1Guiz7hdFtRhyK%2Bog%3D&se=2016-06-17T20:45:51Z&sp=rwl",
  "friendlyName": "Submission 2"
}

Error codes

If the request cannot be successfully completed, the response will contain one of the following HTTP error codes.

Error code Description
400 The submission could not be updated because the request is invalid.
409 The submission could not be updated because of the current state of the add-on, or the add-on uses a Partner Center feature that is currently not supported by the Microsoft Store submission API.