La autenticación es el proceso de verificar quién eres. La mayoría de las APIs requieren autenticación para proteger sus recursos. Postman soporta múltiples mecanismos de forma nativa:
Authorization con el prefijo Basic. Aunque es fácil de implementar, es poco seguro si no se usa sobre HTTPS.Authorization con el prefijo Bearer. Este token actúa como una credencial temporal.X-API-Key) o como un parámetro de consulta (query parameter).Vamos a simular una petición a un endpoint que requiere autenticación básica usando el servicio de pruebas httpbin.org.
GET a la URL https://httpbin.org/basic-auth/user/passwd. En este caso, httpbin espera que el usuario sea "user" y la contraseña "passwd".
user en el campo Username y passwd en Password.Authorization. Puedes verlo si vas a la pestaña Headers. ¡No necesitas crearlo manually!
200 OK.{{username}} y {{password}}), como veremos más adelante.Este es el método estándar en APIs modernas que usan OAuth 2.0 o JWT.
POST a un endpoint de login (ej: /api/login) con tus credenciales, y la API te devuelve un token.GET para acceder a un recurso protegido, por ejemplo: https://api.example.com/profile. Nota: esta URL es un ejemplo, deberás reemplazarla por la de tu propia API.
{{authToken}}).Authorization por ti, con el formato correcto: Bearer tu-token-aqui.401 Unauthorized, lo que indicaría que el token ha expirado.Usaremos el servicio de pruebas JSONPlaceholder para simular la creación de un nuevo post enviando datos en formato JSON.
POST.https://jsonplaceholder.typicode.com/posts.
{
"title": "Mi primer post en Postman",
"body": "Este es el contenido de mi post.",
"userId": 1
}
id asignado por el servidor.{
"title": "Mi primer post en Postman",
"body": "Este es el contenido de mi post.",
"userId": 1,
"id": 101
}
Cuando envías datos en el cuerpo de una petición, es crucial configurar bien los headers para que el servidor sepa cómo interpretarlos.
raw y JSON en la pestaña Body, Postman añade automáticamente el header Content-Type: application/json. Este header es fundamental para que el servidor entienda que le estás enviando datos en formato JSON.Accept: application/json. Con esto, le indicas al servidor que prefieres recibir la respuesta también en formato JSON.Además, puedes añadir tests para validar que la operación fue exitosa. Ve a la pestaña Scripts y añade código para verificar, por ejemplo, que el código de estado es 201 Created y que el nombre en la respuesta coincide con el que enviaste.
pm.test("El post fue creado exitosamente", function () {
pm.response.to.have.status(201);
});
pm.test("El título del post en la respuesta es correcto", function () {
const responseData = pm.response.json();
pm.expect(responseData.title).to.eql("Mi primer post en Postman");
});
Nunca debes guardar credenciales (contraseñas, tokens, API keys) directamente en tus peticiones, especialmente si compartes la colección con tu equipo.
api_token). En tus peticiones, usa la variable ({{api_token}}) en lugar del valor real.
entorno.ejemplo.json) sin valores reales.