Connectif permite automatizar importaciones masivas de contactos, productos y cupones mediante la API de Importación.
En este artículo aprenderás cómo importar la información de tus contactos, tu catálogo de productos y tus cupones de compras a través de la API de Connectif.
Antes de empezar: casos de uso
Esta API cubre los siguientes casos de uso:
- Si quieres automatizar de forma periódica (diaria, semanal...) la sincronización de todos o gran parte de mis contactos o productos.
- Si quieres importar cupones a un conjunto de cupones.
Esta API no cubre la importación de los eventos de compras, pero puede servir de punto de partida. Para configurar las compras, revisa la documentación de la API de Connectif.
PASO 1. Creación de la clave API
1. Accede a Configuración de tienda en el menú lateral izquierdo.
2. En el selector de pestaña, ve a "API y accesos IP" y haz clic en API Keys.
3. Haz clic en el botón Crear nueva API Key.
4. En la sección Importaciones del panel de creación, habilita los permisos para Leer, Escribir y Borrar de forma masiva.
5. Guarda la clave API y cópiala para, más tarde, utilizarla en tu script de automatización.
PASO 2. Creación de la importación
6. Crea y verifica que tu fichero CSV de importación cumpla las siguientes condiciones:
- Encoding UTF-8.
- La primera fila debe contener el nombre de las cabeceras de cada campo.
- Las cabeceras del fichero de contactos deben coincidir con los IDs de los Campos del contacto de Connectif, que encontrarás en tu cuenta, en "Contactos > Campos del contacto".
_email,_name,_points
john@example.org,John,10
micheal@example.org,Michael,10
steve@example.org,Steve,20
mark@example.org,Mark,12
carl@example.org,Carl,10
- Los datos de productos deben coincidir con los nombres de los campos con los mismos que aparecen en este artículo.
- La importación de cupones debe contener una única cabecera "code".
7. Crea el script e incluye en él la clave API generada en el paso 1.
Ejemplo
Una vez creada la importación, tendrá el siguiente aspecto:
const fetch = require('node-fetch'); const fs = require('fs'); const FormData = require('form-data'); const apiKey = process.env.API_KEY; const filePath = process.env.FILE_PATH; async function main() { const form = new FormData(); form.append('type', 'contacts') form.append('delimiter', ',') form.append('overrideExisting', 'true') form.append('updateOnlyEmptyFields', 'false') form.append('file', fs.createReadStream(filePath)); const response = await fetch('https://api.connectif.cloud/imports', { method: 'POST', headers: { 'Authorization': `apiKey ${apiKey}`, ...form.getHeaders() }, body: form }); if (!response.ok) { console.error(response.status, await response.json()); process.exit(1); } const { id, total } = await response.json(); while(true) { const getResponse = await fetch(`https://api.connectif.cloud/imports/${id}`, { method: 'GET', headers: { 'Authorization': `apiKey ${apiKey}` } }); const { success, errors, status } = await getResponse.json(); console.log(`completed ${success + errors} of ${total}`); if (status === 'finished') { console.log('Success 🎉 🎉 🎉 🎉 🎉 🎉 🎉'); process.exit(0); } await new Promise(resolve => setTimeout(resolve, 2000)); } } main().catch(error => { console.error(error); process.exit(1); });
Preguntas frecuentes
¿Cuál es el tamaño máximo de ficheros a importar?
Los ficheros CSV a importar no pueden superar los 50 MB de tamaño.
¿Cuántas importaciones pueden se pueden encolar a la vez?
Es posible encolar un máximo de 10 importaciones a la vez. Llegado a este limite habrá que esperar a que una importación se complete para poner la siguiente a la cola.
¿Las importaciones que realizo vía API se pueden consultar desde la aplicación Connectif?
Sí, el motor de importación es el mismo que utiliza la aplicación Connectif. Por lo tanto las importaciones hechas vía API y app están ambas disponibles en el listado de importaciones.
¿Puedo borrar una importación encolada o en progreso?
Actualmente, es posible borrar importaciones solo en los estados finished o error.
¡Sigue aprendiendo!
Para aprovechar todo el potencial de tu cuenta en Connectif, te recomendamos continuar con los siguientes artículos:
-
Onboarding, para adquirir destreza con nuestra interfaz.
-
Workflows iniciales, para implementar tus primeras estrategias en la cuenta.
-
Integraciones con sistemas externos, para integrarte con Facebook, formularios y webhooks de tu web.
-
Eventos que consumen Actividades, para comprender mejor el consumo de tu cuenta.