API-First como arquitectura para el diseño de servicios

En muchas ocasiones la API de una aplicación web se considera como una etapa posterior, lo que no es necesariamente un error según el contexto comercial y de los plazos determinados para un proyecto.

Sin embargo, si lo que se está pensando es un servicio como sistema complejo, en el que existen múltiples puntos de contacto con los usuarios (web, móviles, puestos de auto-atención, oficinas de atención al cliente, etc.) es conveniente y sensato pensar y diseñar la arquitectura de su plataforma informática centrándose en las APIs que permiten su operación, en lugar de pasar de implementación a implementación.

Una arquitectura API-First es:

Una arquitectura que trata al usuario de la API como el usuario primario de la aplicación. Esto significa que la API no es una vista alternativa en el paradigma MVC, sino que tiene la más alta prioridad. […] En “API First” la arquitectura impone una API completa, responsiva y bien documentada.

De este modo, la infraestructura tecnológica depende directamente del diseño del servicio en lugar de ser solamente una respuesta a su implementación esperada en un producto: las APIs se modelan como parte de los procesos de interacción del usuario con el sistema, ofreciendo una experiencia unificada a través de sus puntos de contacto.

Referencias: