Referencia API

API de Jugadores NBA

API REST para consultar y gestionar información de jugadores NBA: posición, estadísticas, equipo y datos de contexto.

Métodos disponibles: GET, POST, PUT y DELETE.

Base URL

https://devsapihub.com/api-players

Puedes consumir esta API con cualquier cliente HTTP o directamente desde el navegador.

Endpoints

Listar jugadores

GET /api-players GET

Retorna un array con todos los jugadores disponibles.

Obtener jugador por ID

GET /api-players/:id GET

Retorna un jugador según el identificador enviado en la ruta.

GET /api-players/4

Filtrar jugadores por posición

GET /api-players/position/:position GET

Retorna jugadores por posición. Puedes usar valores como center o forward.

GET /api-players/position/center

Respuesta: array de jugadores o error cuando no hay coincidencias.

Crear jugador

POST /api-players POST

Body JSON requerido:

{
  "img_src": "https://devsapihub.com/img-players/22.png",
  "name": "Jayson Tatum",
  "number": "#0",
  "position": "Forward",
  "stats": "26.4 PPG 4.3 APG 8.1 RPG",
  "team_name": "[Boston Celtics]",
  "info": "Four-time All-Star | NBA All-Star Game MVP 2023"
}

Respuesta: recurso creado y listado actualizado en GET /api-players.

Actualizar jugador

PUT /api-players/:id PUT

Ejemplo de consulta previa:

GET /api-players/2

Body JSON de actualización:

{
  "id": 2,
  "img_src": "https://devsapihub.com/img-players/2.png",
  "name": "Anthony Davis Actualizado",
  "number": "#23",
  "position": "Forward",
  "stats": "27.1 PPG 2.4 APG 10.7 RPG",
  "team_name": "[New Orleans Pelicans]",
  "info": "Five-time All-Star | Scored 52 points in 2017 All-Star Game"
}

Respuesta: recurso actualizado con los nuevos valores.

Eliminar jugador

DELETE /api-players/:id DELETE

Elimina el recurso correspondiente al ID indicado.

DELETE /api-players/10

Respuesta: listado actualizado consultable en GET /api-players.

Ejemplos de consumo

# Listar todos los jugadores
curl -X GET "https://devsapihub.com/api-players"

# Obtener un jugador por ID
curl -X GET "https://devsapihub.com/api-players/1"

# Filtrar jugadores por posición
curl -X GET "https://devsapihub.com/api-players/position/Center"

# Crear un nuevo jugador (simulado)
curl -X POST "https://devsapihub.com/api-players" \
  -H "Content-Type: application/json" \
  -d '{
        "img_src": "https://devsapihub.com/img-players/example.png",
        "name": "Stephen Curry",
        "number": "#30",
        "position": "Guard",
        "stats": "29.4 PPG 6.3 APG 5.5 RPG",
        "team_name": "[Golden State Warriors]",
        "info": "Cuatro veces campeón de la NBA"
      }'
const getPlayers = async () => {
  try {
    const res = await fetch("https://devsapihub.com/api-players");
    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 jugadores:", error.message);
  }
};

getPlayers();
import requests
response = requests.get("https://devsapihub.com/api-players")
jugadores = response.json()
print(jugadores)
import axios from "axios";

const getPlayers = async () => {
  try {
    const res = await axios.get("https://devsapihub.com/api-players");
    console.log(res.data);
  } catch (error) {
    console.error("Error al obtener los jugadores:", error.message);
  }
};

getPlayers();
import { useEffect, useState } from 'react';

export default function App() {
  const [players, setPlayers] = useState([]);

  useEffect(() => {
    const getPlayers = async () => {
      try {
        const resp = await fetch('https://devsapihub.com/api-players');
        const data = await resp.json();

        setPlayers(data);
      } catch (error) {
        console.error(error);
      }
    };

    getPlayers();
  }, []);

  return (
    <>
      <h1>Jugadores NBA</h1>
      {players.map((player) => (
        <div key={player.id}>
          <img
            src={player.img_src}
            alt={player.name}
            style={{ width: '200px', height: 'auto' }}
          />
          <h3>
            {player.name} <small>{player.number}</small>
          </h3>
          <p><strong>Posición:</strong> {player.position}</p>
          <p><strong>Equipo:</strong> {player.team_name}</p>
          <p><strong>Estadísticas:</strong> {player.stats}</p>
          <p><em>{player.info}</em></p>
        </div>
      ))}
    </>
  );
}
<?php
$response = @file_get_contents('https://devsapihub.com/api-players');
$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 jugadores conectada a datos de API.

Explorar en CodePen