Cómo integrar la API v3 de búsqueda de Impresee
Este documento describe cómo integrar los servicios de búsqueda visual de Impresee en tu tienda en línea.
Pasos previos
- Obtener un Impresee app
UUID
, el cual es una cadena de 36 caracteres. Este código puede ser generado en nuestro Impresee Console o puedes solicitarnos que creemos uno por ti. - Una imagen
jpg
para probar la integración (para más detalles ver nuestras recomendaciones para imágenes).
Consulta
La búsqueda por imagen de impresee es un servicio REST
qu toma una imagen y/o texto y busca dentro de uno o más catálogos. El servicio se llama enviando una consulta POST
a la URL:
https://api.impresee.com/ImpreseeSearch/api/v3/search/text/<your_impresee_application_UUID>
El cuerpo de la consulta es un JSON
:
1. Para la búsqueda por imagen:
query_image
: UnJSON
con un parámetroimage_base64
, el que corresponde a la imagen en base 64.
Un ejemplo de este JSON se puede ver abajo
{
"query_image": {
"image_base64":
"/9j/4AAQSkZJRgABAQAAAwADAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAAB/AAAAMgAAAH8AAAAyAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAAGgAwAEAAAAAQAAAAEAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/AABEIAAEAAQMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDABQODxIPDRQSEBIXFRQYHjIhHhwcHj0sLiQySUBMS0dARkVQWnNiUFVtVkVGZIhlbXd7gYKBTmCNl4x9lnN+gXz/2wBDARUXFx4aHjshITt8U0ZTfHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHz/3QAEAAH/2gAMAwEAAhEDEQA/AOMooooA/9k="
}
}
2. Para la búsqueda por dibujo:
query_sketch
: UnJSON
con un parámetrosketch_base64
, el que corresponde al dibujo en base 64.
Un ejemplo de este JSON se puede ver abajo
{
"query_sketch": {
"sketch_base64":
"/9j/4AAQSkZJRgABAQAAAwADAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAAB/AAAAMgAAAH8AAAAyAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAAGgAwAEAAAAAQAAAAEAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/AABEIAAEAAQMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDABQODxIPDRQSEBIXFRQYHjIhHhwcHj0sLiQySUBMS0dARkVQWnNiUFVtVkVGZIhlbXd7gYKBTmCNl4x9lnN+gXz/2wBDARUXFx4aHjshITt8U0ZTfHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHz/3QAEAAH/2gAMAwEAAhEDEQA/AOMooooA/9k="
}
}
Recuerda: Para ejecutar una búsqueda visual NO NECESITAS incluer el parámetro search_text
a no ser que quieras buscar por imagen y texto al mismo tiempo.
Respuesta
El servicio de búsqueda retorna un JSON con la lista de productos que cumplen con las condiciones y atributos especificados en la consulta..
Es siguiente es un JSON de respuesta:
Cada producto tiene la siguiente información:
Usando tu cuenta en Impresee Console podrás configurar los atributos que se exportarán en el JSON. In this way, it is possible to display extra information about each product.
Impresee proporciona una biblioteca JavaScript que se puede configurar fácilmente para integrar el motor de búsqueda con cualquier sitio web en poco tiempo. Se pueden encontrar más detalles sobre la biblioteca para la integración y cómo integrar la búsqueda visual aquí.
Recomendaciones de imágenes
Para obtener buenos resultados de búsqueda y buenos tiempos de carga, se deben tener dos consideraciones:
- Tamaño y calidad de la imagen: Una imagen grande y con mucha calidad suele ser muy pesada (estamos hablando de megas). Subir imágenes de estas características puede tardar demasiado, sin aportar ninguna ventaja en cuanto a la calidad de los resultados de búsqueda. Recomendamos cambiar el tamaño de la imagen y cambiar su calidad antes de codificarla en base64. Los valores recomendados son:
- Lado más largo de 480 píxeles.
- Calidad del 75%.
Esto debiese entregar un tamaño cercano a 50KB.
- El objeto en la imagen de consulta debe estar centrado: Para obtener buenos resultados de búsqueda el objeto que se busca debe estar en el centro de la imagen.
Aunque aplicamos la detección de objetos, recomendamos tener una imagen con los elementos en el centro de la imagen.