> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Información general

> Conozca qué endpoints de la Product Recommendation API importan su catálogo y devuelven recomendaciones y resultados de búsqueda, y cómo probarlos en Postman.

La Product Recommendation API es una API REST que importa su catálogo de productos a Kameleoon y devuelve a su código recomendaciones de producto personalizadas y resultados de búsqueda. La API está pensada para proyectos que usan los add-ons Product Recommendation y Search Personalization. Su código controla cómo se muestra cada producto, y puede registrar y depurar cada llamada con sus propias herramientas.

## Qué hace la API

La API tiene cuatro grupos de endpoints. Cada grupo cubre una parte de una integración.

* **Inicializar:** Inicie una sesión para obtener el ID de dispositivo y el ID de sesión que usan las solicitudes de recomendación y de búsqueda.
* **Importar:** Cargue categorías, productos y pedidos, actualice la disponibilidad de los productos y elimine productos.
* **Recomendar:** Recupere recomendaciones personalizadas para un bloque de recomendación, recupere una colección de productos o solicite una lista de productos filtrada.
* **Búsqueda:** Recupere resultados de búsqueda instantáneos o completos para la consulta de un visitante.

## Antes de empezar

* **Add-ons:** La API está pensada para proyectos que usan los add-ons Product Recommendation y Search Personalization.
* **Store Key:** Encontrará la Store Key en **Recommendations** > **Settings** > **Store settings** de la aplicación de Kameleoon. Las solicitudes la envían como `shop_id`.
* **Secret Key:** Encontrará la Secret Key en el mismo lugar. Las solicitudes de importación la envían como `shop_secret`.

Si lo necesita, contacte con su Customer Success Manager para cualquiera de las dos claves.

## Importar su catálogo

Las recomendaciones provienen de los productos de su catálogo, así que importe sus datos antes de solicitar recomendaciones. Importe las categorías antes de cargar los productos, para que la importación de productos use categorías actualizadas.

Use el endpoint **Import and update products** para catálogos con más de 50.000 productos, y evite volver a importar el catálogo completo cada día. Para un cambio más ligero, use el endpoint **Update available products** para cambiar la disponibilidad de productos existentes.

Cada solicitud de importación incluye su Secret Key en el cuerpo, así que envíe las solicitudes de importación desde su backend y no desde un navegador o una aplicación.

Para ver los pasos completos de importación, consulte el [tutorial de importación del catálogo](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/tutorials/import-a-product-catalog-into-kameleoon-using-the-product-recommendation-api.md).

## Cómo funcionan las solicitudes de recomendación

Las solicitudes de recomendación y de búsqueda usan dos ID: el ID de dispositivo (`did`) y el ID de sesión (`sid`). Antes de llamar a cualquier otro endpoint, llame a **Initialize session** para obtener ambos.

### Inicializar una sesión

Inicie una sesión para obtener el ID de dispositivo y el ID de sesión que necesitan sus demás solicitudes. Envíe una solicitud `GET` a `https://api.products.kameleoon.com/init` con su Store Key como parámetro de consulta `shop_id`.

Llame a **Initialize session** en un momento que depende de su plataforma:

* **cURL:** Cada vez que su servidor renderiza la página.
* **Web:** Cada vez que el usuario abre la página, incluidas las aplicaciones de página única (single-page applications).
* **iOS and Android:** Cada vez que se inicia la aplicación.

En el primer inicio en un dispositivo nuevo, llame a **Initialize session** sin ID de dispositivo. La API genera uno, y usted lo usa en todas las solicitudes posteriores.

Si llama a la API desde su backend con Web Experimentation, guarde el ID de sesión en la cookie `KameleoonProducts_session_code` y el ID de dispositivo en la cookie `KameleoonProducts_device_id`.

## Probar la API en Postman

Pruebe las solicitudes de la Product Recommendation API sin escribir código con la colección Kameleoon Product Recommendation API en Postman. La colección tiene una solicitud para cada endpoint.

1. [Descargue la colección Kameleoon Product Recommendation API](https://storage.googleapis.com/kameleoon-storage-documentation/developer-docs/downloads/apis/product-recommendation-api-rest/kameleoon-product-recommendation-api.postman_collection.zip) como archivo ZIP, extraiga el archivo JSON e impórtelo en Postman.
2. En la pestaña **Variables** de la colección, establezca `shopId` con su Store Key y `shopSecret` con su Secret Key. Encontrará ambas en **Recommendations** > **Settings** > **Store settings** de la aplicación de Kameleoon.
3. Envíe **Initialize session**. La solicitud guarda el ID de dispositivo y el ID de sesión en las variables `did` y `sid`, que usan las demás solicitudes.
4. Establezca `recommenderCode` o `collectionId` para la solicitud que quiera probar y envíela.

Las solicitudes de importación modifican su catálogo de productos, así que revise el cuerpo de la solicitud antes de enviarla.

## Referencia de API

Cada endpoint tiene una página de referencia con sus parámetros y ejemplos.

| Endpoint | Propósito | Referencia |
| - | - | - |
| `GET /init` | Inicia una sesión y devuelve el ID de dispositivo y el ID de sesión. | [Inicializar sesión](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Initialize/init.md) |
| `POST /import/categories` | Importa su jerarquía de categorías de producto. | [Importar categorías](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Import/import-categories.md) |
| `POST /sync/orders` | Importa o actualiza pedidos de transacción y sus líneas de pedido. | [Importar pedidos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Import/import-orders.md) |
| `PUT /import/products` | Importa o actualiza su catálogo de productos. | [Importar y actualizar productos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Import/import-product.md) |
| `PATCH /import/products` | Actualiza la lista de productos en stock. | [Actualizar productos disponibles](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Import/update-products.md) |
| `DELETE /import/products` | Elimina productos por ID. | [Eliminar productos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Import/remove-products.md) |
| `GET /recommend/{recommender_code}` | Devuelve recomendaciones de producto personalizadas para un bloque de recomendación. | [Obtener recomendaciones de producto](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Recommend/get-recommend.md) |
| `GET /collection/{collection_id}` | Devuelve una colección de productos configurada y su plantilla HTML. | [Recuperar colección](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Recommend/get-collection.md) |
| `GET /products` | Devuelve una lista filtrada de productos. | [Solicitar lista de productos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Recommend/get-product-list.md) |
| `GET /search` | Devuelve resultados de búsqueda de productos instantáneos o completos. | [Recuperar resultados de búsqueda](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/all-endpoints/Search/get-search.md) |

## Guías

Cada guía le acompaña en una tarea con estos endpoints.

* [Importar un catálogo de productos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/tutorials/import-a-product-catalog-into-kameleoon-using-the-product-recommendation-api.md): Importe categorías, productos y actualizaciones de disponibilidad.
* [Modificar productos del catálogo](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/tutorials/modifying-products-in-the-products-catalog.md): Elimine productos y actualice su disponibilidad.
* [Recuperar recomendaciones de productos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/tutorials/retrieving-product-recommendations.md): Muestre recomendaciones en su aplicación web o móvil.
* [Recuperar colecciones de productos](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/tutorials/retrieving-product-collections.md): Muestre colecciones de productos en su aplicación web o móvil.
* [Implementar la lógica de búsqueda](https://docs.kameleoon.com/es/developer-docs/apis/product-recommendation-api-rest/tutorials/implement-search-logic-in-your-backend-or-mobile-app.md): Muestre resultados de búsqueda instantáneos y completos en su backend o aplicación móvil.
