3. ❏ Apis como modelos de negocio
❏ Apis y el mundo Big Data
❏ Define una Api
❏ RAML
❏ Desarrolla tu primera Api en node.js
❏ Transformación digital en empresa
❏ Descubre el mundo Big Data
❏ Descubre el mundo Cloud
❏ Gobierno de apis
❏ Seguridad en las apis desde un punto de vista developer
❏ Api Managers
❏ MADA (Metodología ágil de desarrollo de apis)
MIS CHARLAS
9. API Governance
➢ Definir recursos
➢ Política de versionado
➢ Políticas de seguridad
➢ Estándar de definición de apis
➢ Estándar de desarrollo de apis
➢ Documentación
➢ Monitorización
➢ Testing
➢ Billing
➢ Environment
Consideraciones generales
10. API Governance
Definimos recursos y atributos dentro de la
organización:
User
data:
{“name”:”Manolo”,”edad”:”12”}
Definiendo recursos
11. API Governance
Versionado
➢ Url
GET XXX/ejemplo/v1.0/users/
➢ Header
Accept: application/vnd.company.myapp-v3+json
Content-Type:
application/vnd.company.myapp-v3+json
➢ ¿Cuando se cambia de versión?
➢ ¿cuando se rompe la compatibilidad hacia atrás?
12. API Governance
➢ Api Manager?
➢ Authentication 2 / 3
○ 2 => aplicaciones
○ 3 => usuarios finales
➢ ¿Sistema de autenticación propietario o
utilizamos un estándar?
➢ Seguridad, ¿qué controlamos?
○ scopes
○ Resources and methods
Seguridad
13. ➢ Restful??
➢ Código de error de HTTP
➢ Formato de parámetros de entrada
➢ Parámetros especiales
➢ Formato de entrada / salida
➢ Verbos HTTP
➢ Paginación
➢ Niveles dentro de la URL
➢ Hypermedia
➢ ¿Granularidad?
Definiendo un estándar
API Governance
14. API Governance
➢ frameworks?
➢ Spring data rest / hateoas (java)
➢ restify / express (node.js)
➢ SDK: ¿Para qué lenguajes? Filosofía de SDK
➢ ¿Utilizamos un generador automático?
Estandarizando el desarrollo
http://www.slideshare.net/MarcoAntonioSanzMoli/taller-desarrollo-de-apis
15. API Governance
➢ Formato de documentación
○ Doc
○ HTML
○ RAML / Swagger
➢ ¿Dónde se deja la documentación?
¿Versionado? ¿Quién es el responsable de
tener la documentación actualizada?
Documentación
16. API Governance
➢ Estadísticas de uso
○ Number of requests per app
○ Number of requests per user (if it’s
possible)
○ Number of requests per resource
Number of requests per developer
○ Number of requests per http code
response
➢ Alertas
Monitorización
17. API Governance
➢ Tests integrados
○ ¿Desarrollas tus propios tests?
○ ¿Usas herramientas externas?
➢ ¿Automatizamos la ejecución?
○ Jenkins / jmeter / soapui / postman
➢ ¿Qué puedo probar?
○ Data
○ Http code response
Testing
18. API Governance
➢ Métodos de pago
○ Los Api Managers pueden ayudarme
➢ Modelo de billing
○ Requests
○ Services
○ Data (Scopes?)
➢ ¿Pagamos al developer por usar nuestras apis?
Billing
19. API Governance
➢ Pre-production
○ ¿Datos reales?
○ ¿Generamos datos de prueba?
➢ Producción
○ Nivel de soporte
➢ ¿Sandbox?
Environments
20. API Governance
➢ Pasos
○ Definición
➢ ¿fake?
➢ Desarrollo
➢ Testing / validación
➢ implementación
➢ Obsolescencia
Metodología
21. API Governance
➢ Crear y administrar las apis
➢ Obtener las credenciales de acceso
➢ Herramientas de testeo de apis
➢ Documentación / ejemplos / SDKs
➢ Monitorización
➢ Payment
➢ Estadísticas
Developer center
Aplicación para desarrolladores. Funcionalidades principales: