Ofertas

Los vendedores que reciben asesoramiento por parte del equipo comercial de Mercado Libre son invitados periódicamente a participar de diferentes campañas de ofertas que se realizan en el sitio. Si recibiste la invitación para alguna campaña puntual y quieres sumarte, sigue este tutorial para conocer los pasos básicos de cómo sugerir tus productos en oferta.

Contenidos

→Consultar las campañas a las que has sido invitado
→Sugerir un producto para la campaña
→Modificar un producto en una campaña
→Eliminar un producto de una campaña
→Reactivar un producto eliminado de una campaña
→Obtener productos propuestos para una campaña
→Obtener información de una campaña específica

Importante:
- Para poder realizar pruebas, deberás utilizar un usuario de test. Esto te garantizará que siempre tengas una oferta (campaña) disponible para los artículos sugeridos. En test nunca se llegarán a aprobar las campañas para un ítem, quedarán en estado pending_approval, es decir, no se mostrará el precio con oferta.
- Para acceder a esta API, necesitarás un access token.

Consultar las campañas a las que has sido invitado

Este recurso invoca las campañas de ofertas asociadas a un user_id [id de usuario]. Puede existir más de una campaña por usuario.

Llamada:

curl -X GET https://api.mercadolibre.com/users/$USER_ID/deals/search?access_token=$ACCESS_TOKEN

Ejemplo:

curl -X GET https://api.mercadolibre.com/users/443033562/deals/search?access_token=$ACCESS_TOKEN

Respuesta:

{
   "paging":{
      "total":50,
      "offset":0,
      "limit":0
   },
   "filters":{
      "seller_id":443033562
   },
   "results":[
      {
         "id":"MLA480",
         "name":"refrigeracion 18-oldVersion",
         "description":"¡No te pierdas el especial de #Refrigeración en #MercadoLibre! #Aires #Heladeras y #Freezers",
         "site_id":"MLA",
         "status":"inactive",
         "offers_reception_deadline":"2018-02-14T19:00:00.000-04:00",
         "start_time":"2018-02-06T03:00:00.000Z",
         "end_time":"2018-02-15T02:59:00.000Z",
         "requisites":[
            {
               "name":"CATEGORIES_REQUISITE",
               "criteria":"NA",
               "categories":[
                  "MLA5726"
               ],
               "parameters":{

               },
               "description":"Items must belong to the specified categories"
            }
         ],
         "parameters":{
            "has_discounts":true,
            "general_req_config":"ENABLED",
            "freeze_prices":false,
            "free_shipping":false
         },
         "exhibitors":[
            {
               "id":8897,
               "deal":{
                  "id":1876
               },
               "description":"¡No te pierdas el especial de #Refrigeración en #MercadoLibre! #Aires #Heladeras y #Freezers",
               "dt_end_time":"2017-12-31T22:59:00.000-04:00",
               "dt_start_time":"2017-12-26T08:00:00.000-04:00",
               "end_time":"2018-01-01T02:59:00.000Z",
               "exhibitor_id":"search_desktop_main_slider",
               "parameters":{
                  "background_image":"https://http2.mlstatic.com/resources/deals/exhibitors_resources/mla-search-desktop-main-slider-background-image-0e3b35d5-f290-437a-b4a0-bd59861f6f55.jpg",
                  "permalink":"http://ofertas.mercadolibre.com.ar/refrigeracion",
                  "deal_id":"MLA480",
                  "included_categories_ids":[
                     "MLA1051",
                     "MLA5726",
                     "MLA1000",
                     "MLA1499",
                     "MLA407134"
                  ]
               },
               "params":[
                  {
                     "id":71620
                  }
               ],
               "site_id":"MLA",
               "start_time":"2017-12-26T12:00:00.000Z"
            },
            {
               "id":8902,
               "deal":{
                  "id":1876
               },
               "description":"¡No te pierdas el especial de #Refrigeración en #MercadoLibre! #Aires #Heladeras y #Freezers",
               "dt_end_time":"2018-02-14T22:59:00.000-04:00",
               "dt_start_time":"2018-02-13T23:00:00.000-04:00",
               "end_time":"2018-02-15T02:59:00.000Z",
               "exhibitor_id":"home_feed_mobile_native_big_banner",
               "parameters":{
                  "header_background_url_landscape_300x":"https://http2.mlstatic.com/resources/deals/exhibitors_resources/mla-home-feed-mobile-native-big-banner-header-background-url-landscape-300x-773ef349-56fd-4d69-847a-8642df88f1fa.jpg"               },
               "params":[
                  {
                     "id":70678
                  }
               ],
               "site_id":"MLA",
               "start_time":"2018-02-14T03:00:00.000Z"
            }
         ]
      }
   ]
}

Los campos importantes que debes tener en cuenta en esta respuesta son:

  • offers_reception_deadline: indica hasta cuándo puedes sugerir tus productos. Una vez transcurrido ese plazo, no podrás sugerir artículos para la campaña.
  • requisites: contiene un conjunto de requisitos que tus artículos sugeridos deben cumplir para poder ser incluidos en la campaña. Estos requisitos son definidos por Mercado Libre para cada campaña.
  • freeze_prices: es importante para conocer si la campaña tiene los precios congelados, si este campo tiene un “true” no podrás modificarlos mientras la campaña esté vigente.

Sugerir un producto para la campaña

Una vez que has sido invitado a una campaña de ofertas, puedes seleccionar qué productos deseas incluir en la campaña y sugerirlos. Es posible que tengas que detallar las condiciones en las que tus productos participarán de la campaña (es decir, precio de descuento para la campaña, stock para la campaña, etc.). Los items que propongas, tienen un status asociado. En un comienzo, este status es "pending_approval". Cuando el equipo comercial válida la oferta, puede ser rechazado y el status pasa a "rejected" (el ítem no entra al deal) o puede ser aprobado (el ítem va a entrar al deal).

Llamada:

curl -X POST -d '{
    "item_id":"MLU472482134",
    "deal_price":149,
    "regular_price":200,
    "declared_free_shipping":true,
    "declared_oro_premium_full":true
}' 'https://api.mercadolibre.com/users/$USER_ID/deals/$DEAL_ID/proposed_items?access_token=$ACCESS_TOKEN'

Ejemplo:

curl -X POST -d '{
    "item_id":"MLU472482134",
    "deal_price":300,
    "regular_price":350,
    "declared_free_shipping":true,
    "declared_oro_premium_full":true
}' 'https://api.mercadolibre.com/users/443033562/deals/MLA1804/proposed_items?access_token=$ACCESS_TOKEN'

Respuesta:

{
    "item_id": "MLU472482134",
    "current_price": 350,
    "regular_price": 350,
    "deal_price": 300,
    "deal_price_l36": null,
    "declared_stock": null,
    "declared_free_shipping": true,
    "declared_oro_premium_full": true,
    "category_l1": "MLU5725",
    "category_l2": "MLU442519",
    "brand": null,
    "model": null,
    "date_created": "2020-06-02T16:29:50.611-04:00",
    "last_updated": "2020-06-02T16:29:50.611-04:00",
    "status": "pending_approval",
    "title": "Item De Test - No Ofertar",
    "processed_by": "UNDEFINED",
    "source": "deals_sellers_fend",
    "discount": 14,
    "validation_color": "yellow"
}

Modificar un producto sugerido para una campaña

Llamada:

curl -X PUT -d '{
"deal_price":240
}' 'https://api.mercadolibre.com/users/$USER_ID/deals/$DEAL_ID/proposed_items/$ITEM_ID?access_token=$ACCESS_TOKEN'

Ejemplo:

curl -X PUT -d '{
"deal_price":240
}' 'https://api.mercadolibre.com/users/443033562/deals/MLA1804/proposed_items/MLU472482134?access_token=$ACCESS_TOKEN'

Respuesta:

{
    "item_id": "MLU472482134",
    "current_price": 350,
    "regular_price": 350,
    "deal_price": 240,
    "deal_price_l36": null,
    "declared_stock": null,
    "declared_free_shipping": false,
    "declared_oro_premium_full": false,
    "category_l1": "MLU5725",
    "category_l2": "MLU442519",
    "brand": null,
    "model": null,
    "date_created": "2020-06-02T16:29:50.000-04:00",
    "last_updated": "2020-06-02T16:37:18.813-04:00",
    "status": "pending_approval",
    "title": "Item De Test - No Ofertar",
    "processed_by": "UNDEFINED",
    "source": "deals_sellers_fend",
    "discount": 31,
    "validation_color": "yellow"
}

Eliminar un producto propuesto para una campaña

Llamada:

curl -X DELETE https://api.mercadolibre.com/users/$USER_ID/deals/$DEAL_ID/proposed_items/$ITEM_ID?access_token=$ACCESS_TOKEN

Ejemplo:

curl -X DELETE https://api.mercadolibre.com/users/443033562/deals/MLA1804/proposed_items/MLA632979587?access_token=$ACCESS_TOKEN

Respuesta:

{
    "item_id": "MLU471811349",
    "current_price": null,
    "regular_price": 1000,
    "deal_price": 800,
    "deal_price_l36": null,
    "declared_stock": null,
    "declared_free_shipping": null,
    "declared_oro_premium_full": false,
    "category_l1": "MLU5725",
    "category_l2": "MLU442519",
    "brand": null,
    "model": null,
    "date_created": "2020-05-08T16:46:00.000-04:00",
    "last_updated": "2020-06-02T17:06:30.091-04:00",
    "status": "rejected",
    "title": "Item De Testeo, Por Favor No Ofertar --kc:off",
    "processed_by": "UNDEFINED",
    "source": "deals_sellers_fend",
    "discount": 20,
    "validation_color": "red",
    "rejections": [
        {
            "comment": null,
            "requisite_rejection": null,
            "reason": [
                "El seller quitó al item del deal"
            ]
        }
    ]
}

La status HTTP de la respuesta es 200.

Nota:
Para modificar/eliminar un items se podrán realizar antes de que se cumpla el plazo que figura en offers_reception_deadline. Luego de esta fecha se podrá hacer únicamente a través de su asesor comercial. Mira el ejemplo Consultar las campañas a las que has sido invitado.

Reactivar un producto eliminado de una campaña

Para reactivar un producto en una campaña que había sido eliminado, es necesario que realices un PUT con la oferta propuesta:

Llamada:

curl -X PUT -d '{
    "item_id":"MLU472482134",
    "deal_price":149,
    "regular_price":200,
    "declared_free_shipping":true,
    "declared_oro_premium_full":true
}' 'https://api.mercadolibre.com/users/$USER_ID/deals/$DEAL_ID/proposed_items/$ITEM_ID?access_token=$ACCESS_TOKEN'

Ejemplo:

curl -X PUT -d '{
    "item_id":"MLU472482134",
    "deal_price":149,
    "regular_price":200,
    "declared_free_shipping":true,
    "declared_oro_premium_full":true
}' 'https://api.mercadolibre.com/users/443033562/deals/MLA1804/proposed_items/MLU472482134?access_token=$ACCESS_TOKEN'

Respuesta:

{
    "item_id": "MLU472482134",
    "current_price": 350,
    "regular_price": 350,
    "deal_price": 240,
    "deal_price_l36": null,
    "declared_stock": null,
    "declared_free_shipping": false,
    "declared_oro_premium_full": false,
    "category_l1": "MLU5725",
    "category_l2": "MLU442519",
    "brand": null,
    "model": null,
    "date_created": "2020-06-02T16:29:50.000-04:00",
    "last_updated": "2020-06-02T16:37:18.813-04:00",
    "status": "pending_approval",
    "title": "Item De Test - No Ofertar",
    "processed_by": "UNDEFINED",
    "source": "deals_sellers_fend",
    "discount": 31,
    "validation_color": "yellow"
}

Obtener productos propuestos para una campaña

Podrás obtener los productos que has sugerido para una campaña.

Llamada:

curl -X GET https://api.mercadolibre.com/users/$USER_ID/deals/$DEAL_ID/proposed_items/search?access_token=$ACCESS_TOKEN

Ejemplo:

curl -X GET https://api.mercadolibre.com/users/210456151/deals/MLA90/proposed_items/search?access_token=$ACCESS_TOKEN

Respuesta:

{   
    "paging": {
        "total": 2,
        "offset": 0,
        "limit": 50
    },
    "filters": {
        "seller_id": "555995008"
    },
    "results": [
        {
            "item_id": "MLU471811349",
            "status": "approved",
            "deal_price": 800,
            "regular_price": 1000,
            "declared_free_shipping": false,
            "declared_oro_premium_full": false,
            "current_price": 800,
            "discount": 20,
            "date_created": "2020-05-08T16:46:00.626-04:00",
            "last_updated": "2020-05-12T11:00:22.44-04:00",
            "title": "ITEM DE TESTEO, POR FAVOR NO OFERTAR --KC:OFF",
            "category_l1": "MLU5725",
            "category_l2": "MLU442519",
            "validation_color": "green",
            "source": "deals_admin",
            "processed_by": "UNDEFINED"
        },
        {
            "item_id": "MLU472482134",
            "status": "pending_approval",
            "deal_price": 240,
            "regular_price": 350,
            "declared_free_shipping": false,
            "declared_oro_premium_full": false,
            "current_price": 350,
            "discount": 31.5,
            "date_created": "2020-06-02T16:29:50.519-04:00",
            "last_updated": "2020-06-02T16:37:18.716-04:00",
            "title": "ITEM DE TEST - NO OFERTAR",
            "category_l1": "MLU5725",
            "category_l2": "MLU442519",
            "validation_color": "yellow",
            "source": "deals_sellers_fend",
            "processed_by": "UNDEFINED",
           
        }
    ]
}
Nota:
Recuerda que el valor máximo para limit es 200.

Además puedes filtrar esta búsqueda con los siguientes parámetros:

  • category_id (string): para filtrar por categoría.
  • loyalty (boolean): solo los items con descuentos de loyalty.
  • item_id (string): por item id.
  • status (string): por estado de la oferta (approved, pending_approval o rejected).
  • title (string): por el título del ítem.
  • free_shipping (string): por true, false, default.
  • opf (string): podes filtrar por true, false, default.
  • last_updated_start_time: fecha desde la última modificación del ítem en la campaña.
  • last_updated_end_time: fecha hasta la última modificación del ítem en la campaña.
  • processed_by (string): usuario que procesó la carga del ítem.

El formato de fecha es “yyyy-MM-dd’T’HH:mm:ss.SSS’Z’”


Obtener información de una campaña específica

Para obtener la información sobre una campaña específica realiza una llamada GET con el ID del deal. Así, obtienes datos específicos como la fecha de finalización, si tiene precios congelados y envío gratis.

Llamada:

curl -X GET https://api.mercadolibre.com/deals/$DEAL_ID

Ejemplo:

curl -X GET https://api.mercadolibre.com/deals/MLA90

Respuesta:

{
  "teaser_uri": null,
  "landing_hub_uri": null,
  "post_deal_uri": null,
  "exhibitors": [
    {
      "id": 1483,
      "end_time": "2016-10-13T02:59:00.000Z",
      "exhibitor_id": "home_feed_mobile_native_big_banner",
      "description": "Tiempo libre",
      "site_id": "MLA",
      "start_time": "2015-12-17T03:00:00.000Z",
      "parameters": {}
    }
  ],
  "status": "inactive",
  "pre_deal_uri": null,
  "site_id": "MLA",
  "dead_line": "2015-12-17T03:00:00.000Z",
  "type": "without_discounts",
  "id": "MLA90",
  "end_time": "2016-10-13T02:59:00.000Z",
  "description": "Tiempo libre",
  "name": "tiempo libre-oldVersion",
  "start_time": "2015-12-17T03:00:00.000Z",
  "parameters": {
    "free_shipping": false,
    "has_discounts": false,
    "freeze_prices": false
  }
}