API de Hapee

Conecta tu ERP, tu tienda o tu sistema interno con una subcuenta de Hapee. API REST, JSON, webhooks firmados.

Qué puedes hacer

La API cubre los mismos objetos con los que trabaja el equipo comercial dentro de Hapee:

RecursoQué te permite
contactsPersonas: crear, actualizar, buscar, etiquetar, notas y tareas
companiesEmpresas, con RUT validado
dealsNegocios: crear, mover de etapa, marcar ganado o perdido
products, pricesCatálogo y listas de precios
quotesCotizaciones, con sus líneas y totales
calendars, appointmentsDisponibilidad, agendar, reagendar y cancelar
custom_objectsTus propios objetos: facturas, órdenes, pagos
workflowsInscribir un contacto en una automatización
webhooks, eventsEnterarte de lo que pasa, sin sondear

Lo esencial, en cinco líneas

Tu primer request

curl https://beta.hapee.ai/api/v1/me \
  -H "Authorization: Bearer hp_test_TU_CREDENCIAL"

Te responde quién eres, sobre qué subcuenta operas, en qué modo y con qué límites. Si esto anda, el resto anda.

{
  "key": { "id": 44, "name": "Mi ERP", "mode": "test", "read_only": false },
  "subaccount": { "id": 91, "name": "Cliente — Sandbox",
                  "timezone": "America/Santiago", "default_currency": "CLP",
                  "sandbox": true, "language": "es" },
  "limits": { "requests_per_minute": 100, "batch_max_items": 100,
              "events_retention_days": 30, "idempotency_window_hours": 24 },
  "api_version": "v1"
}

Enterarte de lo que pasa

Hay dos caminos y sirven los mismos eventos, con el mismo cuerpo:

Puedes usar los dos, o solo uno. No hay que configurar nada distinto: eliges según lo que tu infraestructura permite, no según lo que quieres recibir.

Errores

Todos tienen la misma forma, y el code es estable:

{
  "error": {
    "code": "validation_error",
    "message": "El RUT no es válido.",
    "details": [{ "field": "rut", "issue": "invalid_check_digit" }],
    "request_id": "7e3a6a14dfe84d359fc3108b5974f880"
  }
}

Guarda siempre el X-Request-Id de la respuesta. Es lo que nos permite encontrar tu llamada exacta en nuestros registros cuando escribas a soporte.

Versionado

v1 es estable. Agregar un campo a una respuesta no es un cambio que rompa, así que tu integración tiene que ignorar los campos que no conoce. Un cambio que sí rompa sale como v2, y v1 sigue vivo al menos 12 meses desde el anuncio.

Cómo conseguir una credencial

Las emite la agencia que administra tu cuenta de Hapee. Pide una credencial hp_test_ primero: apunta a una subcuenta de prueba con datos ficticios, así puedes desarrollar sin tocar nada real.

Pasar a producción es cambiar la credencial y la URL del webhook. Nada más: el sandbox y producción hablan la misma API.

¿Dudas o algo que no está documentado? Escríbenos a info@hapee.ai.