Glosario
Qué es una API
Interfaz que un sistema publica para que otros le pidan datos u operaciones. Lo caro de integrar dos sistemas es ponerlos de acuerdo sobre qué significa cada dato.
Una API es el conjunto de operaciones que un programa publica para que otros programas le pidan datos o le encarguen acciones, sin saber nada de cómo está hecho por dentro. Tu tienda pregunta al sistema de almacén cuántas unidades quedan. El almacén responde.
La sigla es de application programming interface. La palabra que importa es interfaz: un contrato sobre qué se puede pedir, con qué datos y qué se devuelve.
Para qué sirve
Para que dos sistemas que no se conocen trabajen juntos. Ese es el caso normal en una empresa que lleva años funcionando: un ERP instalado hace años, un CRM que eligió el equipo comercial, una tienda montada aparte y una hoja de cálculo que alguien mantiene a mano. La API es la forma de conectarlos sin reescribir ninguno.
También sirve para vender. Si tu producto expone una API, tus clientes lo integran en lo que ya usan. Nuestra plataforma de facturación BeeL existe casi entera detrás de una API por esa razón, y su documentación es pública en docs.beel.es.
Lo que se rompe
Lo que se rompe es el acuerdo sobre qué es un cliente. En el ERP tiene NIF obligatorio; en la tienda puede ser un correo electrónico sin más. Alguien tiene que decidir qué pasa con los pedidos de quien nunca dio su NIF, y esa decisión no la resuelve ningún conector.
Después vienen tres cosas que aparecen en producción y no suelen estar en la documentación.
- El otro sistema se cae, y hay que decidir si reintentas, si encolas o si pierdes el dato.
- El mismo pedido llega dos veces, y si tu API no es idempotente acabas facturando dos veces.
- Hay límites de peticiones por minuto, y el día que migras el histórico los alcanzas.
Antes de escribir un conector, escribimos qué significa cada campo en cada sistema y quién manda cuando discrepan. Cómo se hace está en integrar dos sistemas que no se conocen, ese trabajo entra en software a medida y la forma barata de empezar es un diagnóstico.
Cuando la integración tiene que enterarse de algo en el momento en que ocurre, la pieza que falta es un webhook.
Ver también
¿La duda es sobre tu propio sistema?
El diagnóstico la responde con el código delante: qué falla, cuánto cuesta arreglarlo y por dónde entrar.