Actualización de un envío de aplicación

Usa este método en la API de envío de Microsoft Store para actualizar un envío de aplicación existente. Después de actualizar correctamente un envío mediante este método, debes confirmar el envío para su ingesta y publicación.

Para obtener más información sobre cómo encaja este método en el proceso de creación de un envío de aplicación mediante la API de envío de Microsoft Store, consulta Administrar envíos de aplicaciones.

Requisitos previos

Para usar este método, primero debes hacer lo siguiente:

  • Si aún no lo ha hecho, complete todos los requisitos previos para la API de envío de Microsoft Store.
  • Obtén un token de acceso de Azure AD para usarlo en el encabezado de la solicitud de este método. Una vez que haya obtenido un token de acceso, tiene 60 minutos para usarlo antes de que expire. Si el token expira, puedes obtener uno nuevo.
  • Cree un envío para una de las aplicaciones. Puedes hacerlo en el Centro de partners, o puedes hacerlo mediante el método de creación de un envío de aplicación .

Solicitud

Este método tiene la siguiente sintaxis. Consulta las siguientes secciones para ver ejemplos de uso y descripciones tanto del encabezado como del cuerpo de la solicitud.

Método URI de la solicitud
PUT https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}

Encabezado de solicitud

Encabezado Tipo Descripción
Authorization string Necesario. Token de acceso de Azure AD con el formato Token de portador<>.

Parámetros de solicitud

Nombre Tipo Descripción
applicationId string Necesario. Id. de la Tienda de la aplicación para la cual deseas actualizar un envío. Para obtener más información sobre el identificador de la Tienda, consulta Ver detalles de identidad de las aplicaciones.
submissionId string Necesario. Identificador del envío que se debe actualizar. Este identificador está disponible en los datos de respuesta de las solicitudes para crear un envío de aplicación. Para un envío creado en el Centro de partners, este identificador también está disponible en la dirección URL de la página de envío en el Centro de partners.

Cuerpo de la solicitud

El cuerpo de la solicitud tiene los siguientes parámetros.

Valor Tipo Descripción
applicationCategory cadena Cadena que especifica la categoría o subcategoría de la aplicación. Las categorías y subcategorías se combinan en una cadena simple mediante el guion bajo "_" como, por ejemplo, BooksAndReference_EReader.
Precios object Objeto que contiene la información del precio de la aplicación. Para obtener más información, consulta la sección Recurso de precios.
visibilidad string Visibilidad de la aplicación. Puede ser uno de los siguientes valores:
  • Hidden
  • Público
  • Privada
  • NotSet
targetPublishMode string Modo de publicación del envío. Puede ser uno de los siguientes valores:
  • Inmediata
  • Manual
  • SpecificDate
targetPublishDate cadena Fecha de publicación del envío en formato ISO 8601, si el valor targetPublishMode se establece en SpecificDate.
listings object Diccionario de pares de claves y valores en el cual cada clave hace referencia al código de un país y cada valor hace referencia a un objeto de recurso de descripción que contiene la descripción de la aplicación.
hardwarePreferences array Matriz de cadenas que definen las preferencias de hardware de la aplicación. Puede ser uno de los siguientes valores:
  • Tocar
  • Teclado
  • Mouse
  • Cámara
  • NfcHce
  • Nfc
  • BluetoothLE
  • Telefonía
automaticBackupEnabled boolean Indica si Windows puede incluir datos de la aplicación en copias de seguridad automáticas de OneDrive. Para obtener más información, consulta App declarations (Declaraciones de las aplicaciones).
canInstallOnRemovableMedia boolean Indica si los clientes pueden instalar la aplicación en el almacenamiento extraíble. Para obtener más información, consulta App declarations (Declaraciones de las aplicaciones).
isGameDvrEnabled boolean Indica si se habilita game DVR en la aplicación.
gamingOptions object Matriz que contiene un recurso de opciones de juego que define la configuración relacionada con el juego para la aplicación.
hasExternalInAppProducts boolean Indica si la aplicación permite a los usuarios realizar compras fuera del sistema de comercio de Microsoft Store. Para obtener más información, consulta App declarations (Declaraciones de las aplicaciones).
meetAccessibilityGuidelines boolean Indica si la aplicación se ha probado para garantizar que cumple las directrices de accesibilidad. Para obtener más información, consulta App declarations (Declaraciones de las aplicaciones).
notesForCertification cadena Contiene notas para la certificación de la aplicación.
applicationPackages array Contiene los objetos que proporcionan detalles acerca de cada paquete del envío. Para obtener más información, consulta la sección Application package (Paquete de aplicación). Al llamar a este método para actualizar un envío de aplicación, solo los valores fileName, fileStatus, minimumDirectXVersion y minimumSystemRam de esos objetos son necesarios en el cuerpo de la solicitud. Los demás valores se rellenan mediante el Centro de partners.
packageDeliveryOptions object Contiene el lanzamiento de paquete gradual y la configuración de actualización obligatoria del envío. Para obtener más información, consulta Package delivery options object (Objeto de opciones de entrega de paquete).
enterpriseLicensing string Uno de los valores de licencia de empresa indica el comportamiento de la licencia de empresa de la aplicación.
allowMicrosftDecideAppAvailabilityToFutureDeviceFamilies boolean Indica si Microsoft puede hacer que la aplicación esté disponible para futuras familias de dispositivos de Windows 10 y Windows 11.
allowTargetFutureDeviceFamilies boolean Indica si la aplicación puede tener como destino futuras familias de dispositivos de Windows 10 y Windows 11.
Acoplados array Matriz que contiene hasta recursos de finalizador que representan tráileres de vídeo para la descripción de la aplicación.

Ejemplo de solicitud

En el siguiente ejemplo se muestra cómo actualizar un envío de aplicación.

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

En el siguiente ejemplo se muestra el cuerpo de la respuesta JSON de una llamada satisfactoria a este método. El cuerpo de la respuesta contiene información sobre el envío actualizado. Para obtener más información acerca de los valores del cuerpo de la respuesta, consulta App submission resource (Recurso de envío de aplicación).

{
  "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": []
}

Códigos de error

Si la solicitud no se puede completar correctamente, la respuesta contendrá uno de los siguientes códigos de error HTTP.

Código de error Descripción
400 No se pudo actualizar el envío porque la solicitud no es válida.
409 No se pudo actualizar el envío debido al estado actual de la aplicación o la aplicación usa una característica del Centro de partners que actualmente no es compatible con la API de envío de Microsoft Store.