Glosario de términos

Aquí puedes consultar las palabras y conceptos más utilizados en el ámbito del open banking y las APIs de BBVA API_Market.

A

AISP

Los Proveedores de Servicios de Información sobre Cuentas, más conocidos por las siglas en inglés AISP (Account Information Service Provider) ofrecen información agregada sobre las cuentas de pago de las que el cliente es titular en uno o varios proveedores.

La normativa europea PSD2 regula la actividad de estos operadores que, con el consentimiento del usuario, le permiten consultar su información financiera en varios bancos a través de un único interfaz o plataforma, sin necesidad de entrar en cada una de las cuentas por separado.

Para el usuario, la posibilidad de acceder a toda su información de forma agregada y convenientemente ordenada facilita el control de sus ingresos y gastos. Para los AISP, el acceso a los estados bancarios de los clientes les permite estudiar su actividad, crear perfiles y anticiparse a sus necesidades para ofrecer determinados productos.

ASPSP

Un Proveedor de Servicios de Pago Gestor de Cuenta, más conocido por las siglas en inglés ASPSP (Account Servicing Payment Service Providers), es un proveedor de servicios de pago que facilita a un ordenante una o varias cuentas de pago y se encarga de su mantenimiento, según detalla la directiva de pagos europea PSD2.

Esto es, son las instituciones financieras, fundamentalmente bancos, que albergan los fondos y mantienen las cuentas corrientes y tarjetas del usuario que desea realizar un pago, y que tienen que tener necesariamente una ficha bancaria.

La entrada en vigor de la PSD2 ha obligado a los bancos a facilitar información sobre las cuentas de los clientes que así lo autoricen a nuevos operadores, que prestarán nuevos servicios como la iniciación de pagos en nombre del cliente o la agregación de toda su información financiera en un único interfaz.

API Key

La clave de API, o API Key en inglés, es un código que identifica al usuario de una Interfaz de Programación de Aplicaciones o API, por sus siglas en inglés (Application Programming Interface).

Una API es un protocolo que permite intercambiar información entre distintas aplicaciones. La clave API sirve para identificar al usuario que está haciendo la petición de información, o llamada a la API. Por una parte, permite autenticar la identidad del mismo cada vez que haga una llamada y, por otra, rastrear el uso que se hace de la API.

Alipay

Alipay es una plataforma de pago con móvil originaria de China y operada por Ant Financial, brazo financiero del gigante chino del comercio online Alibaba, que da servicio a 1.200 millones de usuarios en todo el mundo.

Gracias a un acuerdo con BBVA, la API QR Pay está disponible en España para que los comercios puedan ofrecer pagos con Alipay a los turistas chinos que visitan el país, ofreciendo una integración sencilla y una completa documentación que facilita su puesta en marcha.

En China, la interfaz de Alipay también permite alquilar bicicletas, recibir ofertas de locales gastronómicos, pedir un taxi, pagar cuentas de luz o agua, y hacer compras en comercios utilizando el reconocimiento facial.

Para usar esta pasarela de pago es necesario crear una cuenta y vincular las tarjetas de crédito/débito con las que se efectuará el pago a través del móvil.

- ¿Cómo funciona Alipay?

Todo funciona con códigos QR similares a los que utilizan las tarjetas de embarque electrónicas de los aviones. En este caso, el comercio utiliza su sistema de escáner de QR para leer el código y proceder al pago de un producto o servicio. A través de una API REST, que permite la integración fácil y rápida con cualquier tipo de sistema de ventas, todas las operaciones, incluyendo también hipotéticas devoluciones, se integran con facilidad en la operativa de caja del comercio. La API QR PAY está protegida por un protocolo OAuth

- Ventajas de integrar QR Pay para las empresas

De esta forma, los comercios que integren la API QR Pay, posibilitando así el pago con Alipay, eliminan barreras con un nicho de mercado muy interesante, el turismo procedente de China, al que ofrecen un valor añadido, ya que no hay problemas de comunicación ni papeleo ni dudas del consumidor. En 2018 visitaron España 650.000 turistas chinos con un gasto medio de 2.500 euros cada uno.

Además Alipay tiene por bandera la seguridad en las transacciones, ya que implementa un sistema de disputas entre comprador y vendedor.

Cuando se realiza una compra el pago no se realiza directamente al vendedor, si no que Alipay actúa como intermediario y solo en el momento en que ambas partes verifican que la transacción ha ido según lo esperado Alipay efectúa el pago.

Este sistema hace que el comprador gane confianza y se sienta seguro sobre todo cuando se trata de compras online.

AEB43

Es una norma establecida por la Asociación Española de Banca (AEB) para regular la transmisión de extractos de cuentas corrientes y pólizas de crédito, y facilitar así la conciliación bancaria y la operativa contable en las empresas.

La patronal bancaria ha definido una serie de normas y protocolos, también denominados cuadernos, que sirven como estándar para todas las instituciones financieras españolas.

En este caso, el denominado cuaderno o norma 43 de la AEB define cómo debe ser el fichero utilizado para compartir información sobre una o más cuentas. Además de las características del fichero en sí, estipula cómo deben detallarse los datos de la cuenta o cuentas de la que se da información, así como los movimientos o apuntes registrados en las mismas y las referencias pertinentes al respecto.

Esta estandarización facilita la automatización de procesos contables y de Tesorería, así como el intercambio información, permitiendo a las empresas optimizar su gestión.

B

BBVA Net Cash

BBVA Net Cash es una solución de banca online para empresas de BBVA. Su app permite a empresarios y autónomos ahorrar tiempo en la gestión de su negocio.

A través de esta aplicación, el pequeño empresario puede consultar desde su móvil no solo su posición con BBVA, sino toda su operativa de cobros y pagos, nacional e internacional, desde las más sencillas, como las transferencias y adeudos, a otras más complejas, como puede ser el pago de sus importaciones o confirming.

Con BBVA Net Cash también es posible gestionar sus tarjetas o conocer la facturación realizada a través de sus TPVs, entre otros servicios. Además, la app permite recibir notificaciones personalizadas sobre tareas pendientes y aspectos relacionados con la gestión de su día a día empresarial, convirtiéndose en una herramienta esencial para la gestión financiera de la compañía.

Branch

El término inglés branch, rama o ramificación en español, se emplea en los repositorios de código con control de versiones Git. Sirven para definir entornos independientes utilizados por los desarrolladores para trabajar en un mismo proyecto de manera organizada pero autónoma.

El proyecto de software tendrá una rama principal o master, de la que divergen las ramas o branches, facilitando el trabajo de forma independiente de cada programador, que luego vuelve a fusionarse con la rama principal o con otras ramas del proyecto.

En su sistema de control de versiones, Git almacena una copia puntual del archivo completo en el que está trabajando cada desarrollador en el momento en que éste realiza una confirmación de cambios, así como metadatos con el autor y el mensaje explicativo del trabajo que ha realizado o los cambios realizados sobre el proyecto principal.

Las ramas o ramificaciones son especialmente útiles en proyectos en los que participen varios programadores ya que, como cada branch es autónoma, cada uno puede modificar sus archivos, según sus necesidades o preferencias, en un entorno independiente. Esto no afectará el archivo de los demás miembros involucrados en el mismo proyecto.

C

Caché

El caché o cache, en su acepción inglesa, es la memoria temporal de acceso rápido que almacena datos procesados recientemente por un ordenador o sistema informático.

Cuando el usuario accede por primera vez a una información, el sistema realiza una copia de los datos más relevantes en esta memoria auxiliar o caché. Así, la próxima vez que quiera revisar esa información, tendrá esos datos disponibles sin necesidad de solicitarlos de nuevo a la fuente original, ganando eficiencia y ahorrando tiempo.

Existen varios tipos de memoria caché: la de disco (porción de memoria RAM asociada a un disco en particular), la de pista (similar a la RAM) y de Web (que almacena datos de páginas web visitadas). Si es necesario, la memoria caché puede borrarse manualmente para liberar espacio y agilizar el procesamiento de nueva información o para facilitar la recarga de datos que hayan sido modificados posteriormente en la fuente de origen.

CCA: Common Cryptographic Architecture

La Arquitectura Criptográfica Común, o Common Cryptographic Architecture (CCA) en inglés, es una estructura informática que simplifica el uso de servicios criptográficos así como el cumplimiento de estándares nacionales e internacionales. Diseñada y desarrollada por IBM, utiliza una combinación de clave pública y clave secreta o criptografía simétrica para la distribución de claves.

La denominada API de seguridad de CCA permite a las aplicaciones obtener servicios y administrar la operación de un sistema criptográfico que cumple con las especificaciones de esta Arquitectura Común Criptográfica.

Client

Cuando hablamos de APIs, el cliente es un conjunto de protocolos y herramientas informáticas que permiten a una aplicación del usuario realizar diversas operaciones. En una arquitectura REST, el estándar más eficiente y habitual en la creación de APIs para servicios de Internet, se produce un intercambio de información entre cliente y servidor en el que las solicitudes se administran con HTTP.

El API Client o cliente API facilita la gestión de peticiones y respuestas de la API por parte del usuario.

CRUD

CRUD es un acrónimo formado con las iniciales de los términos en inglés create (crear), read (leer), update (actualizar) y delete (borrar). Estas son las cuatro operaciones esenciales que se pueden realizar en un sistema o base de datos: crear registros, leer registros, actualizar registros y borrar registros. En el entorno API, estas operaciones se corresponden respectivamente con los verbos post, get, put y delete.

Dependiendo del tipo de operación que se pretenda realizar se puede usar un verbo u otro sobre un mismo endpoint generando una respuesta distinta.

- Tipo GET

Por ejemplo, si queremos obtener determinado tipo de dato haremos una llamada del tipo GET (leer).

GET /foo

Esto por lo general devolverá un objeto de tipo JSON acompañado de un código indicando cómo ha ido el proceso.

200
{
key: value
}

- Tipo POST

En el caso de querer crear un nuevo dato en la API, tendremos que realizar la llamadas mediante el verbo POST (crear). En este caso debemos acompañar la llamada de los datos que queremos enviar.

POST {key:value} /foo

- Tipo PUT o DELETE

Para PUT (modificar) o DELETE (borrar) necesitaremos especificar en el endpoint con qué elemento queremos operar. Por lo general se hace a través de un identificador.

PUT {key:value} /foo/:identificador

DELETE {key:value} /foo/:identificador

En todos los casos la API nos devolverá un código de estado.

Los códigos más comunes proporcionados por una llamada a un API REST son los siguientes:

200
Todo ha ido según lo esperado
401
Usuario no autorizado
501
Servicio inexistente
503
Servicio temporalmente no disponible

E

Endpoint

Cuando hablamos de APIs, un endpoint es el punto de contacto entre una API y un servidor. Se corresponde normalmente con una URL del servidor que da acceso a un determinado objeto o colección de objetos. Aunque el término es inglés, se utiliza habitualmente también en español.

Es uno de los datos esenciales en la documentación de una API, ya que es el parámetro que utilizará el programador para implementar sus peticiones y acceder a recursos del servidor.

EBA

La Autoridad Bancaria Europea es una autoridad independiente que supervisa el sector bancario para velar por su correcto funcionamiento y por la estabilidad financiera en la Unión Europea.

Conocida por sus siglas en inglés, la EBA (European Banking Authority) se creó en enero de 2011, en medio de la crisis financiera internacional generada por las hipotecas basura o subprime. La entidad, con sede en Londres, asumió las competencias y responsabilidades del antiguo Comité de Supervisores Bancarios Europeos (CSBE).

Entre las funciones de la EBA se encuentra llevar a cabo los test de estrés de los bancos europeos para evaluar posibles debilidades de capital en las entidades y asegurar que se dan las condiciones para una mayor transparencia e innovación bancarias. La Comisión Europea ha delegado en la Autoridad Bancaria Europea el desarrollo de algunos apartados normativos, aunque luego sea Bruselas quien dé el visto bueno final.

Que la EBA tenga su sede en Reino Unido tras la ruptura del Brexit es una situación compleja, algo anómala y que, tal vez, la burocracia europea deberá resolver con el paso del tiempo.

H

Hateoas

HATEOAS es el acrónimo de Hypermedia As The Engine Of Application State, en español: hipermedia como motor del estado de la aplicación. El término hipermedia se refiere a contenidos que contengan enlaces a imágenes, información multimedia y texto.

En una arquitectura API Rest, el principio HATEOAS define que cada vez que se hace una petición al servidor y éste devuelve una respuesta, parte de la información que contendrá serán los hipervínculos de navegación asociada a otros recursos del cliente. De esta forma, permite crear aplicaciones más fáciles de mantener por los desarrolladores y por lo tanto más fiables para el cliente.

- ¿Cómo funciona HATEOAS?

En un arquitectura API Rest estándar las referencias entre objetos se hacen a través de un identificador único que nos permite obtener los datos del mismo. En el caso de HATEOAS, intenta simplificar esta referencia facilitando de manera directa el endpoint del objeto en cuestión por lo que no es indispensable tener un conocimiento exhaustivo de la API que se está integrando en ese momento de forma similar a como hace el estándar Átom.

GET /foo
200
{
id: 1,

referencias: {

id: 2,
id: 3
}
}

En el ejemplo mostrado anteriormente tenemos un modelo de datos que hace referencia a otros dos objetos. En este caso la API nos devuelve los identificadores por tanto deberemos conocer el endpoint requerido para obtener los datos de cada uno de esos IDs a través de una nueva llamada.

GET /foo
200
{
id: 1
referencias: {
objeto: http://foo.bar/api/referencias/2,
objeto: http://foo.bar/api/referencias/3
}
}

Mediante HATEOAS esto se simplifica puesto que no es necesario tener un conocimiento previo del endpoint al que realizar la llamada puesto que este es devuelto por la propia API.

Spring, uno de los Frameworks más utilizados para el desarrollo de aplicaciones en lenguaje Java, proporciona a los desarrolladores varias librerías que facilitan la creación de este tipo de APIs tanto en Spring como en Spring MVC.

L

LAMP Stack

Es un conjunto de software de código abierto u open source que sirve para desarrollar nuevas aplicaciones web personalizadas y de alto rendimiento. Permite también poner en marcha y mantener servidores web.

El nombre LAMP proviene de los programas que se utilizan para llevar a cabo esa tarea: Linux (sistema operativo), Apache (servidor web), MySQL (administrador de base de datos), y los lenguajes de programación PHP, Perl o Python. LAMP tiene una arquitectura clásica en capas, con Linux en el nivel más bajo; seguido de Apache, MySQL, y posteriormente PHP.

LAMP Stack fue una de las primeras pilas o stacks de código abierto para la web y ha generado un rico ecosistema a su alrededor, lo que permite construir sobre lo que otras personas han programado antes para crear un desarrollo propio.

M

MuleSoft

MuleSoft Anypoint Platform es una plataforma de integración para SOA (Service Oriented Architecture), SaaS (Software as a Service) y API (Application Programming Interface) adquirida por Salesforce en 2018. Permite a las empresas conectar aplicaciones, datos y dispositivos tanto en servidores locales como en la nube a través de APIs.

Esta plataforma de código abierto u open source permite conectar mainframes, sistemas ERP (Enterprise Resource Planning) y aplicaciones SaaS, construyendo una red de integraciones y API seguras y reutilizables.

MuleSoft destaca que su plataforma permite a las empresas rediseñar su infraestructura SOA a partir de sistemas heredados, plataformas propietarias y código de integración personalizado. También facilita la migración de infraestructura tecnológica a la nube y la adopción de aplicaciones SaaS.

P

Perforce

Perforce es una compañía estadounidense de software para el desarrollo de aplicaciones con productos dedicados al control de versiones, la gestión de repositorios online, el desarrollo colaborativo de software, la gestión del ciclo de vida de las aplicaciones (ALM) y la planificación Agile.

PII

PII es el acrónimo de Personally Identifiable Information (en español, Información de Identificación Personal) y sirve para englobar todos aquellos datos relevantes que por sí mismos o combinados con otros sirven para distinguir o rastrear la identidad de un individuo determinado.

Esta terminología se utiliza especialmente en EE. UU., donde está recogida en diversas legislaciones, mientras que en Europa es más común el uso de la expresión ‘datos personales’. Su uso está regulado por el Reglamento General de Protección de Datos (GDPR, por sus siglas en inglés).

Tanto PII como datos personales son dos conceptos mencionados habitualmente en asuntos relacionados con la privacidad online, pero no son estrictamente equiparables desde el punto de vista jurídico.
El Instituto Nacional de Estándares y Tecnología (National Institute of Standards and Technology, NIST), dependiente del Departamento de Comercio de EE. UU., establece que “las organizaciones deben minimizar el uso, la recolección y retención de Información de Identificación Personal a lo estrictamente necesario para lograr su propósito comercial y misión”.
Asimismo, describe la Información de Identificación Personal como cualquier información que tenga una agencia sobre un individuo incluyendo (1) cualquier información que pueda utilizarse para distinguir o rastrear la identidad de un individuo, como nombre, número de seguridad social, fecha y lugar de nacimiento, registros biométricos, y (2) cualquier información vinculada o vinculable a un individuo, como información médica, educativa, financiera y laboral.

El instituto estadounidense detalla que por “distinguir” entiende identificar a un individuo.
También aclara que “rastrear” a un individuo equivale a procesar suficiente información como para determinar un aspecto específico de las actividades o el estatus del individuo en cuestión.
Además, realiza una distinción entre información vinculada (información sobre o relacionada con un individuo que se asocia lógicamente con otra información sobre el individuo) y vinculable (aquella información sobre o relacionada con un individuo que tiene la posibilidad de asociarse lógicamente con otra información sobre el individuo).
Estos son algunos ejemplos de lo puede considerarse Información de Identificación Personal (PII)
- Nombre completo o alias
- Números de identificación personal como el de la Seguridad Social, pasaporte, carné de conducir, identificación fiscal, identificación de paciente, cuentas bancarias o tarjeta de crédito.
- Información sobre direcciones, ya sea dirección física o de correo electrónico
- Información de activos, como dirección IP (Internet Protocol) o MAC (Media Access Control) u otros identificadores estáticos de servidores específicos que se vincule a una persona en particular o a un pequeño y definido grupo de personas.
- Números de teléfono, incluyendo móvil, trabajo y personal.
- Características personales, incluyendo imágenes fotográficas (especialmente la cara u otras características identificables) rayos X, huellas dactilares u otros datos biométricos (por ejemplo, escáner de retina, voz, geometría facial).
- Información que identifica propiedades personales, como número de matrícula de vehículos e información relacionada.
- Información sobre un individuo que está vinculada o es vinculable a cualquiera de los supuestos anteriores (por ejemplo, fecha y lugar de nacimiento, raza, religión, peso, actividades, indicadores geográficos, información laboral, información médica, información sobre educación, información financiera.

PISP

PISP es el acrónimo en inglés de los denominados Proveedores de Servicios de Iniciación de Pagos.

Tal y como explica la directiva de pagos europea (PSD2), que regula su actividad, en el comercio online “estos servicios sirven de puente entre el sitio web del comerciante y la plataforma bancaria en línea del proveedor de servicios de pago gestor de cuenta del ordenante” para iniciar los pagos por transferencia a través de internet.

Normalmente no se refiere a entidades bancarias (aunque estas pueden también iniciar pagos) sino a operadores terceros que inician una orden de pago, a petición del usuario, respecto de una cuenta a su nombre abierta en un banco o entidad financiera.

PSD2

La PSD2 es la normativa europea que regula los servicios de pago. Este acrónimo proviene de su acepción en inglés (Second Payment Services Directive), en español se conoce como Segunda Directiva de Servicios de Pago.

Como su propio nombre indica, esta regulación, que entró en vigor en España en 2018, recoge los distintos servicios de pago dentro de la Unión Europea así como los requisitos para desarrollar su actividad, en un esfuerzo por responder a las necesidades del nuevo ecosistema digital y el comercio online.

Esta regulación ha abierto la puerta a terceras empresas (los denominados Third Party Providers) en el ecosistema de pagos, además de obligar a los bancos y entidades financieras a compartir con ellos la información sobre cuentas.

Con la PSD2, las autoridades europeas buscan activar la transformación de la industria bancaria, reforzando la seguridad y fomentando la competencia y la innovación, para impulsar así el desarrollo de mejores servicios y proteger al usuario.

Q

QuerySelector

QuerySelector() es un método implementado por el lenguaje de programación Javascript que permite seleccionar elementos del DOM (Document Object Model; en español Modelo de Objetos del Documento) o página web de forma que se pueda operar con ellos.

El DOM está formado por elementos creados en el lenguaje HTML por ejemplo un que puede contener párrafos (<p>), listados (<ul>) u otros elementos que son interpretados por el navegador web y permiten la representación de las páginas tal y como las conocemos.

Por lo general a la hora de programar páginas web es común que se necesite identificar algún elemento en concreto por diversos motivos. Puede ser desde un simple cambio de color a algo más complejo como la validación de un campo dentro de un formulario web antes de ser almacenado. En estos casos a través del método QuerySelector() los programadores pueden modificar el comportamiento que tienen por defecto elementos.

Siguiendo el ejemplo que comentábamos anteriormente, si quisiéramos utilizar el método QuerySelector() para poder validar que el primer campo de un formulario de contacto sea realmente un teléfono, podríamos hacerlo de la siguiente manera:

var campo1 = document.body.querySelector("form input").val;
var tel = /^\+?([0-9]{2})\)?[-. ]?([0-9]{4})[-. ]?([0-9]{4})$/;
if((campo1.value.match(tel)) { return true; }

Una de las limitaciones que tiene este método es que solo devuelve el primer elemento que coincida con la selección. Por lo tanto si tenemos otros elementos similares tendremos que hacer uso de métodos alternativos como por ejemplo querySelectorAll() que devuelve todos los elementos que coinciden con la selección realizada en formato array.

R

RAML

Acrónimo de RESTful API Modeling Language, RAML es un lenguaje de modelado que permite describir las APIs de una manera que sea legible tanto para humanos como para computadoras.

Se centra en describir limpiamente recursos, métodos, parámetros, respuestas, tipos de medios y otras construcciones HTTP que forman la base de las APIs modernas que obedecen a la mayoría, no todas admiten sus creadores, de las especificaciones RESTful. Utiliza JSON para especificar estructuras y está basado en YAML.

RAML permite hacer un seguimiento de la API a medida que avanza su desarrollo, utilizando texto plano fácil de leer. Sin tener que escribir código, se puede perfeccionar el diseño de la API y crear un simulacro funcional.

Redirección 301

La redirección 301 es un comando para redireccionar permanentemente una página apuntando a una nueva dirección o URL.

Se utiliza, por ejemplo, para solventar un error 404 (página no encontrada) y enviar al usuario a una página operativa. También se usa cuando es preciso realizar una migración de dominio, modificar estructuras URL, o solucionar problemas con contenido duplicado, por ejemplo, sustituyendo permanentemente la dirección de destino.

La redirección 301 se realiza sobre el archivo de configuración del servidor o el .htaccess, un archivo de configuración utilizado en servidores web. Con este comando, el servidor web devuelve un código HTTP 301 al cliente, diciéndole que la URL ha sido movida permanentemente a una nueva dirección.

S

Smartbear

Smartbear es una empresa que ofrece herramientas para la supervisión del rendimiento de aplicaciones (APM), desarrollo y pruebas de software, pruebas y gestión de APIs, colaboración y optimización de código, y dos herramientas de código abierto: SoapUI y SwaggerHug.

Sphinx

Sphinx es una herramienta gratuita para documentar proyectos de software que se creó originalmente para generar documentación sobre Python.

Sirve para generar automáticamente documentación desde código fuente, escribir notación matemática o realzar código. Sphinx utiliza reStructuredText (RST, reST o ReST) como lenguaje de marcado. Como formato de salida, entrega HTML, pdf, Texinfo, ePub, texto sin formato, etc.

Antes de instalar Sphinx (en Windows o Linux) es necesario tener instalado Python en cualquiera de sus dos ramas de desarrollo (2.x o 3.x).

V

VCS

VCS son las siglas de Version Control System o Programas de Control de Versiones, en español. Es una categoría de software que permite gestionar cambios de código fuente en un proyecto de desarrollo.

Los VCS realizan un seguimiento de cada modificación del código alojado en el repositorio, es decir, rastrea cada cambio que hayan hecho los miembros del equipo de desarrolladores. Por eso, si se comete algún error, los desarrolladores pueden retroceder, comparar versiones anteriores y solucionar problemas minimizando la interrupción para los demás miembros del equipo.

Uno de los VCS más populares en la actualidad es Git.

Versioning

El versioning o versionado de software, en español, es el proceso de asignar una nomenclatura ordenada y progresiva a las sucesivas versiones o mejoras de un desarrollo, de forma que permita identificar su evolución.

El término se aplica especialmente a los sistemas operativos y software. En el último caso, el versioning consiste en enumerar u otorgar identificadores numéricos (de dos a tres números separados por puntos) a los lanzamientos del mismo programa/producto.

Esta práctica ayuda a los desarrolladores a saber cuáles son las últimas versiones y las actualizaciones o cambios que han tenido los programas respecto a su versión anterior.

W

Webhook

Los webhooks nacen por la necesidad de interconectar sistemas de manera eficaz. Funcionan como notificaciones en tiempo real y permiten la comunicación entre dos aplicaciones. Son devoluciones de llamada (callbacks) HTTP desencadenadas por un evento específico que alteran el funcionamiento de una página o aplicación web. Estas llamadas pueden ser administradas por terceros usuarios y desarrolladores que no gestionan la aplicación original.

En un sistema tradicional, cuando un tercero quiere conocer si la información a la que quiere acceder ha sido actualizada necesita hacer una llamada al servidor origen, obtener esos datos y comprobar la fecha de modificación de manera periódica.

De esta manera se produce un consumo excesivo de recursos tanto por el sistema que consulta como por el que es consultado puesto que este periodo de consulta de las actualizaciones, que puede ser mayor o menor según la necesidad, se ha de realizar sabiendo que no se obtendrá información nueva en muchas ocasiones.

Con el uso de webhooks esta tarea se hace de forma proactiva por el sistema en el que se originan los cambios. A través de las APIs REST es posible desencadenar una llamada a un tercer sistema en el momento en que se produce dicho evento. De esta manera el consumo de recursos se reduce muchísimo.

Normalmente un sistema B se identifica ya sea mediante protocolos de autenticación o haciendo uso de API Keys con un sistema A y es este sistema A el que envía los eventos al endpoint previamente especificado del sistema B a través del protocolo HTTP.

Cuando los datos del evento llegan al sistema B este tendrá toda la información necesaria que ha sido modificada en el sistema A sin tener que realizar él una petición. De esta manera el sistema B contará siempre con información actualizada y fiable del sistema A.

Los webhooks no sólo permiten la notificación de operaciones, también sirven también para generar informes, procesar datos y sincronizar sistemas en tiempo real y pueden integrarse en servicios web sin añadir otras infraestructuras.

Y

YAML

YAML, acrónimo de Yet Another Markup Language – Ain’t Markup Language, es un lenguaje de programación que se caracteriza por su formato amigable, sencillo de entender y útil para mapear estructuras de datos. Se utiliza para configurar archivos y aplicaciones que transmiten o almacenan datos.

A diferencia de JSON, YAML tiene ventajas integradas como autorreferencia, comentarios y soporte para datos complejos.