Mercado Libre
API de preguntas de Mercado Libre
Una página de preguntas de compradores en una publicación de Mercado Libre, con las respuestas del vendedor y la fecha de cada respuesta. Mercado Libre no muestra la fecha de las preguntas. Pagina con next_offset. Cuesta 2 créditos por solicitud.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonitem_idstringId del artículo (publicación), tal como lo devuelve Búsqueda o Producto en item_id. También se acepta MLM-3571336480. Pasa exactamente uno de item_id o url.
Example: MLM3571336480
urlstringUna URL de página de publicación, o una URL de producto (/p/, /up/): las preguntas de un producto son las de la publicación que está en su buy box.
Example: https://www.mercadolibre.com.mx/apple-iphone-15-128-gb-azul-distribuidor-autorizado/p/MLM1027172667
offsetintegerdefault:0Desde dónde empezar: el next_offset de la página anterior.
Example: 20
Notes
Fecha de respuesta, sin fecha de pregunta. Cada pregunta trae la respuesta del vendedor y la fecha en que respondió (answer.date, YYYY-MM-DD). Mercado Libre no muestra cuándo se hizo una pregunta, así que no hay fecha de pregunta. answer es null en una pregunta sin responder.
Paginación. La primera página trae de 20 a 40 preguntas. Pasa next_offset como offset para la página siguiente; es null en la última página.
- Las preguntas pertenecen a una publicación (
item_id), no a un producto de catálogo. Si pasas una URL de producto, la API lee las preguntas de la publicación que está en su buy box; en ese casoresolved_fromindica el producto de partida. No se acepta unproduct_idsolo: toma elitem_idde Búsqueda o Producto. - Una publicación sin preguntas públicas devuelve 404 y se cobra. Un producto sin nada en su buy box también devuelve 404. Las fallas temporales (502/503) nunca se cobran.
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
offset = 0
while offset is not None:
res = client.mercadolibre.questions("MLM3571336480", offset=offset)
data = res["data"]
for q in data["questions"]:
answer = q["answer"]
print(q["text"], "->", answer["text"] if answer else "(unanswered)")
offset = data["next_offset"]Response