앱 제출 업데이트

Microsoft Store 제출 API에서 이 메서드를 사용하여 기존 앱 제출을 업데이트합니다. 이 메서드를 사용하여 제출을 성공적으로 업데이트한 후에는 수집 및 게시를 위해 제출을 커밋해야 합니다.

이 메서드가 Microsoft Store 제출 API를 사용하여 앱 제출을 만드는 프로세스에 적용되는 방법은 앱 제출 관리를 참조하세요.

필수 조건

이 메서드를 사용하려면 먼저 다음을 수행해야 합니다.

  • 아직 완료하지 않은 경우 Microsoft Store 제출 API에 대한 모든 필수 조건을 완료합니다.
  • 이 메서드에 대한 요청 헤더에 사용할 Azure AD 액세스 토큰을 가져옵니다. 액세스 토큰을 가져온 후 만료되기까지 60분이 걸립니다. 토큰이 만료된 후 새 토큰을 가져올 수 있습니다.
  • 앱 중 하나에 대한 제출을 만듭니다. 이 작업은 파트너 센터에서 수행하거나 앱 제출 만들기 방법을 사용하여 수행할 수 있습니다.

요청

이 메서드의 구문은 다음과 같습니다. 헤더 및 요청 본문에 대한 사용 예시 및 설명은 다음의 섹션을 참조하세요.

메서드 요청 URI
PUT https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}

요청 헤더

헤더 유형 설명
Authorization 문자열 필수. Bearer<토큰> 형식의 Azure AD 액세스 토큰입니다.

요청 매개 변수

이름 형식 설명
applicationId string 필수입니다. 제출을 업데이트하려는 앱의 스토어 ID입니다. Store ID에 대한 자세한 정보는 앱 ID 세부 정보 보기를 참조하세요.
submissionId string 필수입니다. 업데이트할 제출의 ID입니다. 이 ID는 앱 제출 만들기 요청에 대한 응답 데이터에서 사용할 수 있습니다. 파트너 센터에서 만든 제출의 경우 이 ID는 파트너 센터의 제출 페이지 URL에서도 사용할 수 있습니다.

요청 본문

다음 매개 변수가 요청 본문에 있습니다.

Type 설명
applicationCategory string 앱의 범주 및/또는 하위 범주를 지정하는 문자열입니다. 범주 및 하위 범주는 BooksAndReference_EReader 같은 밑줄 '_' 문자가 있는 단일 문자열로 결합됩니다.
가격 책정 개체 앱에 대한 가격 책정 정보가 포함된 개체입니다. 자세한 내용은 가격 책정 리소스 섹션을 참조하세요.
visibility string 앱의 가시성입니다. 이는 다음 값 중 하나일 수 있습니다.
  • 숨겨져 있음
  • 공공 사업
  • 프라이빗
  • NotSet
targetPublishMode string 제출에 대한 게시 모드입니다. 이는 다음 값 중 하나일 수 있습니다.
  • Immediate
  • 수동
  • SpecificDate
targetPublishDate string targetPublishMode가 SpecificDate로 설정된 경우 ISO 8601 형식의 제출에 대한 게시 날짜입니다.
목록 개체 키 및 값 쌍의 사전입니다. 여기서 각 키는 국가 코드이고 각 값은 앱에 대한 목록 정보를 포함하는 목록 리소스 개체입니다.
hardwarePreferences 배열 앱의 하드웨어 기본 설정을 정의하는 문자열 배열입니다. 이는 다음 값 중 하나일 수 있습니다.
  • 터치
  • Keyboard
  • 마우스
  • 카메라
  • NfcHce
  • Nfc
  • BluetoothLE
  • 전화
automaticBackupEnabled 부울 값 Windows에서 OneDrive에 대한 자동 백업에 앱의 데이터를 포함할 수 있는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요.
canInstallOnRemovableMedia 부울 값 고객이 이동식 스토리지에 앱을 설치할 수 있는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요.
isGameDvrEnabled 부울 값 앱에 게임 DVR을 사용할 수 있는지 여부를 나타냅니다.
gamingOptions 개체 앱에 대한 게임 관련 설정을 정의하는 게임 옵션 리소스가 포함된 배열입니다.
hasExternalInAppProducts 부울 값 Microsoft Store 상거래 시스템 밖에서 사용자가 이 앱을 구매할 수 있는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요.
meetAccessibilityGuidelines 부울 값 앱이 접근성 가이드라인을 충족하도록 테스트되었는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요.
notesForCertification string 앱 인증에 대한 메모를 포함합니다.
applicationPackages 배열 제출의 각 패키지에 대한 세부 정보를 제공하는 개체가 포함되어 있습니다. 자세한 내용은 애플리케이션 패키지 섹션을 참조하세요. 이 메서드를 호출하여 앱 제출을 업데이트하는 경우 요청 본문에 이러한 개체의 fileName, fileStatus, minimumDirectXVersionminimumSystemRam 값만 필요합니다. 다른 값은 파트너 센터에서 채워집니다.
packageDeliveryOptions 개체 점진적 패키지 출시 및 제출에 대한 필수 업데이트 설정이 포함됩니다. 자세한 내용은 패키지 제공 옵션 개체를 참조하세요.
enterpriseLicensing string 앱의 엔터프라이즈 라이선스 동작을 나타내는 엔터프라이즈 라이선스 값 중 하나입니다.
allowMicrosftDecideAppAvailabilityToFutureDeviceFamilies 부울 값 Microsoft가 향후 Windows 10 및 Windows 11 디바이스 패밀리에서 앱을 사용할 수 있도록 허용되었는지 여부를 나타냅니다.
allowTargetFutureDeviceFamilies 부울 값 앱이 향후 Windows 10 및 Windows 11 디바이스 패밀리를 대상으로 지정할 수 있는지 여부를 나타냅니다.
예고편 배열 앱 목록에 대한 비디오 예고편을 나타내는 예고편 리소스가 포함된 배열입니다.

요청 예제

다음 예제는 앱 제출을 업데이트하는 방법을 보여 줍니다.

PUT https://manage.devcenter.microsoft.com/v1.0/my/applications/9NBLGGH4R315/submissions/1152921504621230023 HTTP/1.1
Authorization: Bearer <your access token>
Content-Type: application/json
{
  "applicationCategory": "BooksAndReference_EReader",
  "pricing": {
    "trialPeriod": "FifteenDays",
    "marketSpecificPricings": {},
    "sales": [],
    "priceId": "Tier2"
  },
  "visibility": "Public",
  "targetPublishMode": "Manual",
  "targetPublishDate": "1601-01-01T00:00:00Z",
  "listings": {
    "en-us": {
      "baseListing": {
        "copyrightAndTrademarkInfo": "",
        "keywords": [
		      "epub"
		    ],
        "licenseTerms": "",
        "privacyPolicy": "",
        "supportContact": "",
        "websiteUrl": "",
        "description": "Description",
        "features": [
		      "Free ebook reader"
		    ],
        "releaseNotes": "",
        "images": [
          {
            "fileName": "contoso.png",
            "fileStatus": "Uploaded",
            "id": "1152921504672272757",
            "imageType": "Screenshot"
          }
        ],
        "recommendedHardware": [],
        "title": "Contoso ebook reader"
      },
      "platformOverrides": {
        "Windows81": {
          "description": "Ebook reader for Windows 8.1"
        }
      }
    }
  },
  "hardwarePreferences": [
    "Touch"
  ],
  "automaticBackupEnabled": false,
  "canInstallOnRemovableMedia": true,
  "isGameDvrEnabled": false,
  "gamingOptions": [],
  "hasExternalInAppProducts": false,
  "meetAccessibilityGuidelines": true,
  "notesForCertification": "",
  "applicationPackages": [
    {
      "fileName": "contoso_app.appx",
      "fileStatus": "PendingUpload",
      "minimumDirectXVersion": "None",
      "minimumSystemRam": "None"
    }
  ],
  "packageDeliveryOptions": {
    "packageRollout": {
        "isPackageRollout": false,
        "packageRolloutPercentage": 0.0,
        "packageRolloutStatus": "PackageRolloutNotStarted",
        "fallbackSubmissionId": "0"
    },
    "isMandatoryUpdate": false,
    "mandatoryUpdateEffectiveDate": "1601-01-01T00:00:00.0000000Z"
  },
  "enterpriseLicensing": "Online",
  "allowMicrosoftDecideAppAvailabilityToFutureDeviceFamilies": true,
  "allowTargetFutureDeviceFamilies": {
    "Desktop": false,
    "Mobile": true,
    "Holographic": true,
    "Xbox": false,
    "Team": true
  },
  "trailers": []
}

응답

다음 예시는 이 메서드를 성공적으로 호출하기 위한 JSON 응답 본문을 보여 줍니다. 응답 본문에는 업데이트된 제출에 대한 정보가 포함됩니다. 응답 본문의 값에 대한 세부 정보는 앱 제출 리소스를 참조하세요.

{
  "id": "1152921504621243540",
  "applicationCategory": "BooksAndReference_EReader",
  "pricing": {
    "trialPeriod": "FifteenDays",
    "marketSpecificPricings": {},
    "sales": [],
    "priceId": "Tier2"
  },
  "visibility": "Public",
  "targetPublishMode": "Manual",
  "targetPublishDate": "1601-01-01T00:00:00Z",
  "listings": {
    "en-us": {
      "baseListing": {
        "copyrightAndTrademarkInfo": "",
        "keywords": [
           "epub"
        ],
        "licenseTerms": "",
        "privacyPolicy": "",
        "supportContact": "",
        "websiteUrl": "",
        "description": "Description",
        "features": [
          "Free ebook reader"
        ],
        "releaseNotes": "",
        "images": [
          {
            "fileName": "contoso.png",
            "fileStatus": "Uploaded",
            "id": "1152921504672272757",
            "imageType": "Screenshot"
          }
        ],
        "recommendedHardware": [],
        "title": "Contoso ebook reader"
      },
      "platformOverrides": {
        "Windows81": {
          "description": "Ebook reader for Windows 8.1",
        }
      }
    }
  },
  "hardwarePreferences": [
    "Touch"
  ],
  "automaticBackupEnabled": false,
  "canInstallOnRemovableMedia": true,
  "isGameDvrEnabled": false,
  "gamingOptions": [],
  "hasExternalInAppProducts": false,
  "meetAccessibilityGuidelines": true,
  "notesForCertification": "",
  "status": "PendingCommit",
  "statusDetails": {
    "errors": [],
    "warnings": [],
    "certificationReports": []
  },
  "fileUploadUrl": "https://productingestionbin1.blob.core.windows.net/ingestion/387a9ea8-a412-43a9-8fb3-a38d03eb483d?sv=2014-02-14&sr=b&sig=sdd12JmoaT6BhvC%2BZUrwRweA%2Fkvj%2BEBCY09C2SZZowg%3D&se=2016-06-17T18:32:26Z&sp=rwl",
  "applicationPackages": [
    {
      "fileName": "contoso_app.appx",
      "fileStatus": "PendingUpload",
      "id": "1152921504620138797",
      "version": "1.0.0.0",
      "architecture": "ARM",
      "languages": [
        "en-US"
      ],
      "capabilities": [
        "ID_RESOLUTION_HD720P",
        "ID_RESOLUTION_WVGA",
        "ID_RESOLUTION_WXGA"
      ],
      "minimumDirectXVersion": "None",
      "minimumSystemRam": "None",
      "targetDeviceFamilies": [
        "Windows.Mobile min version 10.0.10240.0"
      ]
    }
  ],
  "packageDeliveryOptions": {
    "packageRollout": {
        "isPackageRollout": false,
        "packageRolloutPercentage": 0.0,
        "packageRolloutStatus": "PackageRolloutNotStarted",
        "fallbackSubmissionId": "0"
    },
    "isMandatoryUpdate": false,
    "mandatoryUpdateEffectiveDate": "1601-01-01T00:00:00.0000000Z"
  },
  "enterpriseLicensing": "Online",
  "allowMicrosoftDecideAppAvailabilityToFutureDeviceFamilies": true,
  "allowTargetFutureDeviceFamilies": {
    "Desktop": false,
    "Mobile": true,
    "Holographic": true,
    "Xbox": false,
    "Team": true
  },
  "friendlyName": "Submission 2",
  "trailers": []
}

오류 코드

요청을 성공적으로 완료할 수 없는 경우, 응답은 다음의 HTTP 오류 코드 중 하나를 포함합니다.

오류 코드 Description
400 요청이 잘못되었기 때문에 제출을 업데이트할 수 없습니다.
409 앱의 현재 상태 때문에 제출을 업데이트할 수 없거나 앱이 현재 Microsoft Store 제출 API에서 지원되지 않는 파트너 센터 기능을 사용합니다.