20 % de descuento en todos los planes de pago con el código

Compras · Otto

API de datos de productos de Otto

La API de datos de productos de Otto te da datos de Otto en tiempo real en el momento en que los pides, limpios y estructurados, listos para tu propia app, una hoja de cálculo o un asistente de IA. Sin scraping, nada que mantener.

100 solicitudes gratis al mes · sin tarjeta de crédito · una clave de API para todas las plataformas

Datos clave

Actualizado el

Nota de estado: otto.de bloquea actualmente el acceso automatizado a las páginas de producto, así que /ott/otto-lookup-product responde 502 (sin coste) hasta que se resuelva; los endpoints de búsqueda y reseñas de Otto funcionan con normalidad. otto.de es la segunda mayor tienda online de Alemania, y sus páginas de producto giran en torno a las variantes: una zapatilla existe en doce tallas y cuatro colores, un sofá en tres tapicerías y dos orientaciones, y cada combinación tiene su propio variationId, precio y promesa de entrega. La API de datos de productos de Otto de everydata.io obtiene una página de producto por URL, incluido el fragmento #variationId, y devuelve la variante seleccionada junto con todas sus hermanas en un único documento JSON, para que nunca tengas que reconstruir la matriz desde una sesión de navegador.

Plataforma
Otto
Endpoint principal
/otto-lookup-product
Cuota por llamada
2 solicitudes
Plan gratuito
100 solicitudes / mesdespués, desde 30 € / mes
Lo que obtienes

Datos de Otto, listos para usar

El nivel superior refleja la página de producto alemana. productTitle y manufacturer te dan el nombre y la marca, productDescription el texto comercial, features la lista de viñetas y productDetails la tabla de especificaciones clave/valor con etiquetas en alemán como Größe, Farbe o Material. imageUrlList contiene las URL de los recursos de i.otto.de y mainImage la imagen principal.

Los precios se devuelven como números en EUR: price es lo que paga el cliente por la variante seleccionada, retailPrice el precio de referencia tachado (110 para una zapatilla que ahora se vende a 69,99), priceSaving la insignia de descuento tal como la imprime Otto ("-36%") y shippingPrice el recargo de envío, importante en muebles y grandes electrodomésticos. warehouseAvailability contiene la frase de stock de Otto, por ejemplo "lieferbar - in 2-3 Werktagen bei dir".

variations agrupa cada dimensión (size, color) con sus valores, y cada valor indica su propio asin/variationId, price, retailPrice, available e indicador selected. Es justo lo que necesitas para saber que la talla 36 está agotada mientras la 39 está en stock a otro precio.

  • productTitle, manufacturer, productDescription, features y la tabla de especificaciones productDetails
  • price, retailPrice, priceSaving y shippingPrice como campos numéricos en EUR, más la frase warehouseAvailability
  • productId y variationId del artículo seleccionado, en línea con la URL que pasaste
  • Matriz completa de variantes con precio, disponibilidad e indicador selected por valor
  • imageUrlList y mainImage de i.otto.de, listas para tu propia CDN o tus fichas de producto
  • productRating y countReview como el agregado que se muestra en la parte superior de la página
  • Consulta en tiempo real en cada llamada: no hay ninguna caché compartida entre tú y otto.de
Casos de uso

Lo que los equipos construyen con esto

Enriquecimiento de catálogo en DACH

Completa en tu PIM títulos, viñetas, tablas de especificaciones e imágenes en alemán a partir de la URL de Otto. Como las etiquetas llegan tal como las imprime Otto, las tiendas en alemán pueden reutilizarlas sin traducir.

Seguimiento de surtido y disponibilidad

Marcas y agencias vuelven a consultar sus anuncios de otto.de para ver qué tallas o colores están marcados como available: false, cómo cambia la matriz de variantes a lo largo de la temporada y si se han cambiado las imágenes.

Análisis de la competencia a nivel de variante

Compara el array de precios por valor del sofá o el colchón de un competidor entre tapicerías y tamaños: Otto suele poner precios distintos a las variantes de un mismo producto.

Contenido de comparación y de afiliados

Muestra fichas de producto en directo con valoración, número de reseñas, insignia de descuento y línea de entrega, y enlaza al variationId exacto en el que hizo clic tu lector.

Cómo funciona

Solicitud y respuesta de ejemplo

Copia la URL del navegador. Otto codifica el producto como /p/<slug>-C<productId>/ y añade #variationId=<id> cuando eliges una talla o un color; conserva ese fragmento si quieres la variante exacta, o quítalo para recibir la selección por defecto de Otto. El endpoint es GET /ott/otto-lookup-product con un único parámetro url.

GET /ott/otto-lookup-product

curl "https://api.everydata.io/ott/otto-lookup-product?url=https%3A%2F%2Fwww.otto.de%2Fp%2Freebok-astroride-trail-gt-x-2-0-laufschuh-damen-laufschuh-C887844716%2F%23variationId%3D887846268" \
  -H "x-api-key: YOUR_API_KEY"

Respuesta (abreviada)

200 OK · application/json
{
  "responseStatus": "PRODUCT_FOUND_RESPONSE",
  "responseMessage": "Product successfully found!",
  "productTitle": "Reebok Astroride Trail GT-X 2.0 Laufschuh Damen Laufschuh",
  "manufacturer": "Reebok",
  "productId": "887844716",
  "variationId": "887846268",
  "countReview": 345,
  "productRating": "4.5",
  "warehouseAvailability": "lieferbar - in 2-3 Werktagen bei dir",
  "retailPrice": 110,
  "price": 69.99,
  "shippingPrice": 0,
  "priceSaving": "-36%",
  "features": [
    "Atmungsaktive, wasserdichte Konstruktion",
    "Unifarbenes Design"
  ],
  "productDetails": [
    {
      "name": "Größe",
      "value": "6 US - 36 EU - 3.5 UK"
    },
    {
      "name": "Farbe",
      "value": "schwarz"
    }
  ],
  "variations": [
    {
      "variationName": "size",
      "values": [
        {
          "value": "5 US - 35 EU - 2.5 UK",
          "asin": "S097Q0IYYLE2",
          "selected": false,
          "available": false,
          "price": 69.97,
          "retailPrice": 0
        }
      ]
    },
    {
      "variationName": "color",
      "values": [
        {
          "value": "schwarz",
          "asin": "887846268",
          "selected": true,
          "available": true,
          "price": 69.99,
          "retailPrice": 0
        }
      ]
    }
  ]
}

El campo asin de las respuestas de Otto es simplemente el productId repetido: Otto no tiene el concepto de ASIN, y el nombre se mantiene para que la respuesta tenga la misma forma que nuestros otros endpoints de retail. Usa productId cuando llames después a GET /ott/otto-lookup-reviews, que recorre las reseñas de clientes con page y un sortBy opcional (mostHelpful, mostPositive, mostNegative, newest).

soldBy y sellerId son null en la mayoría de los artículos porque los vende la propia Otto; se rellenan para la creciente proporción de partners del marketplace en otto.de. deliveryMessage es null en la página de detalle y se rellena en los resultados de búsqueda, así que aquí lee la frase de stock de warehouseAvailability.

Un 404 con cuerpo statusMessage significa que otto.de no mostró ningún producto para esa URL, normalmente un artículo descatalogado o una errata en el número C. Los bloqueos y timeouts del sitio de origen llegan como 502/503 y no se descuentan de tu cuota.

Endpoints relacionados

GET/ott/otto-lookup-product

Detalles del producto. Página de producto por URL. No disponible temporalmente (protección antibots de otto.de): devuelve 502 y no se cobra.

GET/ott/otto-lookup-reviews

Reseñas. Reseñas paginadas de un producto.

GET/ott/otto-search-by-keyword

Buscar productos. Búsqueda por palabra clave con paginación: título, precio, valoración e imagen de cada producto.

Referencia completa de la API
Precios

Paga por solicitud, con todas las plataformas incluidas

Una página de producto es una solicitud y cuenta 2 unidades de cuota, porque las páginas de producto de Otto a menudo necesitan un navegador, tenga las variantes que tenga. Las 100 unidades al mes del plan gratuito (50 páginas de producto) bastan para mapear unas pocas familias de productos; Starter (5000 unidades, 30 €) actualiza cada día unos 80 anuncios de Otto, y Production (50.000, 80 €), unos 800. Las páginas de búsqueda cuentan 1 unidad. Las solicitudes que fallan por parte de otto.de nunca se cobran.

Free
100 solicitudes / mes
Starter
5000 solicitudes · 30 €
Production
50.000 solicitudes · 80 €
Business
300.000 solicitudes · 300 €

API de datos de productos de Otto: preguntas frecuentes

¿Tengo que incluir el fragmento #variationId?

No. Sin él, Otto muestra su variante por defecto y el variationId de la respuesta te dice cuál era. Inclúyelo cuando necesites una talla o un color concretos, o lee el array variations y sigue el asin del valor que quieras.

¿Qué países cubre el endpoint de Otto?

Solo otto.de. La tienda envía dentro de Alemania, los precios están en EUR con IVA incluido y todos los campos de texto están en alemán. Este endpoint no tiene parámetro domainCode.

¿Puedo consultar un producto por EAN o número de artículo?

No directamente. Pasa el EAN o el número del fabricante por GET /ott/otto-search-by-keyword; otto.de suele listar primero el producto correspondiente, y el dpUrl del resultado te da la URL para el endpoint de producto.

¿Por qué retailPrice es a veces 0?

Un retailPrice de 0 significa que Otto no muestra precio de referencia tachado para esa variante: el artículo se vende a su precio habitual. Trata 0 como "sin precio de referencia", no como gratis.

¿La respuesta de producto incluye las reseñas de clientes?

El endpoint de producto devuelve el agregado productRating y countReview. Las reseñas individuales con texto, valoración, fecha y la variante del autor vienen de /ott/otto-lookup-reviews, paginadas con page y ordenadas con sortBy.

Obtén tu primer producto de otto.de

Regístrate gratis, pega una URL de otto.de con su variationId y recibe toda la familia de productos en JSON: 100 unidades de cuota al mes incluidas.