¿Desarrollaste un API con buenas prácticas?
Evalúa tu API en menos de 5 minutos
2 min readNov 23, 2021
En los últimos meses, he leído e investigado sobre todo lo relacionado con el mundo de las APIs es así como en esta ocasión quise armar una lista de chequeo corta y concisa que le permita a los desarrolladores comprobar si desarrollaron un API con todas las buenas practicas que hasta el momento profesan la mayoría de grandes empresas que se dedican al desarrollo de estas. A continuación les presento esa lista de chequeo:
✔️ Lista de chequeo
- [ ] El API tiene definido un esquemas definidos de autorización y autenticación
- [ ] El API hace uso correcto de los verbos HTTP (GET, POST, PUT, PATCH, DELETE)
- [ ] El API cuenta con una definición clara de los endpoints, esta definición incluye: Qué hace y cómo se relaciona con otros endpoints
- [ ] El API cuenta con una documentación de calidad que contenga: La estructura de las respuestas, los métodos de cada endpoints, la descripción de cada endpointsy ejemplos de uso
- [ ] El API cuenta con una estructura de respuesta para el manejo de errores y usa correctamente los códigos de error (Errores 4xx o 5xx)
- [ ] En el diseño del API se realizó un correcto modelado de los recursos, teniendo en cuenta los principios de API REST
- [ ] El API usa sustantivos en los nombres de los recursos
- [ ] El API usa nombre en plural en los endpoints o URLs
- [ ] El API evita los recursos profundamente anidados, por ejemplo,
/posts/r83fj3/comments
- [ ] El API usa identificadores de recursos no secuenciales, por ejemplo:
/posts/r83fj3
- [ ] El API no usa acciones personalizadas en sus endpoints, por ejemplo:
POST /posts/d92hf73/publish
Esto va en contra de los principios REST - [ ] El API cuenta con alguna estructura definida para las respuestas, por ejemplo: JSON API, o alguna definida internamente
- [ ] El API utiliza correctamente los códigos de respuesta HTTP, como los códigos 2xx
- [ ] El API hace un correcto control de versiones, tanto internamente como en la estructura de la URL, por ejemplo, como un fragmento de la ruta
example.com/api/v3/posts
- [ ] El API cuenta con principios básicos de seguridad, como limite de tasa de solicitudes
- [ ] El API cuenta con alguna sección de soporte para los desarrolladores
- [ ] El API cuenta con colecciones filtrables, ordenables y paginables
- [ ] El API tiene alguna política de obsolescencia