Sincronização e modificação de publicações

Assim aque você tiver publicações ativas em nosso Marketplace, é provável que você tenha de fazer atualizações e alterações periodicamente para sincronizar o estoque com outras plataformas com as quais você trabalha, pausar publicações, melhorar descrições, atualizar preços etc. Leia o guia a seguir e saiba como fazer isso.

Conteúdos

→Considerações
→Atualização de seu produto
→Descrições
→Imagens
→Tipos de publicação
→Mudar os status das publicações
→Fluxo de estados nas publicações
→Exclusão de publicações
→Atualização do estoque
    ↳Onde é possível essa funcionalidade?
→Adicionar tempo de disponibilidade de estoque
    ↳Considerações
    ↳Criar item com disponibilidade de estoque
    ↳Modificar disponibilidade de estoque
    ↳Eliminar disponibilidade de estoque
→Quantidade máxima de compra
→Preços competitivos (disponível só no México e no Brasil)

Considerações

Nem todos os campos podem ser atualizados, e isso irá variar se o produto já tiver vendas ou não. Além disso, lembre-se de que para poder alterar um produto, ele deve estar ativo. Você pode alterar valores para:

  • Available_quantity
  • Price
  • Video
  • Pictures
  • Description
  • Shipping

Se o produto tiver vendas, nenhum dos seguintes campos poderá ser alterado:

  • Title
  • Buying mode (só existe uma opção ativa atualmente)
  • Non Mercado Pago Payment Methods (essa condição não pode ser alterada)
  • Warranty
  • Category
  • Shipping
  • Condição (novo ou usado)

Você também deve lembrar que:

  • O tipo de publicação só pode ser alterado uma vez.

Atualização de seu produto

Vejamos um exemplo básico de atualização do titulo e preço de um produto. Você só precisará do item_id do produto publicado e do access_token do vendedor.

Nota:
- Hoje temos uma regra onde ja não permitimos a alteração dos titulos de items que atinjam vendas (o campo sold_quantity = 0), tenham esta regra em conta para restringirem isto em sua ferramenta e evitarem erros neste tipo de atualização.
- Se você deseja modificar o preço e o estoque de um item, deve-se levar em consideração se a publicação possui variações.
- Antes de atualizar o preço, verifique se o item tem uma oferta ativa.
Exemplo:
curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
  "title": "Your new title",
  "price": 1000
}
https://api.mercadolibre.com/items/ITEM_ID

Pronto. O título e o preço de seu produto foram atualizados, e você deverá receber um status de resposta com código 200 OK para confirmar que não houve inconvenientes. Lembre de que pode demorar um pouco até que as informações atualizadas fiquem visíveis.


Descrições

Atualizar uma descrição é muito simples, e você pode fazer isso independentemente do produto ter ou não alguma oferta. No entanto, como há algumas considerações que você deve lembrar ao adicionar ou substituir descrições, consulte o nosso artigo sobre descrições para ter certeza de que entendeu.


Imagens

Você sempre pode adicionar ou substituir imagens dos produtos. Consulte o nosso tutorial Trabalhar com imagens para saber qual a melhor maneira de fazer isso.


Tipos de publicação

Caso você queira dar mais exposição a seu produto, você deve atualizar o tipo de publicação. Conheça os detalhes e as considerações, e aprenda a fazer uma atualização em nosso tutorial Tipos de publicações e upgrades.


Mudar os status das publicações

Qualquer produto publicado em nosso Marketplace pode ter diferentes status; a seguir, analise a descrição de cada um deles: encerrado: finaliza sua publicação. Uma vez encerrada, a publicação não poderá ser ativada novamente, mas pode ser publicada novamente.

Exemplo:
curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
  "status":"closed"
}
https://api.mercadolibre.com/items/ITEM_ID

pausado: pausa sua publicação. Uma vez pausado, o produto não poderá ser visualizado pelos outros usuários do Mercado Livre, mas não será encerrado e poderá ser reativado depois. Exemplo:

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
  "status":"paused"
}
https://api.mercadolibre.com/items/ITEM_ID

ativo: reativa um produto previamente pausado. Exemplo:

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
  "status":"active"
}
https://api.mercadolibre.com/items/ITEM_ID
Notas:
Lembre de que o valor diferencia entre letras maiúsculas e minúsculas e deve ser enviado em letras minúsculas. Se seu produto está encerrado, e você quer publicá-lo novamente, consulte artigo sobre como publicar novamente para fazer isso rapidamente. Para obter mais informações sobre o status do produto, consulte o artigo sobre ciclo de vida das publicações.


Fluxo de estados nas publicações

Active: O anúncio está ativo e pode receber ofertas ou perguntas. É possível alterar a exposição do anúncio (upgrade de listing type). Payment required: Este caso se apresenta quando um usuário com dívida ou baixa política de crédito realiza um anúncio que será reativado automaticamente após o usuário realizar o pagamento.
Under Review: O item está sob revisão pelo Mercado Livre por causa dos motivos abaixo:

  • warning: item que continua ativo, porém, tem uma correção pendente a ser realizada pelo usuário. Se não for corrigido em 2 dias, passa para waiting_for_patch.
  • waiting_for_patch: item oculto até o usuário corrigir a infração informada.
  • held: item oculto no aguardo de uma moderação manual pelo Mercado Livre.
  • pending_documentation: item oculto até o usuário apresentar a documentação solicitada.
  • forbidden: item cancelado por moderação.
Nota:
Se tem dúvidas respeito ao status sugerimos vê-lo com seu assessor comercial ou em MyML.

Paused: Pode se apresentar de forma automática (out of stock) ou por decisão do usuário.

  • out of stock: o item foi pausado por falta de estoque e será automaticamente ativado quando for restituído.
Nota:
O item será pausado na VIP e não poderá receber ofertas.

Closed: Este é o status final do item, podendo se dever às seguintes causas:

  • waiting for patch
  • held
  • expired: chegou a data de finalização do anúncio (end_time) ainda tendo estoque.
  • deleted: é adicionado quando o item está fechado e o seller decide removê-lo. Ou quando o item finaliza e é automaticamente recadastrado.
  • suspended
  • freezed
Nota:
Lembre que, depois de um tempo, os itens finalizados não serão mais mostrados para sua consulta.

Inactive: Se a correção necessária para sair do status under review não for feita, o item passa para inactive. A correção pode se encontrar na conta do usuário na seção vendas na aba de anúncios "revisar".


Exclusão de publicações

Depois de excluir uma publicação, não há como reverter. Por isso, tenha cuidado ao fazer isso. Além disso, lembre-se de que não é necessário excluir os produtos encerrados porque eles serão automaticamente descartados depois de algum tempo. Mas se você ainda precisar excluir um produto, por exemplo, produtos em estado payment_required, os quais não responderão ao status "encerrado”, faça o seguinte: Exemplo: Primeiro passo

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
"status": "closed"
}
https://api.mercadolibre.com/items/ITEM_ID

Segundo passo

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
"deleted":"true"
}
https://api.mercadolibre.com/items/ITEM_ID
Notas:
- Se ao fazer o segundo PUT você obtiver o erro: message: item optimistic locking error: conflict status: 409 cause: array(0) Deverá esperar alguns segundos até a informação se atualizar.
- Eliminado o anúncio, ele continuará sendo visualizado na VIP durante um breve período com a legenda "anúncio finalizado".

Pronto! Seu produto será excluído.


Atualização do estoque

Atualizar o estoque de um artigo é muito fácil. Você deve somente acrescentar o valor no campo “available_quantity”, levando em consideração os seguintes pontos:

  • Ao fazer o PUT do available_quantity com 0, mudará o estado para “paused” com subestado out_of_stock.
  • Ao fazer o PUT do available_quantity superior a 0 e o subestado sendo out_of_stock, mudará o estado para ativo sem subestado out_of_stock.
  • Um item só pode ser pausado enviando available_quantity = 0 quando for do tipo condition = new e não for listing_type = free.
Nota:
É possível realizar esta modificação tanto para itens como para variações de um item.

Onde é possível essa funcionalidade?

Os sites que suportam pausa automática com estoque 0 são MLB, MLA, MLM, MLC, MPE, MLV.Exemplo:

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
  "available_quantity": 6
}
https://api.mercadolibre.com/items/ITEM_ID

Fácil. Você pode consultar sua publicação e visualizar o estoque atualizado. Se precisar atualizar o estoque ou realizar alterações em um produto com variações, você encontrará uma pequena diferença na maneira de realizar as atualizações.


Adicionar tempo de disponibilidade de estoque

Nesta seção, mostraremos a você como utilizar a funcionalidade que permite contar aos compradores quanto tempo leva ter os produtos prontos para a venda.

Poderá ser utilizado nos casos a seguir:

  • Realização de pedidos por encargo.
  • Fabricação de produtos.
  • Customização de produtos para ser vendidos.
  • Quando estoque do fornecedor seja recebido de forma periódica.

Assim, a publicação ficará ativa, ainda que os produtos não estejam prontos para a venda e os compradores poderão adquiri-los, sabendo o dia exato em que chegarão.

Leve em consideração que quanto mais tempo for adicionado, menos exposição terão as publicações. Sempre mostraremos, em primeiro lugar, aqueles que tiverem estoque disponível, portanto, confira estar utilizando-a apenas quando for necessário.

Nota:
Esta funcionalidade se encontra disponível somente para os sites da Argentina, Brasil, Uruguai, Colômbia e México.

Dentro da seção sale_terms de um item, você poderá especificar o tempo de disponibilidade de estoque de sua publicação utilizando o sale_term MANUFACTURING_TIME.


Chamada:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/categories/$CATEGORY_ID/sale_terms

Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/categories/MLA1577/sale_terms

Resposta:

[
  {
    "id": "INVOICE",
    "name": "Facturación",
    "tags": {
      "hidden": true,
      "multivalued": true
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 1,
    "value_type": "list",
    "values": [
      {
        "id": "6891885",
        "name": "Factura A"
      },
      {
        "id": "6891886",
        "name": "Factura B"
      },
      {
        "id": "6891887",
        "name": "Factura C"
      },
      {
        "id": "6891888",
        "name": "No factura"
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "SUBSCRIBABLE",
    "name": "Suscribible",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "boolean",
    "values": [
      {
        "id": "242084",
        "name": "No",
        "metadata": {
          "value": false
        }
      },
      {
        "id": "242085",
        "name": "Sí",
        "metadata": {
          "value": true
        }
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "PRICE_SUBSCRIPTION",
    "name": "Precio por suscripción",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "SUBSCRIPTION_FREE_SHIPPING",
    "name": "Envío gratis por suscripciones",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "boolean",
    "values": [
      {
        "id": "242084",
        "name": "No",
        "metadata": {
          "value": false
        }
      },
      {
        "id": "242085",
        "name": "Sí",
        "metadata": {
          "value": true
        }
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_1",
    "name": "Precio por nivel 1 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_2",
    "name": "Precio por nivel 2 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_3",
    "name": "Precio por nivel 3 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_4",
    "name": "Precio por nivel 4 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_5",
    "name": "Precio por nivel 5 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_6",
    "name": "Precio por nivel 6 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "CHECKOUT_EXCHANGE_RATE",
    "name": "Tipo de cambio para checkout",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "ARS/USD",
        "name": "ARS/USD"
      }
    ],
    "default_unit": "ARS/USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "DISCOUNT_SUBSCRIPTION",
    "name": "Descuento por suscripciones",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "%",
        "name": "%"
      }
    ],
    "default_unit": "%",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "WARRANTY_TYPE",
    "name": "Tipo de garantía",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "list",
    "values": [
      {
        "id": "2230280",
        "name": "Garantía del vendedor"
      },
      {
        "id": "2230279",
        "name": "Garantía de fábrica"
      },
      {
        "id": "6150835",
        "name": "Sin garantía"
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "WARRANTY_TIME",
    "name": "Tiempo de garantía",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "días",
        "name": "días"
      },
      {
        "id": "meses",
        "name": "meses"
      },
      {
        "id": "años",
        "name": "años"
      }
    ],
    "default_unit": "meses",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "MANUFACTURING_TIME",
    "name": "Tiempo de elaboración",
    "tags": {
      "hidden": true
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "días",
        "name": "días"
      }
    ],
    "default_unit": "días",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  }
]

Considerações

  • No momento de configurar a disponibilidade de estoque, você não pode setear valores superiores a 45 dias.
  • Não poderá especificar essas informações em publicações que correspondam às verticais Imóveis, Automóveis e Serviços.
  • Não será permitido setear tempo de disponibilidade de estoque em itens que permitam envios flex ou pertençam a Fulfillment.
  • Ao adicionar ou modificar o sale term, utilize sempre alguma das unidades disponíveis. Vai achá-las dentro da seção allowed_units. Seguindo o exemplo anterior, você pode apreciar que apenas a unidade “dias” está disponível para ser utilizada dentro da categoria MLA1577.
Nota:
As validações anteriores não serão aplicadas em tempo real ao interagir com o recurso de itens. Na hipótese de que alguma não for cumprida, um warning -com cause_id: 2110 e code: delete.item.sale_terms.manufacturing_time- será retornado, especificando a ação que será executada no segundo plano sobre o sale_term.

Criar item com disponibilidade de estoque

Para criar uma publicação, primeiramente você deverá determinar em que categorias deseja publicar. Para isso, você deveria realizar um GET ao recurso de sale_terms e conferir que esteja na lista.


Chamada:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/categories/$CATEGORY_ID/sale_terms

Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/categories/MLA1577/sale_terms

Resposta:

[
  {
    "id": "INVOICE",
    "name": "Facturación",
    "tags": {
      "hidden": true,
      "multivalued": true
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 1,
    "value_type": "list",
    "values": [
      {
        "id": "6891885",
        "name": "Factura A"
      },
      {
        "id": "6891886",
        "name": "Factura B"
      },
      {
        "id": "6891887",
        "name": "Factura C"
      },
      {
        "id": "6891888",
        "name": "No factura"
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "SUBSCRIBABLE",
    "name": "Suscribible",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "boolean",
    "values": [
      {
        "id": "242084",
        "name": "No",
        "metadata": {
          "value": false
        }
      },
      {
        "id": "242085",
        "name": "Sí",
        "metadata": {
          "value": true
        }
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "PRICE_SUBSCRIPTION",
    "name": "Precio por suscripción",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "SUBSCRIPTION_FREE_SHIPPING",
    "name": "Envío gratis por suscripciones",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "boolean",
    "values": [
      {
        "id": "242084",
        "name": "No",
        "metadata": {
          "value": false
        }
      },
      {
        "id": "242085",
        "name": "Sí",
        "metadata": {
          "value": true
        }
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_1",
    "name": "Precio por nivel 1 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_2",
    "name": "Precio por nivel 2 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_3",
    "name": "Precio por nivel 3 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_4",
    "name": "Precio por nivel 4 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_5",
    "name": "Precio por nivel 5 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_6",
    "name": "Precio por nivel 6 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "CHECKOUT_EXCHANGE_RATE",
    "name": "Tipo de cambio para checkout",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "ARS/USD",
        "name": "ARS/USD"
      }
    ],
    "default_unit": "ARS/USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "DISCOUNT_SUBSCRIPTION",
    "name": "Descuento por suscripciones",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "%",
        "name": "%"
      }
    ],
    "default_unit": "%",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "WARRANTY_TYPE",
    "name": "Tipo de garantía",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "list",
    "values": [
      {
        "id": "2230280",
        "name": "Garantía del vendedor"
      },
      {
        "id": "2230279",
        "name": "Garantía de fábrica"
      },
      {
        "id": "6150835",
        "name": "Sin garantía"
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "WARRANTY_TIME",
    "name": "Tiempo de garantía",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "días",
        "name": "días"
      },
      {
        "id": "meses",
        "name": "meses"
      },
      {
        "id": "años",
        "name": "años"
      }
    ],
    "default_unit": "meses",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "MANUFACTURING_TIME",
    "name": "Tiempo de elaboración",
    "tags": {
      "hidden": true
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "días",
        "name": "días"
      }
    ],
    "default_unit": "días",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  }
]

Finalmente, monte o JSON para gerar a publicação. A seguir lhe mostramos como fazê-lo:


Chamada:

curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" https://api.mercadolibre.com/items  -d

Exemplo:

{
 "site_id":"MLA",
 "title":"Item de testeo, por favor no contactar --kc:off",
 "category_id":"MLA1577",
 "price":4000,
 "currency_id":"ARS",
"pictures": [
      {
        "source": "http://mla-s2-p.mlstatic.com/777099-MLA26466460545_112017-O.jpg"   
 }
  ],
 "buying_mode":"buy_it_now",
 "listing_type_id":"gold_special",
 "condition":"new",
 "available_quantity":10,
 "sale_terms":[
   {
     "id":"MANUFACTURING_TIME",
     "value_name":"20 días"
   } 
]
}

Modificar disponibilidade de estoque

Uma vez criada a publicação, pode somar-lhe MANUFACTURING_TIME na hipótese que não o tenha, ou alterar seu valor quando esteja presente.

Se desejar adicionar MANUFACTURING_TIME a uma publicação, primeiramente faça a checagem de que a categoria dela o permita. Como? Realize um GET para o recurso de sale_terms e valide que a disponibilidade de estoque esteja disponível para ser utilizada.


Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/categories/MLA1577/sale_terms

Resposta:

[
  {
    "id": "INVOICE",
    "name": "Facturación",
    "tags": {
      "hidden": true,
      "multivalued": true
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 1,
    "value_type": "list",
    "values": [
      {
        "id": "6891885",
        "name": "Factura A"
      },
      {
        "id": "6891886",
        "name": "Factura B"
      },
      {
        "id": "6891887",
        "name": "Factura C"
      },
      {
        "id": "6891888",
        "name": "No factura"
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "SUBSCRIBABLE",
    "name": "Suscribible",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "boolean",
    "values": [
      {
        "id": "242084",
        "name": "No",
        "metadata": {
          "value": false
        }
      },
      {
        "id": "242085",
        "name": "Sí",
        "metadata": {
          "value": true
        }
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "PRICE_SUBSCRIPTION",
    "name": "Precio por suscripción",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "SUBSCRIPTION_FREE_SHIPPING",
    "name": "Envío gratis por suscripciones",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "boolean",
    "values": [
      {
        "id": "242084",
        "name": "No",
        "metadata": {
          "value": false
        }
      },
      {
        "id": "242085",
        "name": "Sí",
        "metadata": {
          "value": true
        }
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_1",
    "name": "Precio por nivel 1 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_2",
    "name": "Precio por nivel 2 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_3",
    "name": "Precio por nivel 3 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_4",
    "name": "Precio por nivel 4 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_5",
    "name": "Precio por nivel 5 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "LOYALTY_LEVEL_6",
    "name": "Precio por nivel 6 de loyalty",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "USD",
        "name": "USD"
      },
      {
        "id": "UVA",
        "name": "UVA"
      },
      {
        "id": "ARS",
        "name": "ARS"
      }
    ],
    "default_unit": "USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "CHECKOUT_EXCHANGE_RATE",
    "name": "Tipo de cambio para checkout",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "ARS/USD",
        "name": "ARS/USD"
      }
    ],
    "default_unit": "ARS/USD",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "DISCOUNT_SUBSCRIPTION",
    "name": "Descuento por suscripciones",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "%",
        "name": "%"
      }
    ],
    "default_unit": "%",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "WARRANTY_TYPE",
    "name": "Tipo de garantía",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "list",
    "values": [
      {
        "id": "2230280",
        "name": "Garantía del vendedor"
      },
      {
        "id": "2230279",
        "name": "Garantía de fábrica"
      },
      {
        "id": "6150835",
        "name": "Sin garantía"
      }
    ],
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "WARRANTY_TIME",
    "name": "Tiempo de garantía",
    "tags": {
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "días",
        "name": "días"
      },
      {
        "id": "meses",
        "name": "meses"
      },
      {
        "id": "años",
        "name": "años"
      }
    ],
    "default_unit": "meses",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  },
  {
    "id": "MANUFACTURING_TIME",
    "name": "Tiempo de elaboración",
    "tags": {
      "hidden": true
    },
    "hierarchy": "SALE_TERMS",
    "relevance": 2,
    "value_type": "number_unit",
    "value_max_length": 255,
    "allowed_units": [
      {
        "id": "días",
        "name": "días"
      }
    ],
    "default_unit": "días",
    "attribute_group_id": "OTHERS",
    "attribute_group_name": "Otros"
  }
]

Uma vez checado, monte o JSON para modificar a publicação e somar MANUFACTURING_TIME a ela. Veja como fazê-lo:


Chamada:

curl -X PUT -H 'Content-Type: application/json' -H 'Authorization: Bearer $ACCESS_TOKEN'https://api.mercadolibre.com/items/$ITEM_ID  -d

Exemplo:

{
   "sale_terms": [{
       "id": "MANUFACTURING_TIME",
       "value_name": "20 días"
   }]
}

Na hipótese que a publicação já possua MANUFACTURING_TIME e somente deseje modificar seu valor, realize um PUT similar ao anterior, especificando o novo valor do sale_term em value_name.


Chamada:

curl -X PUT -H 'Content-Type: application/json' -H 'Authorization: Bearer $ACCESS_TOKEN'https://api.mercadolibre.com/items/$ITEM_ID -d

Exemplo:

{
   "sale_terms": [{
       "id": "MANUFACTURING_TIME",
       "value_name": "30 días"
   }]
}

Eliminar disponibilidade de estoque

Para eliminar o sale term MANUFACTURING_TIME, envie null nos campos value_id e value_name dele.


Chamada:

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Content-Type: application/json' https://api.mercadolibre.com/items/$ITEM_ID -d

Exemplo:

{
  "sale_terms": [
    {
      "id": "MANUFACTURING_TIME",
      "value_id": null
      "value_name": null
    }
  ]
}

Quantidade máxima de compra

No contexto do consumo responsável pela Covid-19, limitamos o número de itens por compra para evitar o abuso e a escassez de produtos essenciais na categoria Supermercado. Verifique se a categoria possui a condição quantidade máxima de compra por operação com $CATEGORY_ID.

Exemplo:

curl -X PUT 'Authorization: Bearer $ACCESS_TOKEN' -H 'Content-Type: application/json' https://api.mercadolibre.com/items/$ITEM_ID

Resposta:

[
[...]
{
        "id": "PURCHASE_MAX_QUANTITY",
        "name": "Cantidad máxima de compra",
        "tags": {
            "hidden": true,
            "read_only": true
        },
        "hierarchy": "SALE_TERMS",
        "relevance": 2,
        "value_type": "number",
        "value_max_length": 18,
        "attribute_group_id": "OTHERS",
        "attribute_group_name": "Otros"
    }
[...]
]

Carregue o valor máximo de compra em uma publicação

Chamada:

curl -H 'Content-Type: application/json' -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID  -d

Exemplo:

curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H "Content-Type: application/json" -H "Accept: application/json" -d
{
   "sale_terms":[
      {
         "id":"PURCHASE_MAX_QUANTITY",
         "value_name":"10"
      }
   ]
}
https://api.mercadolibre.com/items/ITEM_ID

Exemplo de um produto com esta condição:

Chamada:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/$ITEM_ID

Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/MLA847983293

Resposta:

"title": "Alcohol En Gel 500 Ml Botella Pet",
...
"sale_terms": [
        {
            "id": "PURCHASE_MAX_QUANTITY",
            "name": "Cantidad máxima de compra",
            "value_id": null,
            "value_name": "10",
            "value_struct": null,
            "values": [
                {
                    "id": null,
                    "name": "10",
                    "struct": null
                }
            ]
        }
]
[...]

Nesse caso, a quantidade máxima a ser comprada é de 10 unidades.

Nota:
Vamos revisar os valores inseridos que estão abaixo do valor mínimo permitido "1" em um processo off-line, eliminando o sale_term dos casos que não atendem ao requisito.


Preços competitivos (disponível só no México e no Brasil)

Queremos que o Mercado Livre seja o site onde os compradores encontremm os preços mais atraentes do mercado. Por isso, agora marcaremos os anúncios que têm preços pouco competitivos, para que os vendedores possam alterá-los facilmente. Eles terão uma faixa de preços estabelecida com base em uma análise de mercado, e uma data para fazer a alteração. Após esse dia, perderão exposição nas listas.
Para poder reconhecê-los, você só terá que procurar aqueles que têm a tag "not_market_price". A seguir, vamos lhe mostrar como fazer.Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/ITEM_ID

Resposta:

{
  "id": "MLM600190449",
  "site_id": "MLM",
  "title": "Item de test - Por favor no ofertar",
  "subtitle": null,
  "seller_id": 118617934,
  "category_id": "MLM352543",
  "tags": [
“not_market_price”
    ],
}

Você poderá fazer uma pesquisa de seus próprios itens com a tag atribuída da seguinte maneira: Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/users/USER_ID/items/search?tags=not_market_price

Quando tiver reconhecido os itens marcados como “not_market_price”, fazendo um GET para /items/${item_id}/policies/market_price, você vai encontrar a faixa de preços para modificá-lo e a data limite para fazer a alteração. Se você não alterar os preços antes desse dia, os anúncios perderão exposição nas listas.Exemplo:

curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/items/ITEM_ID/policies/market_price

Resposta:

{
   "item_id":"MLB10000",
   "suggested_price_range": {
       "currency": "BRL",
       "min_amount": 648.93,
       "max_amount": 689.07
   },
   "deadline": "2018-09-13T00:00:00.000Z"
}
Importante:
A tag "not_market_price" será eliminada do item 24h após feita a alteração do preço, desde que o mesmo se torne competitivo. Caso tenha perdido exposição nas listas, a mesma será recuperada após 48h.

Próximo: Gerenciamento de contatos.

ou registre-se para receber as últimas notícias sobre nossa API