Referencia API

API de Comida Rápida

API REST para consultar y gestionar un menú digital de comida rápida. Incluye recursos organizados por categorías como café, donas, hamburguesas, pizza, pasteles y galletas.

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

Base URL

https://devsapihub.com/api-fast-food

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

Endpoints

Listar comidas

GET /api-fast-food GET

Retorna un array con todos los productos disponibles.

Obtener comida por ID

GET /api-fast-food/:id GET

Retorna los datos de una comida según el identificador enviado en la ruta.

GET /api-fast-food/1

Crear comida

POST /api-fast-food/product POST

Body JSON requerido:

{
  "name": "Café nuevo",
  "price": 25.9,
  "image": "https://devsapihub.com/img-fast-food/cafe_03.jpg",
  "category": "cafe"
}

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

Actualizar comida

PUT /api-fast-food/product/:id PUT

Ejemplo de consulta previa:

GET /api-fast-food/product/1

Body JSON de actualización:

{
  "id": 1,
  "name": "Café Editado",
  "price": 39.9,
  "image": "/imgs/editado.jpg",
  "category": "cafe"
}

Respuesta: recurso actualizado con los nuevos valores.

Eliminar comida

DELETE /api-fast-food/product/:id DELETE

Elimina el recurso correspondiente al ID indicado.

DELETE /api-fast-food/3

Respuesta: listado actualizado consultable en GET /api-fast-food.

Filtrar comidas por categoría

GET /api-fast-food/category/:category GET

Retorna comidas por categoría. Ejemplos válidos para :category: cafe, hamburguesas, pizza, entre otras.

GET /api-fast-food/category/cafe

Respuesta: array con los productos de la categoría solicitada.

Ejemplos de consumo

# Listar todos los productos
curl -X GET "https://devsapihub.com/api-fast-food"

# Obtener un producto por ID
curl -X GET "https://devsapihub.com/api-fast-food/1"

# Filtrar productos por categoría
curl -X GET "https://devsapihub.com/api-fast-food/category/cafe"

# Crear un nuevo producto
curl -X POST "https://devsapihub.com/api-fast-food/product" \
  -H "Content-Type: application/json" \
  -d '{
        "name": "Hamburguesa Doble Queso",
        "price": 89.9,
        "image": "https://devsapihub.com/img-fast-food/burger.jpg",
        "category": "burger"
      }'
const getProducts = async () => {
  try {
    const res = await fetch("https://devsapihub.com/api-fast-food");
    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 las comidas:", error.message);
  }
};

getProducts();
import requests
response = requests.get("https://devsapihub.com/api-fast-food")
print(response.json())
import axios from "axios";

const getProducts = async () => {
  try {
    const res = await axios.get("https://devsapihub.com/api-fast-food");
    console.log(res.data);
  } catch (error) {
    console.error("Error al obtener las comidas:", error.message);
  }
};

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

export default function App() {
  const [products, setProducts] = useState([]);

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

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

    getProducts();
  }, []);

  return (
    <>
      <h1>Comidas</h1>
      {products.map((product) => (
        <div key={product.id}>
          <img
            src={product.image}
            alt={product.name}
            style={{ width: '200px', height: '200px', objectFit: 'cover' }}
          />
          <h3>{product.name}</h3>
          <p><strong>Categoría:</strong> {product.category}</p>
          <p><strong>Precio:</strong> ${product.price.toFixed(2)}</p>
        </div>
      ))}
    </>
  );
}
<?php
$response = @file_get_contents('https://devsapihub.com/api-fast-food');
$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 comidas conectada a datos de API.

Explorar en CodePen