Referencia API
API de Usuarios
API REST para consultar y gestionar información de usuarios: datos personales, ubicación, estado de conexión y metadatos de actividad.
Métodos disponibles:
GET,
POST,
PUT y
DELETE.
Base URL
https://devsapihub.com/api-users
Puedes consumir esta API con cualquier cliente HTTP o directamente desde el navegador.
Endpoints
Listar usuarios
GET /api-users
GET
Retorna un array con todos los usuarios.
Obtener usuario por ID
GET /api-users/:id
GET
Retorna un usuario según el identificador enviado en la ruta.
GET /api-users/1
Crear usuario
POST /api-users/user
POST
Body JSON requerido:
{
"name": "Urian Viera",
"email": "urian.viera@example.com",
"phone": "+1 202-555-0176",
"avatar_url": "https://devsapihub.com/img-users/2.jpg",
"birth_date": "1986-06-25",
"gender": "male",
"location": { "city": "Bogota", "country": "COL" },
"address": "fontibon",
"status": 1,
"last_seen": "2025-04-17T18:30:00Z",
"message": "Hey, Que haces?",
"online": true
}
Respuesta: objeto recién creado.
Actualizar usuario
PUT /api-users/user/:id
PUT
Ejemplo de consulta previa:
GET /api-users/user/3
Body JSON de actualización:
{
"id": 3,
"name": "Amina Yusuf actualizado",
"email": "amina.yusuf@example.com",
"phone": "+44 7456 321789",
"avatar_url": "https://devsapihub.com/img-users/3.jpg",
"birth_date": "1990-11-03",
"gender": "female",
"location": {
"city": "London",
"country": "UK"
},
"address": "22 Queen Street, London",
"status": 1,
"last_seen": "2025-04-17T15:20:00Z",
"message": "Vamos para el cine?",
"online": true
}
Respuesta: recurso actualizado con los nuevos valores.
Filtrar usuarios por estado online
GET /api-users/online/:status
GET
Retorna usuarios online u offline según el valor booleano enviado en
:status.
GET /api-users/online/true
Respuesta: array de usuarios o error cuando no hay coincidencias.
Filtrar usuarios por país
GET /api-users/country/:country
GET
Retorna usuarios cuyo país coincide con el parámetro indicado (sin distinguir mayúsculas/minúsculas).
GET /api-users/country/USA
Respuesta: array de usuarios o error cuando no hay coincidencias.
Eliminar usuario
DELETE /api-users/user/:id
DELETE
Elimina el recurso correspondiente al ID indicado.
DELETE /api-users/2
Respuesta: listado actualizado.
Ejemplos de consumo
# Listar todos los usuarios
curl -X GET "https://devsapihub.com/api-users"
# Obtener un usuario por ID
curl -X GET "https://devsapihub.com/api-users/1"
# Filtrar usuarios online
curl -X GET "https://devsapihub.com/api-users/online/true"
# Filtrar usuarios por país
curl -X GET "https://devsapihub.com/api-users/country/Colombia"
# Crear un nuevo usuario
curl -X POST "https://devsapihub.com/api-users/user" \
-H "Content-Type: application/json" \
-d '{
"name": "Ana Torres",
"email": "ana.torres@example.com",
"phone": "+57 3001234567",
"avatar_url": "https://devsapihub.com/img-users/avatar.jpg",
"birth_date": "1995-08-10",
"gender": "female",
"location": { "city": "Bogotá", "country": "Colombia" },
"address": "Cra 7 #45-12, Bogotá",
"status": 1,
"online": true
}'
const getUsers = async () => {
try {
const res = await fetch("https://devsapihub.com/api-users");
const data = await res.json();
if (!res.ok) {
throw new Error("Error en la respuesta de la API");
}
console.log(data);
} catch (error) {
console.error("Error al obtener los usuarios:", error.message);
}
};
getUsers();
import requests
response = requests.get("https://devsapihub.com/api-users")
print(response.json())
import axios from "axios";
const getUsers = async () => {
try {
const res = await axios.get("https://devsapihub.com/api-users");
console.log(res.data);
} catch (error) {
console.error("Error al obtener los usuarios:", error.message);
}
};
getUsers();
import { useEffect, useState } from 'react';
export default function App() {
const [users, setUsers] = useState([]);
useEffect(() => {
const getUsers = async () => {
try {
const resp = await fetch('https://devsapihub.com/api-users');
const data = await resp.json();
setUsers(data);
} catch (error) {
console.error(error);
}
};
getUsers();
}, []);
return (
<>
<h1>Usuarios</h1>
{users.map((user) => (
<div key={user.id}>
<img
src={user.avatar_url}
alt={user.name}
style={{ width: '80px', height: '80px', borderRadius: '50%' }}
/>
<h3>{user.name}</h3>
<p><strong>Email:</strong> {user.email}</p>
<p><strong>Ciudad:</strong> {user.location.city}, {user.location.country}</p>
<p>
<strong>Estado:</strong>{' '}
{user.online ? 'En línea' : 'Desconectado'}
</p>
</div>
))}
</>
);
}
<?php
$response = @file_get_contents('https://devsapihub.com/api-users');
$data = json_decode($response, true);
echo '<pre>';
echo $data ? print_r($data, true) : 'Error al obtener o decodificar los datos.';
echo '</pre>';
?>
Demo de interfaz
Ejemplo práctico de una vista de usuarios conectada a datos de API.
Explorar en CodePen