Administración de envíos de aplicaciones
La API de envío de Microsoft Store proporciona métodos que puedes usar para administrar envíos para tus aplicaciones, incluidas las implementaciones graduales de paquetes. Para obtener una introducción a la API de envío de Microsoft Store, incluidos los requisitos previos para usar la API, consulta Crear y administrar envíos mediante los servicios de Microsoft Store.
Importante
Si usas la API de envío de Microsoft Store para crear un envío para una aplicación, asegúrate de realizar más cambios en el envío solo mediante la API, en lugar del Centro de partners. Si usa el Centro de partners para cambiar un envío que creó originalmente mediante la API, ya no podrá cambiar o confirmar ese envío mediante la API. En algunos casos, el envío podría dejarse en un estado de error en el que no puede continuar en el proceso de envío. Si esto ocurre, debe eliminar el envío y crear un nuevo envío.
Importante
No puede usar esta API para publicar envíos de compras por volumen a través de la Microsoft Store para Empresas y Microsoft Store para Educación o publicar envíos para aplicaciones loB directamente en empresas. Para ambos escenarios, debes usar el Centro de partners para publicar el envío.
Métodos para administrar envíos de aplicaciones
Usa los siguientes métodos para obtener, crear, actualizar, confirmar o eliminar un envío de aplicación. Para poder usar estos métodos, la aplicación ya debe existir en la cuenta del Centro de partners y primero debe crear un envío para la aplicación en el Centro de partners. Para más información, consulte la sección los requisitos previos.
Método | URI | Descripción |
---|---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId} | Obtener un envío de aplicación existente |
GET | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/status | Obtener el estado de un envío de aplicación existente |
POST | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions | Crear un nuevo envío de aplicación |
PUT | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId} | Actualizar un envío de aplicación existente |
POST | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/commit | Confirmar un envío de aplicación nuevo o actualizado |
Delete | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId} | Eliminar un envío de aplicación |
Crear un envío de aplicación
Para crear un envío de aplicación, sigue este proceso.
Si aún no lo ha hecho, complete todos los requisitos previos para la API de envío de Microsoft Store.
Nota
Asegúrese de que la aplicación ya tiene al menos un envío completado con la información de clasificación por edades completada.
Obtenga un token de acceso de Azure AD. Debes pasar este token de acceso a los métodos de la API de envío de Microsoft Store. 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 de aplicación ejecutando el siguiente método en la API de envío de Microsoft Store. Este método crea un nuevo envío en curso, que es una copia de tu último envío publicado.
POST https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions
El cuerpo de la respuesta contiene un recurso de envío de la aplicación que incluye el identificador del nuevo envío, el URI de firma de acceso compartido (SAS) para cargar los archivos relacionados para el envío a Azure Blob Storage (como paquetes de aplicaciones, imágenes de lista y archivos tráiler) y todos los datos del nuevo envío (como las listas e información de precios).
Nota
Un URI de SAS proporciona acceso a un recurso seguro en Azure Storage sin necesidad de claves de cuenta. Para obtener información general sobre los URI de SAS y su uso con Azure Blob Storage, consulte Firmas de acceso compartido, parte 1: Descripción del modelo saS y las firmas de acceso compartido, parte 2: Creación y uso de una SAS con Blob Storage.
Si va a agregar nuevos paquetes, enumerar imágenes o archivos finalizadores para el envío, prepare los paquetes de la aplicación y prepare las capturas de pantalla, las imágenes y los tráileres de la aplicación. Agrega todos estos archivos a un archivo ZIP.
Revise los datos de envío de la aplicación con los cambios necesarios para el nuevo envío y ejecute el siguiente método para actualizar el envío de la aplicación.
PUT https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}
Nota
Si va a agregar nuevos archivos para el envío, asegúrese de actualizar los datos de envío para hacer referencia al nombre y la ruta de acceso relativa de estos archivos en el archivo ZIP.
Si va a agregar nuevos paquetes, enumerar imágenes o archivos tráiler para el envío, cargue el archivo ZIP en Azure Blob Storage mediante el URI de SAS que se proporcionó en el cuerpo de la respuesta del método POST que llamó anteriormente. Hay varias bibliotecas de Azure, que puedes usar para hacer esto en una variedad de plataformas, como:
- Biblioteca cliente de Azure Storage para .NET
- SDK de Azure Storage para Java
- SDK de Azure Storage para Python
En el siguiente ejemplo de código de C# se muestra cómo cargar un archivo ZIP en Azure Blob Storage mediante la clase CloudBlockBlob en la biblioteca cliente de Azure Storage para .NET. En este ejemplo se supone que el archivo ZIP ya se ha escrito en un objeto de secuencia.
string sasUrl = "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"; Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob blockBob = new Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob(new System.Uri(sasUrl)); await blockBob.UploadFromStreamAsync(stream);
Ejecuta el siguiente método para confirmar el envío de aplicación. Esto le avisará al Centro de partners que haya terminado con el envío y que las actualizaciones se aplicarán ahora a su cuenta.
POST https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/commit
Comprueba el estado de confirmación ejecutando el siguiente método para obtener el estado del envío de aplicación.
GET https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/status
Para confirmar el estado del envío, revisa el valor de status en el cuerpo de la respuesta. Este valor debe cambiar de CommitStarted a PreProcessing si la solicitud se realiza correctamente o a CommitFailed si hay errores en la solicitud. Si hay errores, el campo statusDetails contendrá más detalles sobre el error.
Después de completarse correctamente la confirmación, el envío se remite a la Tienda para su ingesta. Puedes seguir supervisando el progreso del envío mediante el método anterior o visitando el Centro de partners.
Métodos para administrar un lanzamiento de paquete gradual
Puedes implementar gradualmente los paquetes actualizados en un envío de aplicación a un porcentaje de los clientes de la aplicación en Windows 10 y Windows 11. Esto te permite supervisar los comentarios y los datos analíticos de los paquetes específicos para asegurarte de que estás seguro sobre la actualización antes de hacer un lanzamiento más amplio. Puedes cambiar el porcentaje de lanzamiento (o detener la actualización) para un envío publicado sin tener que crear un nuevo envío. Para obtener más información, incluidas las instrucciones para habilitar y administrar un lanzamiento gradual de paquetes en el Centro de partners, consulte este artículo.
Para habilitar mediante programación un lanzamiento gradual de paquetes para un envío de aplicación, siga este proceso mediante métodos en la API de envío de Microsoft Store:
- Crear un envío de aplicación u obtener un envío de aplicación existente.
- En los datos de respuesta, busca el recurso packageRollout, establece el campo isPackageRollout en true y establece el campo packageRolloutPercentage en el porcentaje de los clientes de tu aplicación que deben obtener los paquetes actualizados.
- Pasa los datos de envío de aplicación actualizados al método para actualizar un envío de aplicación.
Después de habilitar un lanzamiento de paquete gradual para un envío de aplicación, puedes usar los siguientes métodos para obtener, actualizar, detener o finalizar mediante programación el lanzamiento gradual.
Método | URI | Descripción |
---|---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/packagerollout | Obtener la información de lanzamiento gradual para un envío de aplicación |
POST | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/updatepackagerolloutpercentage | Actualizar el porcentaje de lanzamiento gradual de un envío de aplicación |
POST | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/haltpackagerollout | Detener el lanzamiento gradual de un envío de aplicación |
POST | https://manage.devcenter.microsoft.com/v1.0/my/applications/{applicationId}/submissions/{submissionId}/finalizepackagerollout | Finalizar el lanzamiento gradual de un envío de aplicación |
Ejemplos de código para administrar envíos de aplicaciones
En los siguientes artículos se proporcionan ejemplos de código detallados que muestran cómo crear un envío de aplicación en varios lenguajes de programación:
- Ejemplo de C#: envíos de aplicaciones, complementos y pilotos
- Ejemplo de C#: envío de aplicación con opciones de juego y tráileres
- Ejemplo de Java: envíos de aplicaciones, complementos y pilotos
- Ejemplo de Java: envío de aplicación con opciones de juego y tráileres
- Ejemplo de Python: envíos de aplicaciones, complementos y pilotos
- Ejemplo de Python: envío de aplicación con opciones de juego y tráileres
Módulo de PowerShell de StoreBroker
Como alternativa a llamar directamente a la API de envío de Microsoft Store, también proporcionamos un módulo de PowerShell de código abierto que implementa una interfaz de línea de comandos sobre la API. Este módulo se denomina StoreBroker. Puedes usar este módulo para administrar los envíos de aplicaciones, vuelos y complementos desde la línea de comandos en lugar de llamar directamente a la API de envío de Microsoft Store, o simplemente puedes examinar el origen para ver más ejemplos de cómo llamar a esta API. El módulo StoreBroker se usa activamente en Microsoft como la principal forma en que muchas aplicaciones propias se envían a la Tienda.
Para obtener más información, consulta nuestra página storeBroker en GitHub.
Recursos de datos
Los métodos de la API de envío de Microsoft Store para administrar envíos de aplicaciones usan los siguientes recursos de datos JSON.
Recurso de envío de aplicación
Este recurso describe un envío de aplicación.
{
"id": "1152921504621243540",
"applicationCategory": "BooksAndReference_EReader",
"pricing": {
"trialPeriod": "FifteenDays",
"marketSpecificPricings": {},
"sales": [],
"priceId": "Tier2",
"isAdvancedPricingModel": true
},
"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",
"description": "Main page",
"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": "Uploaded",
"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": []
}
Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
id | string | Identificador del envío. Este identificador está disponible en los datos de respuesta de las solicitudes para crear un envío de aplicación, obtener todas las aplicaciones y obtener una 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. |
applicationCategory | string | 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 | Un recurso de precios que contiene información sobre precios para la aplicación. |
visibilidad | string | Visibilidad de la aplicación. Puede ser uno de los siguientes valores:
|
targetPublishMode | string | Modo de publicación del envío. Puede ser uno de los siguientes valores:
|
targetPublishDate | string | 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 clave-valor en el cual cada clave hace referencia al código de un país y cada valor hace referencia a un recurso de lista 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:
|
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 | array | 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 | string | Contiene notas para la certificación de la aplicación. |
status | string | Estado del envío. Puede ser uno de los siguientes valores:
|
statusDetails | object | Un recurso de detalles de estado que contiene detalles adicionales sobre el estado del envío, incluida la información sobre los errores. |
fileUploadUrl | string | URI de firma de acceso compartido (SAS) para cargar los paquetes para el envío. Si va a agregar nuevos paquetes, enumerar imágenes o archivos finalizadores para el envío, cargue el archivo ZIP que contiene los paquetes e imágenes en este URI. Para obtener más información, consulta Crear un envío de aplicación. |
applicationPackages | array | Una matriz de recursos de paquete de aplicación que proporcionan detalles acerca de cada paquete del envío. |
packageDeliveryOptions | object | Un recurso de opciones de entrega de paquete que contiene el lanzamiento de paquete gradual y la configuración de actualización obligatoria para el envío. |
enterpriseLicensing | string | Uno de los valores de licencia de empresa indica el comportamiento de la licencia de empresa de la aplicación. |
allowMicrosoftDecideAppAvailabilityToFutureDeviceFamilies | boolean | Indica si Microsoft puede hacer que la aplicación esté disponible para futuras familias de dispositivos Windows 10 y Windows 11. |
allowTargetFutureDeviceFamilies | object | Diccionario de pares clave y valor, donde cada clave es una familia de dispositivos Windows 10 y Windows 11 y cada valor es un valor booleano que indica si la aplicación puede tener como destino la familia de dispositivos especificada. |
friendlyName | string | Nombre descriptivo del envío, como se muestra en el Centro de partners. Este valor se genera automáticamente al crear el envío. |
Acoplados | array | Matriz que contiene hasta 15 recursos de finalizador que representan tráileres de vídeo para la lista de aplicaciones. |
Recurso de precios
Este recurso contiene información sobre precios de la aplicación. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
trialPeriod | string | Cadena que especifica el período de prueba de la aplicación. Puede ser uno de los siguientes valores:
|
marketSpecificPricings | object | Diccionario de pares de clave y valor, donde cada clave es un código de país de dos letras ISO 3166-1 alpha-2 y cada valor es una franja de precios. Estos elementos representan los precios personalizados de la aplicación en mercados específicos. Los elementos de este diccionario reemplazan el precio base especificado por el valor de priceId para el mercado especificado. |
sales (ventas) | array | En desuso. Una matriz de recursos de venta que contienen información de ventas de la aplicación. |
priceId | string | Franja de precios que especifica el precio base de la aplicación. |
isAdvancedPricingModel | boolean | Si es true, la cuenta de desarrollador tiene acceso al conjunto expandido de planes de precio de .99 USD a 1999,99 USD. Si es false, la cuenta de desarrollador tiene acceso al conjunto original de planes de precio de .99 USD a 999,99 USD. Para obtener más información sobre los distintos niveles, consulte planes de tarifa. Nota Este campo es de solo lectura. |
Recurso de venta
Este recurso contiene información de venta de una aplicación.
Importante
El recurso Sale ya no se admite y actualmente no se pueden obtener ni modificar los datos de venta de un envío de aplicación mediante la API de envío de Microsoft Store. En el futuro, actualizaremos la API de envío de Microsoft Store para introducir una nueva manera de acceder mediante programación a la información de ventas para los envíos de aplicaciones.
- Después de llamar al método GET para obtener un envío de aplicación, el valor de sales estará vacío. Puedes seguir usando el Centro de partners para obtener los datos de venta para el envío de la aplicación.
- Cuando se llama al método PUT para actualizar un envío de aplicación, la información del valor de sales se omite. Puedes seguir usando el Centro de partners para cambiar los datos de venta del envío de la aplicación.
Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
name | string | Nombre de la venta. |
basePriceId | string | Franja de precios que se usará para el precio base de la venta. |
startDate | string | Fecha de inicio de la venta en formato ISO 8601. |
endDate | string | Fecha de finalización de la venta en formato ISO 8601. |
marketSpecificPricings | object | Diccionario de pares de clave y valor, donde cada clave es un código de país de dos letras ISO 3166-1 alpha-2 y cada valor es una franja de precios. Estos elementos representan los precios personalizados de la aplicación en mercados específicos. Los elementos de este diccionario reemplazan el precio base especificado por el valor basePriceId para el mercado especificado. |
Recurso de lista
Este recurso contiene la información de descripción de una aplicación. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
baseListing | object | Información de descripción de base de la aplicación, que define la información de descripción predeterminada para todas las plataformas. |
platformOverrides | object | Un diccionario de pares clave-valor, donde cada clave es una cadena que identifica una plataforma para la cual se va a reemplazar la información de descripción y cada valor es un recurso de descripción de base (que contiene solo los valores de la descripción del título) que especifica la información de descripción que se va reemplazar de la plataforma especificada. Las claves pueden tener los siguientes valores:
|
Recursos de descripción base
Este recurso contiene la información de descripción de base de una aplicación. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
copyrightAndTrademarkInfo | string | Información de copyright o marcas comerciales opcional. |
keywords | array | Matriz de palabras clave para ayudar a tu aplicación a aparecer en los resultados de búsqueda. |
licenseTerms | string | Términos de licencia opcionales para tu aplicación. |
privacyPolicy | string | Este valor está obsoleto. Para establecer o cambiar la dirección URL de la directiva de privacidad de la aplicación, debe hacerlo en la página Propiedades del Centro de partners. Puede omitir este valor de las llamadas a la API de envío. Si establece este valor, se omitirá. |
supportContact | string | Este valor está obsoleto. Para establecer o cambiar la dirección URL de contacto de soporte técnico o la dirección de correo electrónico de la aplicación, debes hacerlo en la página Propiedades del Centro de partners. Puede omitir este valor de las llamadas a la API de envío. Si establece este valor, se omitirá. |
websiteUrl | string | Este valor está obsoleto. Para establecer o cambiar la dirección URL de la página web de la aplicación, debe hacerlo en la página Propiedades del Centro de partners. Puede omitir este valor de las llamadas a la API de envío. Si establece este valor, se omitirá. |
description | string | Descripción de la aplicación. |
features | array | Matriz de hasta 20 cadenas que enumera las características de tu aplicación. |
releaseNotes | string | Notas de la versión de tu aplicación. |
images | array | Matriz de datos de recursos de imagen e icono para la descripción de la aplicación. |
recommendedHardware | array | Matriz de hasta 11 cadenas que enumera las configuraciones de hardware recomendadas para tu aplicación. |
minimumHardware | string | Matriz de hasta 11 cadenas que enumeran las configuraciones de hardware mínimas de la aplicación. |
title | string | Título de la descripción de la aplicación. |
shortDescription | string | Solo se usa para juegos. Esta descripción aparece en la sección Información de Game Hub en Xbox One y ayuda a los clientes a comprender más sobre el juego. |
shortTitle | string | Una versión más corta del nombre del producto. Si se proporciona, este nombre más corto puede aparecer en varios lugares de Xbox One (durante la instalación, en Logros, etc.) en lugar del título completo del producto. |
sortTitle | string | Si el producto podría estar alfabético de diferentes maneras, puede escribir otra versión aquí. Esto puede ayudar a los clientes a encontrar el producto más rápidamente al buscar. |
voiceTitle | string | Un nombre alternativo para el producto que, si se proporciona, se puede usar en la experiencia de audio en Xbox One cuando se usa Kinect o un casco. |
devStudio | string | Especifique este valor si desea incluir un campo Desarrollado por en la lista. (El campo Publicado por mostrará el nombre para mostrar del publicador asociado a su cuenta, independientemente de si proporciona o no un valor de devStudio ). |
Recurso de imagen
Este recurso contiene datos de imagen e icono para una descripción de la aplicación. Para obtener más información sobre las imágenes e iconos de una lista de aplicaciones, consulta Capturas de pantalla e imágenes de la aplicación. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
fileName | string | Nombre del archivo de imagen en el archivo ZIP que cargaste para el envío. |
fileStatus | string | Estado del archivo de imagen. Puede ser uno de los siguientes valores:
|
id | string | Identificador de la imagen. Este valor lo proporciona el Centro de partners. |
description | string | Descripción de la imagen. |
imageType | string | Indica el tipo de la imagen. Actualmente se admiten las siguientes cadenas. Imágenes de captura de pantalla:
Imágenes promocionales opcionales:
|
Recurso de opciones de juegos
Este recurso contiene la configuración relacionada con el juego para la aplicación. Los valores de este recurso corresponden a la configuración del juego para envíos en el Centro de partners.
{
"gamingOptions": [
{
"genres": [
"Games_ActionAndAdventure",
"Games_Casino"
],
"isLocalMultiplayer": true,
"isLocalCooperative": true,
"isOnlineMultiplayer": false,
"isOnlineCooperative": false,
"localMultiplayerMinPlayers": 2,
"localMultiplayerMaxPlayers": 12,
"localCooperativeMinPlayers": 2,
"localCooperativeMaxPlayers": 12,
"isBroadcastingPrivilegeGranted": true,
"isCrossPlayEnabled": false,
"kinectDataForExternal": "Enabled"
}
],
}
Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
Géneros | array | Matriz de una o varias de las siguientes cadenas que describen los géneros del juego:
|
isLocalMultiplayer | boolean | Indica si el juego admite multijugador local. |
isLocalCooperative | boolean | Indica si el juego admite la cooperación local. |
isOnlineMultiplayer | boolean | Indica si el juego admite multijugador en línea. |
isOnlineCooperative | boolean | Indica si el juego admite la cooperación en línea. |
localMultiplayerMinPlayers | int | Especifica el número mínimo de jugadores que admite el juego para multijugador local. |
localMultiplayerMaxPlayers | int | Especifica el número máximo de jugadores que admite el juego para multijugador local. |
localCooperativeMinPlayers | int | Especifica el número mínimo de jugadores que admite el juego para la cooperación local. |
localCooperativeMaxPlayers | int | Especifica el número máximo de jugadores que admite el juego para la cooperación local. |
isBroadcastingPrivilegeGranted | boolean | Indica si el juego admite la difusión. |
isCrossPlayEnabled | boolean | Indica si el juego admite sesiones multijugador entre jugadores en Windows 10 y equipos Windows 11 y Xbox. |
kinectDataForExternal | string | Uno de los siguientes valores de cadena que indica si el juego puede recopilar datos de Kinect y enviarlos a servicios externos:
|
Nota
El recurso gamingOptions se agregó en mayo de 2017, después de que la API de envío de Microsoft Store se lanzara por primera vez a los desarrolladores. Si ha creado un envío para una aplicación a través de la API de envío antes de que se haya introducido este recurso y este envío todavía esté en curso, este recurso será nulo para los envíos de la aplicación hasta que confirme correctamente el envío o lo elimine. Si el recurso gamingOptions no está disponible para envíos para una aplicación, el campo hasAdvancedListingPermission del recurso Application devuelto por el método get an app es false.
Recurso de detalles de estado
Este recurso contiene detalles adicionales sobre el estado de un envío. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
errors | object | Una matriz de recursos de detalles de estado que contienen los detalles de errores del envío. |
warnings | object | Una matriz de recursos de detalles de estado que contienen los detalles de advertencias del envío. |
certificationReports | object | Una matriz de recursos de informe de certificación que proporcionan acceso a los datos del informe de certificación del envío. Si se produce un error en la certificación, puedes examinar estos informes para obtener más información. |
Recurso de detalle de estado
Este recurso contiene información adicional acerca de las advertencias o los errores relacionados de un envío. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
código | string | Un código de estado de envío que describe el tipo de error o advertencia. |
detalles | string | Mensaje con más detalles sobre el problema. |
Recurso de paquete de aplicación
Este recurso contiene detalles sobre un paquete de aplicación para el envío.
{
"applicationPackages": [
{
"fileName": "contoso_app.appx",
"fileStatus": "Uploaded",
"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"
]
}
],
}
Este recurso tiene los siguientes valores.
Nota
Al llamar al método de envío de la actualización de una aplicación , solo se requieren los valores fileName, fileStatus, minimumDirectXVersion y minimumSystemRam de este objeto en el cuerpo de la solicitud. Los demás valores se rellenan mediante el Centro de partners.
Value | Tipo | Descripción |
---|---|---|
fileName | string | Nombre del paquete. |
fileStatus | string | Estado del paquete. Puede ser uno de los siguientes valores:
|
id | string | Id. que identifica de manera exclusiva el paquete. Este valor lo proporciona el Centro de partners. |
version | string | Versión del paquete de aplicación. Para obtener más información, consulta Numeración de la versión del paquete. |
arquitectura | string | Arquitectura del paquete (por ejemplo, ARM). |
languages | array | Matriz de códigos de idioma para los idiomas que admite la aplicación. Para más información, consulte Lenguajes admitidos. |
capabilities | array | Matriz de funcionalidades necesarias para el paquete. Para obtener más información acerca de las funcionalidades, consulta Declaraciones de funcionalidades de las aplicaciones. |
minimumDirectXVersion | string | Versión mínima de DirectX que admite el paquete de aplicación. Solo se puede establecer para las aplicaciones destinadas a Windows 8.x. En el caso de las aplicaciones destinadas a otras versiones del sistema operativo, este valor debe estar presente al llamar al método de envío de la actualización de una aplicación , pero se omite el valor especificado. Puede ser uno de los siguientes valores:
|
minimumSystemRam | string | RAM mínima que requiere el paquete de aplicación. Solo se puede establecer para las aplicaciones destinadas a Windows 8.x. En el caso de las aplicaciones destinadas a otras versiones del sistema operativo, este valor debe estar presente al llamar al método de envío de la actualización de una aplicación , pero se omite el valor especificado. Puede ser uno de los siguientes valores:
|
targetDeviceFamilies | array | Matriz de cadenas que representan las familias de dispositivos a las que está destinado el paquete. Este valor se usa solo para los paquetes destinados a Windows 10. para los paquetes destinados a versiones anteriores, este valor es None. Actualmente, se admiten las siguientes cadenas de familia de dispositivos para paquetes de Windows 10 y Windows 11, donde {0} es una cadena de versión Windows 10 o Windows 11, como 10.0.10240.0, 10.0.10586.0 o 10.0.14393.0:
|
id="certification-report-resource"
Recurso de informe de certificación
Este recurso proporciona acceso a los datos del informe de certificación de un envío. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
date | string | Fecha y hora en que se generó el informe, en formato ISO 8601. |
reportUrl | string | Dirección URL en la que puedes obtener acceso al informe. |
Recurso de opciones de entrega de paquete
Este recurso contiene ajustes de lanzamiento de paquete gradual y de actualización obligatoria para el envío.
{
"packageDeliveryOptions": {
"packageRollout": {
"isPackageRollout": false,
"packageRolloutPercentage": 0,
"packageRolloutStatus": "PackageRolloutNotStarted",
"fallbackSubmissionId": "0"
},
"isMandatoryUpdate": false,
"mandatoryUpdateEffectiveDate": "1601-01-01T00:00:00.0000000Z"
},
}
Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
packageRollout | object | Un recurso de lanzamiento de paquete que contiene la configuración del lanzamiento de paquete gradual para el envío. |
isMandatoryUpdate | boolean | Indica si vas a tratar los paquetes de este envío como obligatorios para la instalación automática de actualizaciones de la aplicación. Para obtener más información sobre los paquetes obligatorios para la instalación automática de actualizaciones de la aplicación, consulta Descargar e instalar actualizaciones de paquete para tu aplicación. |
mandatoryUpdateEffectiveDate | date | La fecha y la hora en que los paquetes de este envío se convierten en obligatorios, en formato ISO 8601 y zona horaria UTC. |
Recurso de lanzamiento de paquete
Este recurso contiene la configuración de lanzamiento de paquete gradual para el envío. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
isPackageRollout | boolean | Indica si el lanzamiento de paquete gradual está habilitado para el envío. |
packageRolloutPercentage | FLOAT | El porcentaje de usuarios que recibirá los paquetes en el lanzamiento gradual. |
packageRolloutStatus | string | Una de las siguientes cadenas, que indica el estado del lanzamiento de paquete gradual:
|
fallbackSubmissionId | string | El identificador del envío que recibirán los clientes que no obtengan los paquetes de lanzamiento gradual. |
Nota
El desarrollador asigna los valores packageRolloutStatus y fallbackSubmissionId y no está pensado para que lo establezca el desarrollador. Si incluye estos valores en un cuerpo de la solicitud, estos valores se omitirán.
Recurso Trailers
Este recurso representa un finalizador de vídeo para la descripción de la aplicación. Los valores de este recurso corresponden a las opciones de finalizadores para envíos en el Centro de partners.
Puede agregar hasta 15 recursos de finalizador a la matriz de finalizadores en un recurso de envío de aplicación. Para cargar archivos de vídeo finalizador e imágenes en miniatura para un envío, agregue estos archivos al mismo archivo ZIP que contiene los paquetes y las imágenes de lista para el envío y, a continuación, cargue este archivo ZIP en el URI de firma de acceso compartido (SAS) para el envío. Para obtener más información sobre cómo cargar el archivo ZIP en el URI de SAS, consulte Creación de un envío de aplicación.
{
"trailers": [
{
"id": "1158943556954955699",
"videoFileName": "Trailers\\ContosoGameTrailer.mp4",
"videoFileId": "1159761554639123258",
"trailerAssets": {
"en-us": {
"title": "Contoso Game",
"imageList": [
{
"fileName": "Images\\ContosoGame-Thumbnail.png",
"id": "1155546904097346923",
"description": "This is a still image from the video."
}
]
}
}
}
]
}
Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
id | string | Identificador del finalizador. Este valor lo proporciona el Centro de partners. |
videoFileName | string | Nombre del archivo de vídeo finalizador en el archivo ZIP que contiene archivos para el envío. |
videoFileId | string | Identificador del archivo de vídeo finalizador. Este valor lo proporciona el Centro de partners. |
trailerAssets | object | Diccionario de pares clave y valor, donde cada clave es un código de idioma y cada valor es un recurso de recursos de finalizador que contiene recursos adicionales específicos de la configuración regional para el finalizador. Para obtener más información sobre los códigos de idioma admitidos, vea Idiomas admitidos. |
Nota
El recurso trailers se agregó en mayo de 2017, después de que la API de envío de Microsoft Store se lanzara por primera vez a los desarrolladores. Si ha creado un envío para una aplicación a través de la API de envío antes de que se haya introducido este recurso y este envío todavía esté en curso, este recurso será nulo para los envíos de la aplicación hasta que confirme correctamente el envío o lo elimine. Si el recurso trailers no está disponible para envíos para una aplicación, el campo hasAdvancedListingPermission del recurso Application devuelto por el método get an app es false.
Recurso de recursos del finalizador
Este recurso contiene recursos adicionales específicos de la configuración regional para un finalizador que se define en un recurso de finalizador. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
title | string | Título localizado del finalizador. El título se muestra cuando el usuario reproduce el finalizador en modo de pantalla completa. |
imageList | array | Matriz que contiene un recurso de imagen que proporciona la imagen en miniatura para el finalizador. Solo puede incluir un recurso de imagen en esta matriz. |
Recurso de imagen (para un finalizador)
Este recurso describe la imagen en miniatura de un finalizador. Este recurso tiene los siguientes valores.
Value | Tipo | Descripción |
---|---|---|
fileName | string | Nombre del archivo de imagen en miniatura en el archivo ZIP que cargó para el envío. |
id | string | Identificador de la imagen en miniatura. Este valor lo proporciona el Centro de partners. |
description | string | Descripción de la imagen en miniatura. Este valor es solo metadatos y no se muestra a los usuarios. |
Enumeraciones
Estos métodos usan las enumeraciones siguientes.
Franjas de precio
Los siguientes valores representan los planes de tarifa disponibles en el recurso de recurso de precios para un envío de aplicación.
Value | Descripción |
---|---|
Base | No se establece la franja de precios; usa el precio base para la aplicación. |
NotAvailable | La aplicación no está disponible en la región especificada. |
Gratuito | La aplicación es gratuita. |
Nivelxxx | Cadena que especifica el plan de tarifa de la aplicación, con el formato tier xxxx. Actualmente, se admiten los siguientes intervalos de planes de tarifa:
|
Valores de licencia de empresa
Los valores siguientes representan el comportamiento de licencia de la organización para la aplicación. Para obtener más información acerca de estas opciones, consulta Opciones de licencia organizativas.
Nota
Aunque puede configurar las opciones de licencia de la organización para un envío de aplicación a través de la API de envío, no puede usar esta API para publicar envíos para las compras por volumen a través del Microsoft Store para Empresas y la Microsoft Store para Educación. Para publicar envíos en el Microsoft Store para Empresas y Microsoft Store para Educación, debes usar el Centro de partners.
Value | Descripción |
---|---|
Ninguno | Tu aplicación no se pone a disposición de las empresas con licencias por volumen administradas por la Tienda (en línea). |
En línea | Tu aplicación se pone a disposición de las empresas con licencias por volumen administradas por la Tienda (en línea). |
OnlineAndOffline | Tu aplicación se pone a disposición de las empresas con licencias por volumen administradas por la Tienda (en línea) y también a través de licencias desconectadas (sin conexión). |
Código de estado del envío
Los valores siguientes representan el código de estado de un envío.
Value | Descripción |
---|---|
Ninguno | No se especificó ningún código. |
InvalidArchive | El archivo ZIP que contiene el paquete no es válido o tiene un formato de archivo no reconocido. |
MissingFiles | El archivo ZIP no tiene todos los archivos que se enumeran en los datos del envío o estos se encuentran en una ubicación incorrecta en el archivo. |
PackageValidationFailed | Uno o varios paquetes de tu envío no se pudieron validar. |
InvalidParameterValue | Uno de los parámetros del cuerpo de la solicitud no es válido. |
InvalidOperation | La operación que intentaste realizar no es válida. |
InvalidState | La operación que intentaste realizar no es válida para el estado actual del paquete piloto. |
ResourceNotFound | No se pudo encontrar el paquete piloto especificado. |
ServiceError | Un error de servicio interno impidió que la solicitud se realizase correctamente. Vuelve a intentar realizar la solicitud. |
ListingOptOutWarning | El desarrollador quitó una descripción de un envío anterior o no incluyó la información de descripción que admitía el paquete. |
ListingOptInWarning | El desarrollador agregó una lista. |
UpdateOnlyWarning | El desarrollador está intentando insertar algo que solo presenta soporte técnico de actualizaciones. |
Otros | El envío presenta un estado no reconocido o sin clasificar. |
PackageValidationWarning | El proceso de validación del paquete genera una advertencia. |
Temas relacionados
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de