Recurso de inventario
Nota:
La API de inventario solo está disponible para los participantes piloto cerrados. La API y la documentación están sujetas a cambios.
El recurso Inventario le permite actualizar los precios y la disponibilidad de los productos en la tienda de Microsoft Merchant Center (MMC). Para obtener información sobre el uso de los recursos de inventario, consulte Actualización de precios de productos. Para obtener ejemplos que muestran cómo actualizar los precios y la disponibilidad, consulte Ejemplos de código.
Base URI
El siguiente es el URI base al que anexa las plantillas.
https://content.api.bingads.microsoft.com/shopping/v9.1
Plantillas
Para crear los puntos de conexión que se usan para actualizar las ofertas de productos, anexe la plantilla adecuada al URI base.
Plantilla | Verbo HTTP | Descripción |
---|---|---|
/bmc/{mmcMerchantId}/inventory/batch | POST | Use para realizar varias actualizaciones de precios de productos en una sola solicitud. Establézcalo {mmcMerchantId} en el identificador de almacén de MMC.Objeto request: Batch Objeto de respuesta: Batch |
/bmc/{mmcMerchantId}/inventory/{storeCode}/products/{productUniqueId} | POST | Use para actualizar los precios y la disponibilidad de un solo producto. Establézcalo {mmcMerchantId} en el identificador de almacén de MMC.Establézcalo {storeCode} en en línea.Establezca {productUniqueId} en el identificador de producto completo (por ejemplo, Online:en:US:Sku123).Objeto Request: Product Objeto response: Product |
Parámetros de consulta
Los puntos de conexión pueden incluir los siguientes parámetros de consulta.
Parámetro | Descripción |
---|---|
dry-run | Opcional. Use al depurar la aplicación para probar las llamadas. Las llamadas que incluyen este parámetro no afectarán a los datos de producción. Si se produce un error, la respuesta contiene los errores que la llamada genera normalmente, excepto los mensajes de error secundarios, como la calidad de los datos, los problemas editoriales y las validaciones relacionadas con la base de datos. Para obtener más información sobre cómo probar la aplicación, consulte Espacio aislado. |
Encabezados
A continuación se muestran los encabezados de solicitud y respuesta.
Encabezado | Descripción |
---|---|
AuthenticationToken | Encabezado de solicitud. Establezca este encabezado en un token de acceso de OAuth. Para obtener información sobre cómo obtener un token de acceso, consulte Autenticación de sus credenciales. |
Content-Type | Encabezado de solicitud y respuesta. Tipo de contenido en el cuerpo de la solicitud o respuesta. Establézcalo en application/json. |
CustomerAccountId | Encabezado de solicitud. El identificador de cuenta de cualquier cuenta que administre en nombre del cliente especificado en el CustomerId encabezado. No importa qué cuenta especifique. Especifique este encabezado solo si administra una cuenta en nombre del cliente. |
Customerid | Encabezado de solicitud. El identificador de cliente del cliente cuya tienda administra. Especifique este encabezado solo si administra la tienda en nombre del cliente. Si establece este encabezado, también debe establecer el CustomerAccountId encabezado. |
DeveloperToken | Encabezado de solicitud. Token de desarrollador de la aplicación cliente. Cada solicitud debe incluir este encabezado. Para obtener información sobre cómo obtener un token, consulte ¿Tiene sus credenciales de Microsoft Advertising y el token de desarrollador? |
Ubicación | Encabezado de respuesta. Dirección URL del producto que se actualizó. |
WebRequestActivityId | Encabezado de respuesta. Identificador de la entrada de registro que contiene los detalles de la solicitud. Siempre debe capturar este identificador si se produce un error. Si no puede determinar y resolver el problema, incluya este identificador junto con la otra información que proporcione al equipo de soporte técnico. |
Objetos de solicitud y respuesta
A continuación se muestran los objetos de solicitud y respuesta que usa la API.
Objeto | Descripción |
---|---|
Lote | Define la lista de productos que se van a actualizar en una solicitud por lotes. |
Error | Define un error. |
ErrorResponse | Define el objeto de error de nivel superior para una actualización que no es por lotes. |
BatchEntryError | Define los errores que se produjeron para un elemento durante el procesamiento por lotes. |
Entrada | Define una entrada en una solicitud o respuesta por lotes. |
Producto | Define un producto. |
ProductPrice | Define el precio de un producto. |
Lote
Define la lista de productos que se van a actualizar en un lote.
Nombre | Valor | Tipo |
---|---|---|
Entradas | Lista de productos que se van a actualizar en un lote. El número máximo de productos que puede especificar es 400. | Entrada[] |
BatchEntryError
Define los errores que se produjeron para una entrada durante el procesamiento por lotes.
Nombre | Valor | Tipo |
---|---|---|
errores | Lista de errores que se produjeron al procesar la entrada. | Error[] |
código | Código de estado HTTP del error. | Cadena |
mensaje | Mensaje asociado al error. | Cadena |
Error
Define un error.
Nombre | Valor | Tipo |
---|---|---|
domain | Únicamente para uso interno. | Cadena |
mensaje | Una descripción del error. | Cadena |
motivo | Motivo por el que se produjo un error en la solicitud. Por ejemplo, se produjo un error en la validación del producto. | Cadena |
ErrorResponse
Define el objeto de error de nivel superior para una única actualización de producto.
Nombre | Valor | Tipo |
---|---|---|
error | Lista de errores que se produjeron al procesar el elemento. | Errores[] |
Errores
Define la lista de errores de un producto.
Nombre | Valor | Tipo |
---|---|---|
errores | Lista de errores que se produjeron al procesar la entrada. | Error[] |
código | Código de estado HTTP del error. | Cadena |
mensaje | Mensaje asociado al error. | Cadena |
Entrada
Define una entrada en una solicitud por lotes.
Nombre | Valor | Tipo |
---|---|---|
batchId | Identificador definido por el usuario que identifica de forma única esta entrada en la solicitud por lotes. Por ejemplo, si el lote contiene 10 entradas, puede asignarles identificadores del 1 al 10. | Unsigned Integer |
errores | Objeto de error que contiene una lista de errores de validación que se produjeron. La respuesta incluye este campo solo cuando se produce un error. | BatchEntryError |
inventario | Precio y disponibilidad actualizados. | Producto |
merchantId | El id. de la tienda de Merchant Center. Dado que la dirección URL incluye el identificador de almacén, este campo se omite. | Unsigned Long |
Productid | Identificador de producto completo (por ejemplo, Online:en:US:Sku123) del producto que se va a actualizar. No incluya varias entradas con el mismo identificador de producto. | String |
storeCode | Código que identifica el almacén que se va a actualizar. Establézcalo en en línea para actualizar el precio y la disponibilidad de los productos en la tienda en línea. | Cadena |
Producto
Define un producto.
Propiedad | Descripción | Tipo | Obligatorio |
---|---|---|---|
Disponibilidad | Disponibilidad del producto. Posibles valores:
|
Cadena | Sí |
kind | Tipo del objeto. Establézcalo en content#inventory. | Cadena | No |
Precio | El nuevo precio del producto. Especifique el precio en la moneda del país o región de destino. Para obtener información sobre si se deben incluir impuestos en el precio, consulte La directiva de impuestos del catálogo de Microsoft Merchant Center. El precio debe coincidir con el precio mostrado en la página web del producto, y debe estar en el intervalo de 0,01 (1 céntimo) a 10000000,00 (10 millones). Sin embargo, si se cumplen las condiciones siguientes, puede establecer el precio en 0,0 (cero).
|
ProductPrice | Sí |
salePrice | Precio de venta del producto. Para artículos de venta, establezca tanto el precio de venta como la fecha de vigencia de la venta (consulte salePriceEffectiveDate ). Si establece el precio de venta pero no la fecha de vigencia del precio de venta, el precio de venta seguirá siendo utilizado hasta que expire el producto o establezca una fecha de vigencia.El precio de venta debe estar comprendido entre 0,01 (1 céntimo) y 10000000,00 (10 millones). Sin embargo, si se cumplen las condiciones siguientes, puede establecer el precio de venta en 0,0 (cero).
|
ProductPrice | No |
salePriceEffectiveDate | Fecha de inicio y finalización de la venta. Especifique una fecha solo si establece salePrice .Especifique las fechas de inicio y finalización en formato ISO 8601 . Por ejemplo, 2016-04-05T08:00-08:00/2016-04-10T19:30-08:00 (use una barra diagonal ('/') para separar las fechas de inicio y finalización. Para más información, vea salePrice .Si no se especifica, la fecha de venta actual se quita de la oferta. No pase null. |
Cadena | No |
ProductPrice
Define el precio o el precio de venta de un producto.
Nombre | Valor | Tipo |
---|---|---|
Moneda | Moneda en la que se indica el precio. Posibles valores:
|
Cadena |
valor | El precio del producto. | Doble |
Códigos de estado HTTP
Las solicitudes pueden devolver los siguientes códigos de estado HTTP.
Código de estado | Descripción |
---|---|
200 | Correcto. |
400 | Solicitud incorrecta. Un valor de parámetro de consulta no es válido o algo en el cuerpo de la solicitud no es válido. Si se produce un error, la entrada por lotes con errores incluirá los errores. |
401 | No autorizado. Las credenciales del usuario no son válidas. |
403 | Prohibido. El usuario no tiene permisos para usar el recurso. |
404 | No encontrado. |
409 | Conflicto. No se pudo completar la operación debido a un conflicto con el estado actual del recurso. |
413 | Entidad de solicitud demasiado grande. El tamaño de la solicitud supera el máximo permitido. |
500 | Error del servidor. |