Está en la página 1de 2

REST API

REST API (Representational State Transfer Application Programming Interface) es un


conjunto de reglas y estándares que se utilizan para crear servicios web. Se basa en el
protocolo HTTP y es una de las formas más comunes de comunicarse entre diferentes
aplicaciones o servicios en la web.

Las REST API’s se basan en cuatro conceptos fundamentales:


1. Recursos: son las entidades que se manipulan a través de la API. Cada recurso se
identifica mediante una URL única
2. Métodos HTTP: son las operaciones que se pueden realizar en un recurso. Los
más comunes son GET para obtener información, POST para crear un recurso,
PUT para actualizar un recurso y DELETE para eliminar un recurso
3. Representaciones: son las diferentes formas en que se puede presentar un
recurso, por ejemplo, en formato JSON o XML
4. HATEOAS: significa "Hypermedia as the Engine of Application State" y se
refiere a la capacidad de la API para proporcionar enlaces a otros recursos
relacionados con el recurso solicitado.
Se ha convertido en un estándar de facto para la construcción de servicios web,
permitiendo que diferentes aplicaciones o servicios se comuniquen entre sí a través de la
web de manera eficiente y escalable, debido a su simplicidad, flexibilidad. Además, al
basarse en HTTP, son muy fáciles de integrar con otras tecnologías web, como HTML,
CSS y JavaScript.

Para utilizar una REST API, se necesita una URL de API y una clave de API, si se
requiere autenticación. Luego, se pueden realizar solicitudes HTTP a través de esta URL
para interactuar con los recursos disponibles en la API. Los resultados se devuelven en
formato JSON o XML, que son fáciles de procesar y utilizar en aplicaciones web.

Al exponer una interfaz de programación basada en HTTP y seguir los estándares


REST, las REST API’s permiten a los desarrolladores de software crear aplicaciones y
servicios que pueden consumir y compartir datos de manera fácil y estructurada.

Algunos casos de uso comunes para las REST API’s incluyen:


 Integración de servicios: por ejemplo, una aplicación web puede utilizar una
REST API para acceder a los datos de un servicio de terceros, como un servicio
de pago o un servicio de geolocalización, y utilizarlos en su propia aplicación.
 Desarrollo de aplicaciones móviles: las aplicaciones móviles pueden utilizar
para acceder a los datos y funcionalidades de un servicio web a través de
internet.
 Automatización de procesos: pueden utilizarse para automatizar procesos en una
organización, como la creación de informes o la gestión de tareas.
Ventajas que ofrece REST para el desarrollo
1. Separación entre el cliente y el servidor: el protocolo REST separa totalmente la
interfaz de usuario del servidor y el almacenamiento de datos. Eso tiene algunas
ventajas cuando se hacen desarrollos. Por ejemplo, mejora la portabilidad de la
interfaz a otro tipo de plataformas, aumenta la escalabilidad de los proyectos y
permite que los distintos componentes de los desarrollos se puedan evolucionar de
forma independiente.

2. Visibilidad, fiabilidad y escalabilidad. La separación entre cliente y servidor


tiene una ventaja evidente y es que cualquier equipo de desarrollo puede escalar el
producto sin excesivos problemas. Se puede migrar a otros servidores o realizar
todo tipo de cambios en la base de datos, siempre y cuando los datos de cada una
de las peticiones se envíen de forma correcta. Esta separación facilita tener en
servidores distintos el front y el back y eso convierte a las aplicaciones en
productos más flexibles a la hora de trabajar.

3.
4. La API REST siempre es independiente del tipo de plataformas o lenguajes: la
API REST siempre se adapta al tipo de sintaxis o plataformas con las que se estén
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 información usado,
normalmente XML o JSON.

También podría gustarte