Nova modalidade para realizar pesquisas com o recurso /search

21 dezembro 2017

Todas as pesquisas relacionadas a Itens da forma users/{Cust_id}/items/search, Perguntas e Respostas da forma /questions/search deverão ser realizadas com access token. Caso não seja feito assim, haverá uma falha.

Novos recursos (Scan + Hash)

Todas as pesquisas realizadas na API de Itens, Perguntas e Respostas da forma users/{Cust_id}/items/search ou /questions/search maior a 1.000 deverão ter o novo parâmetro search_type=scan sem utilizar o parâmetro offset.
Nota: caso você precise consultar menos de 1.000 dados, poderá continuar fazendo como até agora (com offset).

Os passos para consultar mais de 1.000 resultados são os seguintes:

  • Adicionar search_type=scan na consulta e remover o offset.
  • No resultado, você vai obter um campo scroll_id.
  • Terá que adicionar scroll_id na consulta, igual ao campo obtido anteriormente.
  • Serão retornados resultados a partir de 1.000.
  • Se não for utilizado o parâmetro limit, serão retornados por default 50 itens do total. Poderá adicionar um limit máximo de 100.
  • Para continuar obtendo as próximas páginas de resultados, só deverá fazer o mesmo GET na chamada até chegar no final da lista.

A seguir, mostramos passo a passo como fazer:

– Adicionar search_type=scan para obter o scroll_id:

Items

https://api.mercadolibre.com/users/{Cust_id}/items/search?search_type=scan&access_token=$ACCESS_TOKEN

Questions

https://api.mercadolibre.com/questions/search?search_type=scan&item={Item_id}&access_token=$ACCESS_TOKEN

Respuesta

"scroll_id": "YXBpY29yZS1pdGVtcw==:ZHMtYXBpY29yZS1pdGVtcy0wMQ==:DXF1ZXJ5QW5kRmV0Y2gBAAAAABIu7AgWMXl6anF3SU5SMVNaQXFxTkZubHBqQQ=="

– Adicionamos o scroll_id= obtido no passo anterior:

https://api.mercadolibre.com/users/{Cust_id}/items/search?search_type=scan&access_token=$ACCESS_TOKEN&scroll_id=YXBpY29yZS1pdGVtcw==:ZHMtYXBpY29yZS1pdGVtcy0wMQ==:DXF1ZXJ5QW5kRmV0Y2gBAAAAABIu7AgWMXl6anF3SU5SMVNaQXFxTkZubHBqQQ==

Para continuar obtendo as próximas páginas de resultados, só deverá fazer o mesmo GET na chamada até chegar no final da lista.

Você vai saber que chegou no final quando esse GET retornar null.