패키지 플라이트 제출 업데이트

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

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

필수 조건

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

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

요청

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

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

요청 헤더

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

요청 매개 변수

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

요청 본문

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

Type 설명
flightPackages 배열 제출의 각 패키지에 대한 세부 정보를 제공하는 개체가 포함되어 있습니다. 응답 본문의 값에 대한 자세한 정보는 플라이트 패키지 리소스를 참조하세요. 이 메서드를 호출하여 앱 제출을 업데이트하는 경우 요청 본문에 이러한 개체의 fileName, fileStatus, minimumDirectXVersionminimumSystemRam 값만 필요합니다. 다른 값은 파트너 센터에서 채워집니다.
packageDeliveryOptions 개체 점진적 패키지 출시 및 제출에 대한 필수 업데이트 설정이 포함됩니다. 자세한 내용은 패키지 제공 옵션 개체를 참조하세요.
targetPublishMode string 제출에 대한 게시 모드입니다. 이는 다음 값 중 하나일 수 있습니다.
  • Immediate
  • 수동
  • SpecificDate
targetPublishDate string targetPublishMode가 SpecificDate로 설정된 경우 ISO 8601 형식의 제출에 대한 게시 날짜입니다.
notesForCertification string 테스트 계정 자격 증명 및 기능에 액세스하고 확인하는 단계와 같은 인증 테스터에 대한 추가 정보를 제공합니다. 자세한 내용은 인증 참고 사항을 참조하세요.

요청 예제

다음 예제에서는 앱에 대한 패키지 플라이트 제출을 업데이트하는 방법을 보여줍니다.

PUT https://manage.devcenter.microsoft.com/v1.0/my/applications/9NBLGGH4R315/flights/43e448df-97c9-4a43-a0bc-2a445e736bcd/submissions/1152921504621243649 HTTP/1.1
Authorization: Bearer <your access token>
Content-Type: application/json
{
  "flightPackages": [
    {
      "fileName": "newPackage.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"
  },
  "targetPublishMode": "Immediate",
  "targetPublishDate": "",
  "notesForCertification": "No special steps are required for certification of this app."
}

응답

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

{
  "id": "1152921504621243649",
  "flightId": "cd2e368a-0da5-4026-9f34-0e7934bc6f23",
  "status": "PendingCommit",
  "statusDetails": {
    "errors": [],
    "warnings": [],
    "certificationReports": []
  },
  "flightPackages": [
    {
      "fileName": "newPackage.appx",
      "fileStatus": "PendingUpload",
      "id": "",
      "version": "1.0.0.0",
      "languages": ["en-us"],
      "capabilities": [],
      "minimumDirectXVersion": "None",
      "minimumSystemRam": "None"
    }
  ],
  "packageDeliveryOptions": {
    "packageRollout": {
        "isPackageRollout": false,
        "packageRolloutPercentage": 0.0,
        "packageRolloutStatus": "PackageRolloutNotStarted",
        "fallbackSubmissionId": "0"
    },
    "isMandatoryUpdate": false,
    "mandatoryUpdateEffectiveDate": "1601-01-01T00:00:00.0000000Z"
  },
  "fileUploadUrl": "https://productingestionbin1.blob.core.windows.net/ingestion/8b389577-5d5e-4cbe-a744-1ff2e97a9eb8?sv=2014-02-14&sr=b&sig=wgMCQPjPDkuuxNLkeG35rfHaMToebCxBNMPw7WABdXU%3D&se=2016-06-17T21:29:44Z&sp=rwl",
  "targetPublishMode": "Immediate",
  "targetPublishDate": "",
  "notesForCertification": "No special steps are required for certification of this app."
}

오류 코드

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

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