앱 제출 업데이트하기
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} |
요청 헤더
헤더 | 형식 | 설명 |
---|---|---|
권한 부여 | string | 필수. Bearer<토큰> 형식의 Azure AD 액세스 토큰. |
요청 매개 변수
속성 | 형식 | 설명 |
---|---|---|
applicationId | 문자열 | 필수입니다. 제출을 업데이트하려는 앱의 스토어 ID입니다. Store ID에 대한 자세한 정보는 앱 ID 세부 정보 보기를 참조하세요. |
submissionId | 문자열 | 필수입니다. 업데이트할 제출의 ID입니다. 이 ID는 앱 제출 만들기 요청에 대한 응답 데이터에서 사용할 수 있습니다. 파트너 센터에서 만든 제출의 경우, 파트너 센터의 제출 페이지 URL에서도 해당 ID를 사용할 수 있습니다. |
요청 본문
다음 매개 변수가 요청 본문에 있습니다.
값 | 형식 | 설명 |
---|---|---|
applicationCategory | string | 앱의 범주 및/또는 하위 범주를 지정하는 문자열입니다. 범주 및 하위 범주는 BooksAndReference_EReader 같은 밑줄 '_' 문자가 있는 단일 문자열로 결합됩니다. |
가격 책정 | 개체 | 앱에 대한 가격 책정 정보가 포함된 개체입니다. 자세한 내용은 가격 책정 리소스 섹션을 참조하세요. |
visibility | string | 앱의 가시성입니다. 이는 다음 값 중 하나일 수 있습니다.
|
targetPublishMode | string | 제출에 대한 게시 모드입니다. 이는 다음 값 중 하나일 수 있습니다.
|
targetPublishDate | string | targetPublishMode가 SpecificDate로 설정된 경우 ISO 8601 형식의 제출에 대한 게시 날짜입니다. |
목록 | 개체 | 키 및 값 쌍의 사전입니다. 여기서 각 키는 국가 코드이고 각 값은 앱에 대한 목록 정보를 포함하는 목록 리소스 개체입니다. |
hardwarePreferences | 배열 | 앱의 하드웨어 기본 설정을 정의하는 문자열 배열입니다. 이는 다음 값 중 하나일 수 있습니다.
|
automaticBackupEnabled | 부울 값 | Windows에서 OneDrive에 대한 자동 백업에 앱의 데이터를 포함할 수 있는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요. |
canInstallOnRemovableMedia | 부울 값 | 고객이 이동식 스토리지에 앱을 설치할 수 있는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요. |
isGameDvrEnabled | 부울 값 | 앱에 게임 DVR을 사용할 수 있는지 여부를 나타냅니다. |
gamingOptions | 개체 | 앱에 대한 게임 관련 설정을 정의하는 게임 옵션 리소스가 포함된 배열입니다. |
hasExternalInAppProducts | 부울 값 | Microsoft Store 상거래 시스템 밖에서 사용자가 이 앱을 구매할 수 있는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요. |
meetAccessibilityGuidelines | 부울 값 | 앱이 접근성 가이드라인을 충족하도록 테스트되었는지 여부를 나타냅니다. 자세한 내용은 앱 기능 선언을 참조하세요. |
notesForCertification | string | 앱 인증에 대한 메모를 포함합니다. |
applicationPackages | 배열 | 제출의 각 패키지에 대한 세부 정보를 제공하는 개체가 포함되어 있습니다. 자세한 내용은 애플리케이션 패키지 섹션을 참조하세요. 이 메서드를 호출하여 앱 제출을 업데이트하는 경우 요청 본문에 이러한 개체의 fileName, fileStatus, minimumDirectXVersion 및 minimumSystemRam 값만 필요합니다. 다른 값은 파트너 센터에서 채워집니다. |
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": []
}
Response
다음 예시는 이 메서드를 성공적으로 호출하기 위한 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 오류 코드 중 하나를 포함합니다.
오류 코드 | 설명 |
---|---|
400 | 요청이 잘못되었기 때문에 제출을 업데이트할 수 없습니다. |
409 | 앱의 현재 상태 때문에 제출을 업데이트할 수 없거나 앱이 현재 Microsoft Store 제출 API에서 지원되지 않는 파트너 센터 기능을 사용합니다. |