Académique Documents
Professionnel Documents
Culture Documents
REST: ventajas en
03 API
desarrollo de proyectos
para
04 Herramientas
desarrollar APIs
en la evolucin
05 Claves
de las APIs
www.bbvaopen4u.com
01 API
Qu es una
INFOGRAFA
www.bbvaopen4u.com
www.bbvaopen4u.com
2000
Flickr
2002
2004
amazon.com
Google maps
2006
2007
Twitter y Facebook
2009
Foursquare
Crecimiento
(Nmero de APIs publicadas)
13.146
5.018
1.263
299
2006
2009
2012
2015
2010
www.bbvaopen4u.com
Cmo funciona
Aplicacin/
Cliente
API
Solicitud
Servidor/
Fuente de datos
API
Respuesta
Usos
Como
referencia para
aplicaciones
Aumentar el
ecosistema de
clientes y socios
Alcance masivo
para transacciones
y contenidos
Impulsar nuevos
modelos de
negocio
Liderar la
innovacin y crear
nuevos servicios
www.bbvaopen4u.com
Tipos de APIs
SOAP
(Simple Object Access Protocol)
Es un protocolo estndar que define cmo dos
objetos, en diferentes procesos, pueden
comunicarse por medio de intercambio de
datos XML.
REST
REST
(Transferencia de Estado Representacional)
Es una forma sencilla de enviar y recibir datos
entre el cliente y el servidor y que no dispone de
muchos estndares. Puede enviar y recibir datos
como JSON, XML o incluso texto sin formato.
www.bbvaopen4u.com
Industria
Social
Twitter, Facebook,
Instagram, Flickr
Localizacin
Google Maps,
Foursquare
Finanzas
PayPal, BBVA,
Yahoo Finance
E-commerce
Amazon, eBay
Empresas
477
APIs
Social
Administracin
Pblica
419
APIs
Finanzas
393
APIs
Referencia
319
APIs
Compras
268
APIs
Pago
219
APIs
Fotos
191
APIs
Msica
106
APIs
Deporte
62
APIs
Comida
www.bbvaopen4u.com
Caractersticas
02
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
Si no es estable, es un problema
Una de las peores pesadillas para un desarrollador
es una API que cambia continuamente. Las
mejoras estn bien, pero a veces se corre el riesgo
de que vayan en contra de la propia estabilidad del
servicio. Sobre todo si no existe la posibilidad de
mantener sin cambios las versiones previas de la
propia API. Eso provoc que en 2011, la interfaz
de desarrollo de aplicaciones de Facebook fuera
calificada como la peor API del mercado para la
comunidad de desarrolladores. Una de las razones:
los cambios continuos en la herramienta sin
previo aviso.
Para evitar esos problemas, puede considerarse
como una buena prctica en la mayora de
ocasiones el uso de un control de versiones en la
API. Normalmente mediante la creacin de distintas
URLs por cada proceso de incorporacin de
www.bbvaopen4u.com
Version 2.0
Version 2.1
Version 2.2
2 years after
V2.1 release
2 years after
V2.2 release
www.bbvaopen4u.com
Falsificacin de peticin en sitios cruzados), un tipo de vulneracin cada vez ms frecuente basado en el uso
de cookies para la identificacin de usuarios. Aadir temporalidad a los tokens de acceso aade an ms
solidez.
Las APIs que basan su seguridad en un protocolo de token de acceso lo que hacen es identificar a cada
cliente que hace una peticin HTTP mediante ese token que, previamente, ha sido almacenado en el lado
del cliente (navegador) con JavaScript. En este artculo de Carlos Azaustre se explica a la perfeccin el
proceso de token.
www
Solicitud HTTP
+ Autentiction del Header
Aplicacin Cliente
Servidor
www.bbvaopen4u.com
www.bbvaopen4u.com
API
REST
03
www.bbvaopen4u.com
www.bbvaopen4u.com
Caractersticas de REST
Protocolo cliente/servidor sin estado: cada
peticin HTTP contiene toda la informacin
necesaria para ejecutarla, lo que permite que ni
cliente ni servidor necesiten recordar ningn
estado previo para satisfacerla. Aunque esto es
as, algunas aplicaciones HTTP incorporan
memoria cach. Se configura lo que se conoce
como protocolo cliente-cach-servidor sin
estado: existe la posibilidad de definir algunas
respuestas a peticiones HTTP concretas como
cacheables, con el objetivo de que el cliente
pueda ejecutar en un futuro la misma respuesta
para peticiones idnticas. De todas formas, que
exista la posibilidad no significa que sea lo ms
recomendable.
www.bbvaopen4u.com
www.bbvaopen4u.com
{
id:78
nombre: Juan,
apellido: Garca,
coches: [
{
coche:
http://miservidor/concesionario/api/v1/
clients/78/coche/1033
},
{
coche:
http://miservidor/concesionario/api/v1/
clients/78/coche/3889
}
]
}
/>
www.bbvaopen4u.com
www.bbvaopen4u.com
3. La API REST siempre es independiente del tipo de plataformas o lenguajes. Este tipo de API se adapta
al tipo de sintaxis o plataformas con las que se estn trabajando, lo que ofrece una gran libertad a la hora
de cambiar o probar nuevos entornos dentro del desarrollo. Con una API REST se pueden tener
servidores PHP, Java, Python o Node.js. Lo nico que es indispensable es que las respuestas a las
peticiones se hagan siempre en el lenguaje de intercambio de informacin usado, normalmente XML o
JSON.
www.bbvaopen4u.com
Herramientas
04
para desarrollar APIs
Restlet Studio, Swagger, API Blueprint, RAML o Apiary son algunas de las
plataformas y herramientas con las que los equipos de desarrolladores
disean, desarrollan, prueban mediante simulaciones automatizadas y
documentan APIs en todo el mundo.
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
Swagger:
el framework de APIs ms popular
A da de hoy, Swagger va ya por la versin 2.0, es
de cdigo abierto y da servicio a plataformas o
clientes tan importantes como Apigee, Getty
Images, Microsoft o Paypal. Gracias a Swagger,
www.bbvaopen4u.com
/>
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
www.bbvaopen4u.com
En el informe 2016 Connectivity Benchmark Report, la compaa Mulesoft aporta algunos datos sobre la
economa API. Una de las conclusiones ms impactantes es que el 91% de las empresas tiene una
estrategia en torno a estas interfaces de desarrollo de aplicaciones. En la mayora de los casos, esta
estrategia est centrada en tres campos de negocio: la integracin de software con plataformas o
aplicaciones ya existentes; la creacin de ingresos desde IT y negocio; y el aumento de la velocidad para
dotar al negocio de recursos de tecnologa. En este grfico se puede ver perfectamente cul es la
distribucin de esfuerzos:
58
53
52
38
13
12
Fuente: Mulesoft 2016 Connectivity Benchmark Report, Get the data
www.bbvaopen4u.com
Otro de los datos que se desprende de este informe es lo que esperan ganar las empresas con el desarrollo
de este tipo de estrategias relacionadas con APIs: el 33% de las organizaciones de ms de 100.000
empleados estima que ganar ms de 10 millones de dlares usando estas interfaces de desarrollo de
apps. Adems, el 26% de todos los encuestados tiene previsto generar de uno a cinco millones.
En el siguiente grfico puedes consultar los resultados del informe elaborado por Mulesoft.
Ingresos esperados por las empresas con el uso de APIs
Prediccin de obtencin de ingresos esperados por las compaas a travs del uso de interfaces de desarrollo de
aplicaciones o actividades relacionadas directamente con ellas.
Con ms de 100.000 empleados
Todas la empresas
14
24 12
26 28
20 23
Ms de 10 millones de dlares
10 33
www.bbvaopen4u.com
terceros.
Analizar el negocio.
Monetizar los productos y servicios de esos
canales digitales.
www.bbvaopen4u.com
www.bbvaopen4u.com
Mercado dividido
67
11
22
67
17
16
66
20
14
Tarjetas de crdito
59
Pagos y transferencias
68
21
11
68
20
Cuentas de operaciones
72
Hipotecas
60
79
12
28
20
32
79
19
www.bbvaopen4u.com
www.bbvaopen4u.com
Este artculo de Martin Fowler y James Lewis se cita con frecuencia para explicar qu son y para qu sirven
los microservicios en el desarrollo de aplicaciones. En l explican cmo las APIs son clave en la flexibilidad y
agilidad de los microservicios.
www.bbvaopen4u.com
SUSCRBETE
www.bbvaopen4u.com
compartir
Identity
Accounts
PayStats
Money Transfers
Cards
BBVA Connect
43