---
url: 'https://metadrop.net/es/articulos/agiliza-el-desarrollo-de-servicios-rest-con-postman'
title: 'Agiliza el desarrollo de servicios REST con Postman'
author: 'Omar Lopesino'
date: '2018-04-12T12:22:32+00:00'
updated: '2026-06-10T07:42:26+00:00'
type: article
summary: 'Introducción a Postman para la creación de APIs.'
tags:
  - 'REST API'
  - Postman
published: true
og:
  determiner: Automatic
  site_name: Metadrop
  'image:alt': 'Agiliza el desarrollo de servicios REST con Postman'
  street_address: 'Calle Manuel Luna, 12, 3 Dcha'
  locality: Madrid
  region: Madrid
  postal_code: '28020'
  country_name: España
  email: hola@metadrop.net
  phone_number: '910053180'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      '@type': Article
      '@id': 'https://metadrop.net/es/articulos/agiliza-el-desarrollo-de-servicios-rest-con-postman#article'
      name: 'Agiliza el desarrollo de servicios REST con Postman'
      headline: 'Agiliza el desarrollo de servicios REST con Postman'
      description: 'Introducción a Postman para la creación de APIs.'
      about:
        - 'REST API'
        - Postman
      datePublished: '2018-04-12T14:22:33+0200'
      dateModified: '2026-06-10T09:42:26+0200'
      author:
        '@type': Person
        name: 'Omar Lopesino'
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
      mainEntityOfPage: 'https://metadrop.net/es/articulos/agiliza-el-desarrollo-de-servicios-rest-con-postman'
    -
      '@type': Organization
      '@id': 'https://metadrop.net/#organization'
      url: 'https://metadrop.net/'
      name: Metadrop
      sameAs:
        - 'https://www.drupal.org/metadrop'
        - 'https://twitter.com/metadrop'
        - 'https://asociaciondrupal.es/partner/metadrop'
        - 'https://www.linkedin.com/company/metadrop'
      logo:
        '@type': ImageObject
        url: 'https://metadrop.net/themes/custom/mdrop_radix/logo-metadrop-500-500.jpg'
        width: '500'
        height: '500'
    -
      '@type': ItemPage
      '@id': 'https://metadrop.net/es/articulos/agiliza-el-desarrollo-de-servicios-rest-con-postman'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Inicio
            item: 'https://metadrop.net/es'
          -
            '@type': ListItem
            position: 2
            name: 'Artículos expertos sobre Drupal y tecnología'
            item: 'https://metadrop.net/es/articulos'
      publisher:
        '@type': Organization
        '@id': 'https://metadrop.net/#organization'
---
 1. [Artículos](https://metadrop.net/es/articulos)
 
  

# Agiliza el desarrollo de servicios REST con Postman

Jueves 12 de Abril de 2018

 

 



Introducción a Postman para la creación de APIs.



   



Hoy en día se desarrollan servicios REST para multitud de propósitos:

- Desarrollo de aplicaciones móviles que necesitan un *backend* para consultar la información.
- Integración con servicios externos (Youtube, Twitter, CRM, etc).
- Aplicaciones desacopladas , como puede ser el caso de ContentaCMS + \[ponga aquí su framework de JS preferido :D\].

En estos casos de uso necesitamos organizar el listado de peticiones que se realizan para poder probarlas cuando sea necesario y además traspasar el conocimiento a miembros del equipo , clientes, o terceros.

Lo más común es realizar un documento donde se lista cada petición y se añaden toda la información necesaria para poder ser capaz de reproducir la misma petición en el entorno necesario. Es una solución muy práctica pero lo ideal es poder tener un entorno *sandbox* donde podamos ejecutar dichas peticiones, viendo su respuesta.

Existen una amplia variedad de herramientas para realizar peticiones contra servicios REST:

- [**cURL**](https://curl.haxx.se/docs/manpage.html "cURL") : comando con todo lo necesario para realizar peticiones REST. Realmente es todo lo que necesitas para probar servicios REST, pero puede llegar entorpecer a la hora de probar continuamente un servicio con diferentes argumentos . Aún así se recomienda tenerlo a mano al ser la herramienta más directa y flexible.
- [**Swagger**](https://swagger.io/ "Swagger"): interfaz que a través de un archivo propio escrito en JSON permite hacer pruebas de cada endpoint. Además de ello permite exportar dichos *endpoints* a código para cada lenguaje.
- [**Postman**](https://www.getpostman.com/ "Postman"): programa que te da un entorno de desarrollo para construir y ejecutar peticiones REST, y más.
- [**Advanced REST API client**](https://install.advancedrestclient.com "Advanced REST API client"): cliente para aplicaciones REST potente, sucesor del Chrome REST Client.
- **Librerías dedicadas** en cada lenguaje, pero esto implica que quien deba probarlo tiene que poder ejecutar el código hecho en dicha librería.

En este artículo nos centraremos en Postman, la herramienta que hemos elegido para probar servicios REST. Podemos descargar Postman desde su [página oficial](https://www.getpostman.com/ "Página oficial de Postman"). A continuación veremos los diferentes servicios que nos ofrece.

## Creación y ejecución de peticiones REST

Nada más tener Postman instalado podemos crear nuestra primera petición.

Aquí podremos seleccionar lo siguiente:

- Método para realizar la petición.
- Autenticación (Basic Auth, Bearer, etc).
- URL a la que queremos llamar.
- Cabeceras, en la pestaña headers.
- *Body* de la petición.

Cada petición se puede guardar en **colecciones**. De esta forma podemos tener agrupadas todas las peticiones para una sola colección. Además de ello, podemos exportar la petición a código/línea de comandos (cURL, PHP, JS, Java...), clicando en la opción *Code*. Muy práctico para implementaciones/pruebas por línea de comandos.

Todas estas colecciones las podemos exportar para compartilas con quien necesitemos (clientes, compañeros de trabajo, comunidadm, etc).

Postman permite ejecutar diferentes scripts durante la ejecución de las peticiones. Estos snippets nos permitirán guardar variables, las cuales podemos usar en los tests de Postman.

### Pre-request Script

Este script se ejecuta antes de hacer la petición y nos permite definir las variables que necesitemos. También nos permite realizar peticiones, en el caso de que necesitemos extraer variables de servicios externos.

Más información en la [documentación oficial sobre Pre-request Scripts de Postman](https://www.getpostman.com/docs/v6/postman/scripts/pre_request_scripts "Documentación oficial sobre Pre-request Scripts de Postman").

### Tests

Se ejecutan tras realizar la petición. Este script nos valdrá tanto para comprobar que los valores que se reciben son correctos como para poder definir variables que puedan utilizar peticiones posteriores.

De esta forma podemos automatizar ciertas tareas repetitivas para las peticiones. Por ejemplo, si queremos primero crear un usuario y después hacer un *login* con dicho usuario, podemos preparar código que permita que las credenciales del usuario que se hayan creado en la primera petición se pasen como variables a la siguiente.

Más información sobre tests en Postman [aquí](https://www.getpostman.com/docs/v6/postman/scripts/test_scripts "Postman").

### Runners

Existe una utilidad llamada *runners*, la cual nos permite ejecutar todos los tests de una colección. Esto nos es muy práctico en casos en los que necesitemos comprobar el funcionamiento correcto de los endpoints. Por ejemplo, si desarrollamos una funcionalidad que puede estar envuelta en diferentes servicios, ejecutando el *runner* podremos confirmar que efectivamente todos los servicios funcionan correctamente.

## Gestion de entornos

Postman nos permite declarar variables diferentes para cada entorno. Esto es muy práctico para poder probar las API en diferentes entornos donde las cambian diferentes factores como la URL, los usuarios de pruebas, el usuario y contraseña de Apache, etc.

## Mocking

Esta funcionalidad permite generar un *endpoint* alojado en los servidores de Postman donde la respuesta se escribe a mano. Esto nos es muy útil cuando se ha desarrollado la arquitectura en JSON de los servicios rest pero no se han desarrollado aún los servicios. De está forma los clientes de la API (aplicaciones móviles por ejemplo), pueden empezar a trabajar utilizando el *mock* sin existir realmente.

Más información sobre [crear mocks en la documentación oficial](https://www.getpostman.com/docs/postman/mock_servers/setting_up_mock "Crear mocks con Postman").

## Importación / exportación

En postman se pueden importar las peticiones a partir de diferentes formatos (comandos curl, swagger, etc). Además se pueden importar colecciones de Postman que hayamos exportado previamente.

## Conclusiones

Para poder tener disponibles las peticiones realizadas en una aplicación para realizar pruebas necesitamos una herramienta que nos ayude a organizarlo. Con Postman podemos administrar estas peticiones con utilidades que agilizan la labor, además de disponer de una amplia documentación.

## Bonus - Documentar la API automáticamente

Hay un proyecto de GitHub, [Postmanerator](https://github.com/aubm/postmanerator "Postmanerator"), que a partir de colecciones de Postman genera de forma automática la documentación de la API. Aquí tienes un [ejemplo de su salida](https://aubm.github.io/Books-API/ "Ejemplo de Postmanerator"). De esta forma no solo tenemos la colección de llamadas a la API disponiblers para hacer pruebas mediatne Postman, sino que podemos generar una documentación limpia y clara que puede ser enviada a quien la necesite.

## Recursos

- Documentación de Postman: https://www.getpostman.com/docs/v6/



[REST API](https://metadrop.net/es/articulos?text=REST%20API)

[Postman](https://metadrop.net/es/articulos?text=Postman)

 

- Omar Lopesino
    
    Senior Drupal developer