**Para crear y actualizar contactos en masa mediante programación, utilice la API REST de [Papo](https://papo.global/). Con autenticación por clave secreta (Bearer token) y la clave pública de la cuenta, puede enviar solicitudes que insertan nuevos registros o modifican datos existentes en el CRM — ideal para sincronizar bases externas, migrar listas o mantener el registro siempre actualizado sin intervención manual.**

La API de Papo expone endpoints de escritura que permiten crear un contacto (con nombre, correo electrónico y/o teléfono) y actualizar un contacto ya existente. Combinados con la autenticación simple y el formato JSON, estos endpoints viabilizan operaciones en lote cuando se ejecutan en secuencia por scripts, herramientas de automatización (como n8n) o integraciones personalizadas.

## Resumen del proceso de integración

| Etapa | Acción | Detalle importante |
| :--- | :--- | :--- |
| 1. Obtener las claves | Generar la clave secreta (sk_live_…) y copiar la clave pública (pk_live_…) en el panel de Papo. | La clave secreta aparece una única vez; guárdela en un lugar seguro. |
| 2. Autenticar las llamadas | Incluir el header `Authorization: Bearer sk_live_…` en todas las solicitudes de escritura. | La clave pública puede enviarse en el header `X-Papo-Public-Key` (opcional). |
| 3. Preparar el payload | Armar un objeto JSON con los campos del contacto (nombre, correo electrónico, teléfono, etc.). | Los campos obligatorios y el formato exacto están en la documentación de la API. |
| 4. Enviar las solicitudes | Hacer POST al endpoint de creación o PUT/PATCH para actualización. | Cada solicitud procesa un contacto; para muchos registros, automatice el envío en bucle. |
| 5. Verificar las respuestas | La API devuelve `success: true` y los datos del contacto creado/actualizado. | En caso de error, el cuerpo trae el código y el mensaje para corrección. |

## Cómo funciona la autenticación y los endpoints

Toda llamada que modifica datos (creación, actualización) exige la **clave secreta** de la cuenta. Debe enviarse como token Bearer en el header `Authorization` o, alternativamente, en el header `X-Papo-Secret-Key`. La **clave pública** (fija por cuenta) puede acompañar la solicitud en el header `X-Papo-Public-Key` — su uso es opcional, pero si se envía debe corresponder a la misma cuenta de la clave secreta.

La URL base de la API es `https://app.papo.global/api/v1`. A partir de ella, los endpoints de contactos aceptan los verbos HTTP adecuados para crear un nuevo registro o modificar uno existente. Como la documentación completa detalla los paths, parámetros y campos aceptados, recomendamos consultar la [referencia oficial de la API](https://papo.global/pt/docs) antes de codificar.

### Ejemplo de autenticación (solicitud de prueba)

Para validar que sus claves están funcionando, puede llamar al endpoint `GET /api/v1/me`, que devuelve los datos de la cuenta. El patrón de autenticación es el mismo usado en todos los demás endpoints:

```
curl https://app.papo.global/api/v1/me \
  -H "Authorization: Bearer sk_live_…" \
  -H "X-Papo-Public-Key: pk_live_…"
```

La respuesta exitosa incluye `success: true` y el objeto `data` con la información de la cuenta. A partir de ahí, basta con sustituir el endpoint y el método HTTP según la operación deseada con contactos.

## Creando y actualizando contactos en masa

Aunque la API procesa un contacto por solicitud, la operación en masa se logra ejecutando múltiples llamadas en secuencia. Un script en Python, Node.js o una automatización en n8n puede:

1. Leer una lista de contactos de un archivo CSV, base de datos o ERP.
2. Para cada registro, armar el payload JSON con los campos necesarios.
3. Enviar la solicitud al endpoint de creación (si el contacto no existe) o de actualización (usando el identificador del contacto).
4. Recopilar las respuestas y tratar eventuales errores (correo electrónico duplicado, campo inválido, etc.).

Como la API es REST y utiliza JSON, cualquier lenguaje con soporte HTTP funciona. Papo también proporciona ejemplos en JavaScript y Python en la página de documentación, que pueden adaptarse para los endpoints de contacto.

### Disparadores automáticos después de la creación

Siempre que se crea un nuevo contacto vía API, se disparan los mismos eventos internos del CRM. Si tiene un **Flow** configurado con el disparador “Contacto creado”, la automatización se ejecutará automáticamente — por ejemplo, enviando un mensaje de bienvenida por WhatsApp o notificando al equipo de ventas. Esto significa que la integración vía API no solo puebla la base, sino que también activa los flujos de comunicación ya existentes en la cuenta.

## Para quién está indicada esta integración

- **Empresas que migran de otro CRM o planilla** y necesitan importar miles de contactos de una sola vez, manteniendo la base de Papo sincronizada.
- **Operaciones que captan leads en sistemas externos** (landing pages, ERPs, comercio electrónico) y desean que ingresen automáticamente al CRM de Papo, listos para recibir atención o campañas.
- **Equipos de TI que construyen integraciones personalizadas** entre Papo y herramientas internas, utilizando la API como puente para mantener los datos de clientes siempre actualizados.
- **Revendedores white label** que gestionan múltiples cuentas y quieren automatizar la creación de contactos en escala para sus clientes.

## Preguntas frecuentes

### ¿Necesito una clave secreta para crear o actualizar contactos?
Sí. Todas las operaciones de escritura (creación, actualización) exigen autenticación con la clave secreta de la cuenta. La clave pública por sí sola no autoriza modificaciones.

### ¿Puedo enviar miles de contactos de una sola vez?
La API procesa un contacto por solicitud. Para volúmenes grandes, debe automatizar el envío secuencial, respetando los límites de tasa descritos en la documentación oficial.

### ¿Los contactos creados vía API disparan el Flow de “Contacto creado”?
Sí. El evento de creación es el mismo, independientemente del origen. Si hay un Flow activo con ese disparador, se ejecutará para cada contacto insertado vía API.

### ¿Cómo sé si un contacto ya existe para evitar duplicidad?
Puede utilizar los endpoints de búsqueda (filtrando por correo electrónico o teléfono) antes de crear. La documentación de la API detalla los parámetros de consulta disponibles.

### ¿La API permite actualizar solo algunos campos del contacto?
Sí. En el cuerpo de la solicitud de actualización, envíe solamente los campos que desea modificar. Los demás permanecen inalterados.

### ¿Dónde encuentro la lista completa de endpoints y parámetros?
La referencia completa está disponible en la [página de documentación de la API](https://papo.global/pt/docs). Allí encontrará los paths, métodos, payloads y ejemplos actualizados.

## Lea también

- [Cómo disparar un Flow automáticamente cuando se crea un nuevo contacto en el CRM](/hc/papo/articles/disparar-flow-automaticamente-nuevo-contacto-crm)
- [Cómo exportar contactos extraídos en el Extractor a CSV e importar en el CRM de Papo](/hc/papo/articles/exportar-contactos-extrator-csv-importar-crm-papo)

---

**[Comience gratis e integre su CRM a Papo vía API →](https://papo.global/?utm_source=helpcenter&utm_medium=article&utm_campaign=como-usar-la-api-de-papo-para-crear-y-actualizar-contactos-en-masa&utm_content=es)**

Con el primer usuario gratuito, ya puede generar sus claves de API y probar la creación de contactos en masa sin costo inicial.