API para Marketplaces | ANYMARKET
Bienvenido a la documentación de la API de ANYMARKET para Marketplaces.
Esta documentación pretende guiar las reglas y comportamientos esperados en la construcción del middleware responsable de integrar la información entre ANYMARKET y MARKETPLACE.

El gestor de la integracióm debe construir una aplicación Middleware siguiendo los estándares de los endpoints establecidos en el tema de “remotes”. Estas remotes serán las vías por las que ANYMARKET enviará las notificaciones o consultas para completar las acciones realizadas por el vendedor.
{{URL_MIDDLEWARE}}\sendproduct
{{URL_MIDDLEWARE}}\brands
Tras recibir las notificaciones y consultas que ANYMARKET reenvía al middleware, éste deberá interpretar las llamadas y realizar las acciones oportunas para completar las peticiones del Vendedor, que pueden ser procesamientos internos del propio Marketplace o llamadas a la API de ANYMARKET para insertar información, actualizar o consumir datos relevantes para la acción que se está realizando.
La aplicación Middleware se dividirá en dos etapas de operaciones que nombraremos:
REMOTES
Las remotes serán las "rutas" que debe contener su API. La API de ANYMARKET funcionará com un sistema de notificaciones en el que ya tenemos preparados los mandos que se activarán en la URL base de la API de la que nos informó al rellenar el documento de lanzamiento.
API ANYMARKET
Conjunto de APIs de ANYMARKET que permiten al middleware insertar información, actualizar o consumir datos pertinentes a la acción que se está ejecutando.
En la imagen de abajo tenemos de manera macro la información que será traficada a través del middleware:

En el tema "Remotes do Middleware" de nuestra documentación, hay más información sobre cada notificación o consulta que ANYMARKET realiza en el middleware, qué acción está solicitando el vendedor y los comportamientos esperados para cada acción, con el objetivo de asegurar la mejor experiencia para el Vendedor.
Pasos de la Integración
| # | PASO | RESPONSABLE | DESCRIPCIÓN |
|---|---|---|---|
| 1 | Cumplimentación del "Formulario de solicitud del nuevo Marketplace" | Marketplace | Este formulario contiene información como la URL del Middleware, los campos necesarios para la autenticación en el Marketplace (Login/ Contraseña o token), descripción, comportamientos |
| 2 | Liberación del entorno Sandbox | ANYMARKET | En este paso, ANYMARKET creará el nuevo canal basándose en la información del formulario del paso anterior y proporcionará: El nombre de usuario de acceso de ANYMARKET para que pueda realizar pruebas durante el desarrollo. También, su "appId", que será el identificador de su Marketplace dentro de ANYMARKET. Este ID debe ser utilizado en todas las llamadas que haga a nuestra API. |
| 3 | Construcción de Middleware | Marketplace | Etapa de construcción del middleware por el Marketplace. |
| 4 | Homologación | ANYMARKET | En este paso, nuestro equipo de calidad probará el nuevo Marketplace para garantizar que la integración cumple los criterios de aceptación previstos. Puede encontrar más nformación sobre este proceso en el tema "Proceso de Homologación" de nuestra documentación. |
| 5 | Lanzamiento del Marketplace en Beta | ANYMARKET | En esta etapa acompañamos a los 5 primeros vendedores, con el objetivo de garantzar que todo funcione correctamente en el entorno de producción. |
| 6 | Liberación del Marketplace en Producción | ANYMARKET | Hemos puesto el nuevo Marketplace a disposición de todos los vendedores de ANYMARKET. |
Cómo funciona la integración
Para facilitar la comprensión de cómo de debe funcionar el Middleware, a continuación se muestra una lista de las Remotes que el middleware necesita proporcionar y sus objetivos, las APIs do ANYMARKET disponibles para que el middleware complete la acciones del proceso, y el diseño del flujo de cómo el middleware se comunica con ANYMARKET y el Marketplace:
Remotes
| POST | /testIntegration | obligatorio | En esta notificación enviamos los datos de autentificación en el marketplace configurado por el Vendedor, para que el middleware valide el acceso. |
| POST | /saveAccount | obligatorio | En esta notificación enviamos los datos de configuración informados por el Vendedor por si el middleware quiere almacenarlos. |
| GET | /product/{{partnerId}} | obligatorio | Esta consulta es para obtener los anuncios del Marketplace, para ser vinculados con las transmisiones de ANYMARKET. |
| GET | /brands | opcional | Esta consulta se utiliza para obtener las marcas del Marketplace y vincularlas a las marcas de ANYMARKET. |
| GET | /categories | opcional | Esta consulta sirve para obtener las categorías del Marketplace y vincularlas a las categorías de ANYMARKET. |
| GET | /categories/{{id}} | opcional | Esta consulta se utiliza para obtener las categorías secundarias del Marketplace y vincularlas a las categorías de ANYMARKET. |
| GET | /categories/attributes/{{id}} | opcional | Esta consulta se utiliza para obtener los atributos del Marketplace y vincularlos a los productos de ANYMARKET. |
| GET | /variations/types | opcional | Esta consulta sirve para obtener las variaciones del Marketplace y vincularlas a las variaciones de ANYMARKET. |
| POST | /canActive | opcional | En esta notificación enviamos una vista previa de los datos del producto/sku para que el middleware pueda validar si se puede publicar en el marketplace. (Acción que se activa cuando el vendedor accede a la funcionalidad de "Nueva Publicación") |
| GET | /getDefaultSkuFields | opcional | Esta consulta es para que el Marketplace proporcione campos adicionales para que el vendedor los rellene al añadir una "Nueva Publicación". |
| POST | /canSave | obligatorio | En esta notificación enviamos una vista previa de los datos del anuncio para que el middleware pueda validar si se puede publicar en el marketplace. (Acción que se activa cuando el vendedor registra una "Nueva Publicación"). |
| POST | /sendProduct | obligatorio | En esta notificación le enviamos todos los cambios realizados en un anuncio: Nueva publicación, Cambios en el registro de anuncios, Cambios de stock, Cambios de precio, Pausar un anuncio, Terminar un anuncio y Reenviar un anuncio. |
| DELETE | /deletePublication | obligatorio | Esta notificación se activará cuando se elimine una transmisión del panel de ANYMARKET, de modo que el marketplace inactive el anuncio. |
| POST | /order/force/{{id}} | obligatorio | Enviaremos esta notificación siempre que el vendedor solicite reenviar el pedido desde el Marketplace a ANYMARKET (Monitoring) |
| POST | /forceImportOrders | obligatorio | Enviaremos esta notificación cuando el vendedor solicite importar todos los pedidos en el panel de ANYMARKET (pantalla de configuración). |
| GET | /order/{{id}} | obligatorio | Esta consulta se utiliza para consultar la información de la orden de marketplace. |
| PUT | /updateOrderStatusInMarketplace | obligatorio | Esta notificación se envía cada vez que hay un cambio en la orden en el ANYMARKET, para que el middleware consulte la información actualizada de la orden y la replique al marketplace. |
APIs ANYMARKET
| GET | /api/configuration | opcional | Consultar todos los ajustes realizados por el vendedor en ANYMARKET. |
| GET | /api/configuration/{id} | opcional | Consultar los ajustes realizados por el vendedor en el ANYMARKET por ID de cuenta. |
| GET | /skumarketplace/{id} | obligatorio | Consulte los datos del anuncio en ANYMARKET. |
| PUT | /skumarketplace/{id} | obligatorio | Se utiliza para que el middleware marque el anuncio como actualizado. |
| POST | /orders | obligatorio | Utilizado para que el middleware escriba la petición en el ANYMARKET. |
| PUT | /orders/{id}/markAsPaid | obligatorio | Se utiliza para que el middleware marque la solicitud como PAGADA en el ANYMARKET. |
| PUT | /orders/{id}/markAsCanceled | obligatorio | Se utiliza para que el middleware marque la solicitud como CANCELADA en el ANYMARKET. |
| PUT | /orders/{id}/markAsShipped | opcional | Se utiliza para que el middleware marque la petición como ENVIADA en el ANYMARKET. |
| PUT | /orders/{id}/markAsDelivered | opcional | Utilizado para que el middleware marque la solicitud como ENTREGADA en el ANYMARKET. |
| GET | /orders/{id} | obligatorio | Permite al middleware consultar los datos del pedido en ANYMARKET. |
| PUT | /orders/{id}/transmissionStatus | obligatorio | Se utiliza para que el middleware marque la solicitud como actualizada. |
Fluxo
| Legenda | |
|---|---|
| NARANJA | Acciones realizadas por el Vendedor en el panel de ANYMARKET |
| VERDE | Remotes que serán notificadas o consultadas en MIDDLEWARE |
| AMARILLO | APIs de ANYMARKET a utilizar en los procesos |
| AZUL | Procesamiento que ANYMARKET/MIDDLEWARE debe realizar después de las notificaciones |

Ambientes
Sandbox: http://sandbox-api.anymarket.com.br/marketplace/api
Producción: https://api.anymarket.com.br/marketplace/api
Información útil
Operaciones
Hacemos todo lo posible para que todas nuestras URLs sean RESTful. Cada URL puede admitir uno de los cuatro tipos diferentes de verbos HTTP:
GET obtiene información sobre un recurso POST crea un recurso PUT actualiza un recurso DELETE elimina un recurso
Límites de consumo
Tranquilízate. Si está enviando demasiadas solicitudes demasiado rápido, devolveremos un código de error 429 (demasiadas solicitudes).
Tiene un límite de 10 peticiones por segundo por token
Las preguntas, sugerencias y opiniones pueden enviarse por correo electrónico a: