PLM y APIs: ¿una relación con futuro?

API PLM

¿Qué es una API?

Pedir la cena desde el sofá de casa con tu tablet. Monitorizar tu actividad física diaria con una aplicación en tu smartphone. Reservar un asiento para la película que quieres ver esta noche en el cine. Todo esto sería imposible en un mundo sin API’s

Las APIs hacen posibles innumerables situaciones de nuestro día a día, y están detrás de gran parte de nuestra actividad online. Conectan negocios, aplicaciones, datos y dispositivos para que acciones como pedir una pizza, escuchar música mientras corres o comprar entradas para el cine con solo un clic, ya formen parte de nuestra realidad cotidiana.

Las siglas de API significanliteralmente Application Programming Interface (Interfaz de Programación de Aplicaciones). Las APIs permiten que las aplicaciones se comuniquen entre sí e intercambien información. Técnicamente hablando, son bloques de programas que facilitan el desarrollo y configuran las rutinas, protocolos y herramientas necesarias para interactuar con una aplicación.

¿Cómo funcionan las APIs?

Las APIs trabajan como bloques de construcción digitales que se unen para proporcionar una amplia variedad de características y funciones. Hay miles de APIs públicas que se pueden usar para hacer de todo, desde verificar una ubicación y recopilar información de redes sociales hasta autentificar usuarios.

Las empresas modernas no crean aplicaciones desde cero. Escogen y eligen entre las APIs disponibles para acelerar el proceso de desarrollo, mantener una arquitectura robusta y ofrecer la mejor experiencia al cliente.

Veamos un ejemplo para comprender cómo las empresas combinan las API para crear APPS.

Imagina que quieres crear una aplicación dentro del mundo de la hostelería que ayude a los usuarios a encontrar hoteles disponibles en su ubicación. El usuario selecciona dónde quiere quedarse y cuándo, y la aplicación proporciona una lista de hoteles disponibles en ese radio. Después, puede usar la aplicación para seleccionar y reservar la habitación que prefiera.

Pero ¿cómo construir esta aplicación usando APIs?

Una combinación básica de mapeo, calendario, autenticación y API de pago, serían los ingredientes principales:

La API de mapeo determina qué hoteles están cerca, mientras que la API de autenticación permite a los clientes leales iniciar sesión fácilmente y reservar una habitación rápidamente. El calendario API verifica la disponibilidad de habitaciones y las tarifas. Y finalmente, la API de pago permite a los usuarios reservar una habitación y liquidar su factura.

Comprender las API REST

REST significa Representational State Transfer y se refiere a un estilo arquitectónico que utiliza métodos HTTP y tecnologías web estandarizadas. Una API REST es un sistema donde los clientes usan una interfaz definida para interactuar con un servidor web a través del protocolo HTTP.

Existen otros tipos de API, como el Simple Object Access Protocol (Protocolo simple de acceso a objetos o SOAP) o Remote Procedure Call (Llamada a procedimiento remoto o RPC), pero REST ha alcanzado una gran popularidad en los últimos años. Esto se debe principalmente a que REST funciona bien, es altamente escalable, y además es fácilmente modificable y ampliable.

Para tener una idea de qué es una API REST y cómo funciona, pongamos un ejemplo. Imagina un café, un cajero y un cliente que quiera comprar un capuchino.

Así es como funciona nuestro café:

Cuando el cliente envía una solicitud (en este caso para obtener un capuchino), la API REST la recibe, identifica el recurso solicitado, atiende el recurso y lo manda de vuelta al cliente.

Anatomía de una API REST

Ahora que tenemos una ligera idea de cómo funciona una API REST, avancemos para analizar más de cerca sus componentes principales.

El cliente – Client

Los clientes son los consumidores de APIs. Pueden ser aplicaciones móviles, navegadores web o dispositivos IoT integrados.

La Solicitud - Request

Una solicitud REST tiene dos partes esenciales: un method y una URI+ body. En algunos casos, se pueden enviar headers (encabezados) para especificar la información sobre la solicitud. Si la solicitud está destinada a escribir nueva información en el sistema, se utiliza elbody para transmitirla.

El header principalmente permite a los usuarios acceder a un recurso. Los headerstambién se usan para establecer el formato de idioma y las preferencias de compresión.

El method es uno de los operadores HTTP estándar, y el URI apunta al recurso con el que desea interactuar. Las API RESTful usan métodos HTTP estándar para realizar cuatro operaciones esenciales:

  • GET – ver
  • POST – crear
  • PUT – editar
  • BORRAR – borrar

La URL es el identificador único para el recurso. Es como cualquier otra URL en internet, excepto que en este caso que se usa para describir el recurso en una aplicación.

Finalmente, la sección del body solo se envía para las transacciones de creación (POST) y actualización (PUT).

API

La APIs es la puerta de entrada al servidor donde se encuentran los recursos. Proporciona acceso a los recursos que la empresa quiere compartir. Una API bien diseñada define lo que puede proporcionar y cómo usarlo en un «contrato tipo». Los methods disponibles, los parámetros de consulta, el formato de respuesta, las limitaciones de la solicitud, el soporte de idiomas, etc. deben formar parte de ese contrato.

Las APIs también actúan como guardaespaldas de los recursos expuestos. Existen tres medidas de seguridad principales que utilizan la mayoría de las APIs: identificación, autenticación y autorización. Las claves API son códigos únicos que generalmente se utilizan para autentificar a los usuarios y administrar el acceso.

Bienes - Assets

Los recursos pueden ser data points, programas o servicios que una empresa posee y desea exponer. Son el pan y la mantequilla de cualquier API. El objetivo final de cualquier API es compartir activos o recursos. Los activos pueden ser cualquier cosa que una empresa quiera compartir, ya sean datos, servicios o ideas.

Respuesta - Response

Cada respuesta regresa del servidor con un status code (código de estado) que indica el éxito o el fracaso de la acción solicitada.

Las respuestas en las API REST suelen usar la notación de objetos JavaScript (JavaScript Object Notation- JSON). El formato JSON es compacto y fácil de transmitir en redes que trabajan lentas.

Volvamos a nuestro café para ver estos componentes API en acción. El cliente ordena un capuchino y el cajero crea un nuevo artículo: una orden. El cliente desea agregar azúcar extra a su pedido, por lo que el cajero lo actualiza. Cuando el cliente le pide al cajero que le diga el total, el cajero lee el pedido. De repente, el cliente se da cuenta de que se ha dejado la cartera en casa, por lo que cancela el pedido. Finalmente, el cajero elimina el artículo.

APIs en acción

Para comprender mejor cómo funcionan las APIs, veamos cómo trabaja una API en acción. Para ello utilizaremos una herramienta de administración de APIs llamada Apigee con la que visualizaremos las solicitudes y respuestas a estos ejemplos. Apigee es una plataforma que proporciona herramientas de diseño, administración y soporte de APIs.

Comencemos con una simple llamada a la API de Google. En este primer ejemplo, queremos desenterrar las coordenadas GPS de nuestra querida Madrid.

Method: GET – este es el método de lectura en HTTP.

URL: http://maps.googleapis.com/maps/api/geocode/json?address=Madrid – la URL apunta a la ubicación del recurso. Para los métodos GET, puede intentar escribir la URL en el navegador.

Body: ninguno – una solicitud GET no necesita un cuerpo (body), porque solo estamos leyendo un recurso del servidor.

Al enviar la solicitud anterior al servidor de Google Maps, obtendremos la latitud y longitud de Madrid:

Avancemos ahora y usemos la API de Twitter para enviar un tweet.

Primero, necesitamos autenticarnos con nuestra cuenta de Twitter para que sepa que la solicitud proviene de nosotros. Luego seleccionamos el método de actualización de estado POST de la API de Twitter y establecemos los parámetros.

Estoy enviando «Test tweet from Share PLM» desde Madrid, utilizando la latitud y la longitud como parámetros de entrada que recopilamos de la API de Google Maps. Continuamos y hacemos clic en enviar, y verificamos que el tweet se haya publicado correctamente.

En la respuesta, también obtenemos metadatos como id o estado sobre el tweet que acabamos de crear.

Luego podríamos continuar y eliminar el tweet que acabamos de crear usando el método «destruir» de la API de Twitter.

Como puedes ver, hay muchas APIs a las que podemos acceder y con las que entretenernos. La idea final es combinar varias APIs para crear aplicaciones y consumir datos de manera sencilla.

¿Se atreverá el PLM a saltar al mundo API?

Las APIs se han convertido en el sistema operativo de las empresas digitales, conectando sistemas y aplicaciones previamente aislados. Diseñadas para ser flexibles, ágiles y escalables, las APIs proporcionan una manera eficiente de construir los servicios digitales que los consumidores de hoy necesitan.

La economía API también tiene el potencial de transformar el escenario del PLM.

Las empresas pueden exponer sus servicios e información de productos a sus clientes. Pero también, internamente, pueden conectar aplicaciones y compartir datos centrales del sistema a través de las APIs. Por ejemplo, es posible desear crear aplicaciones internas que accedan a sistemas centrales para informes, inteligencia empresarial o visualización.

Los proveedores de software PLM pueden permitir que las empresas y los socios se conecten directamente a sus sistemas, facilitando las integraciones y exponiendo información y funcionalidad. Las API PLM pueden estar potencialmente abiertas para desarrolladores internos, partners o desarrolladores externos. Productos como Propel PLM, OnShape, Fusion 360, OpenBOM o Aras ya avanzan en esta dirección.

Incluso podría quedar un trozo del pastel para las startups dentro de la economía API… ¿Qué tal una forma completamente nueva de implementar PLM con APIs flexibles ondemand?

Aún no hay comentarios, ¡añada su voz abajo!


Añadir un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Entradas recomendadas