Documentación de la API

Conecte Data Enricher a su propia plataforma, PIM o script de importación. Una API REST, JSON de entrada y JSON de salida.

Acceso y claves

Cada tienda recibe su propia clave: ma- seguido de 32 caracteres. Envíela en la cabecera X-Worker-Key (o Authorization: Bearer). Una clave solo funciona para los dominios de tienda asociados a ella; envíe el dominio en X-Shop-Domain.

POST /lookup HTTP/1.1
Host: api.data-enricher.com
X-Worker-Key: ma-…
X-Shop-Domain: yourstore.com
Content-Type: application/json

Cada clave tiene un límite mensual de solicitudes. Las respuestas de la caché no cuentan. Solicite una clave mediante la página de contacto.

POST /lookup

Busca un producto por su EAN y devuelve los datos y las fotos verificadas. Se validan EAN-8, UPC-A, EAN-13 y GTIN-14, incluido el dígito de control; UPC-A se convierte en EAN-13.

{"ean": "7333377653917", "name": "Husqvarna 550i XP", "refresh": false}
CampoSignificado
eanObligatorio. El código de barras del producto.
nameOpcional. El nombre en su tienda; ayuda con EAN que no son claros en línea. Como máximo 128 caracteres.
refreshOpcional. true vuelve a buscar en lugar de utilizar la caché.
{"result": {
  "ean": "7333377653917", "identified": true, "name": "Husqvarna 550i XP",
  "description": "…", "specs": {"Battery voltage": "36 V"},
  "images": {"in_use": ["https://…"], "product": ["https://…"]},
  "sources": ["https://…"], "cached": false, "credits_used": 0, "search": "free"
}}

Se devuelven como máximo ocho fotos, primero las de «en uso», reservando siempre espacio para al menos tres fotos del producto cuando existen. Los errores se indican en result.error; en ese caso no se almacena nada, por lo que puede volver a intentarlo más tarde.

POST /text

Redacta los textos del producto en un idioma: título, descripción corta y larga, título meta y descripción meta.

{"ean": "7333377653917", "name": "Husqvarna 550i XP", "language": "en", "format": "html"}

language es un código ISO: nl, en, de, fr, es, it, pt, pl, da, sv, no, fi, cs, ro, zh, ja, ru o ko. Cualquier otro código recurre al inglés, con un warning. format es html o text.

Además de la description lista para usar, recibe la descripción por partes: intro_html y sections (características, razones para elegirlo, ventajas, desventajas, contenido de la caja, preguntas frecuentes, sobre la marca), cada una con un encabezado en el idioma del texto. Componga su propia descripción con las secciones y el orden que prefiera. details también contiene todo como datos: especificaciones, propiedades, palabras clave, colores, materiales y tamaños.

POST /page-text

Textos para una página de categoría o marca: una descripción corta para la parte superior, una descripción larga por secciones, un título meta y una descripción meta, con enlaces internos a páginas de su propia tienda.

{"type": "category", "entity_id": 12, "name": "Chainsaws", "language": "en",
 "path": "Garden > Chainsaws", "subcategories": ["Cordless chainsaws"],
 "brands": ["Husqvarna"], "products": ["Husqvarna 550i XP"],
 "links": [{"type": "subcategory", "title": "Cordless chainsaws", "url": "https://yourstore.com/cordless-chainsaws"}],
 "shop_name": "Your Store"}

Los enlaces solo llevan a las URL que envía, cada URL como máximo una vez y hasta seis por texto. Para una marca ("type": "brand"), envíe categories en lugar de subcategories y brands; la API también buscará la marca en la web.

POST /jobs

Hasta veinte EAN a la vez, con cinco búsquedas simultáneas. Recibe un job_id inmediatamente.

{"items": [{"ean": "7333377653917", "name": "Husqvarna 550i XP"}, {"ean": "8716637053167"}]}

Siga el progreso con GET /jobs/{job_id}: status es queued, running o done, y results conserva el orden de su solicitud.

GET /usage

Su uso y límites en el periodo actual: solicitudes, créditos y tokens de IA.

Errores

EstadoSignificado
400JSON no válido.
403Clave incorrecta o el dominio de la tienda no está asociado a la clave.
413La solicitud es demasiado grande.
422No hay EAN válidos en un lote.
429Demasiadas solicitudes o se ha alcanzado el límite de su plan.

Los errores de contenido, como un producto que no se encuentra, se devuelven con estado 200 y un error en el resultado.

Preguntas sobre la API

¿Cómo consigo una clave de API?

Solicita una clave a través de la página de contacto. Cada tienda recibe su propia clave, que solo funciona para los dominios de tienda que le pertenecen.

¿Las solicitudes repetidas cuentan para mi límite?

No. Las respuestas de la caché no cuentan.

¿Cuántos EAN se pueden enviar a la vez?

Hasta veinte en un lote a través de jobs. De ellos, cinco se buscan al mismo tiempo.

¿Qué pasa si no se encuentra un producto?

Entonces recibes el estado 200 con un error en el resultado. No se almacena nada, por lo que puedes intentarlo de nuevo más tarde.