Skip to content

jmmonzonn/prueba_apolo_ai

Repository files navigation

Prueba técnica Apolo AI

Este es un proyecto construido con FastAPI. El objetivo de este proyecto es proporcionar dos APIs para la gestión de pedidos y productos. Se ejecutan a través de un solo script (main.py). Ambas APIs están documentadas y pueden ser probadas a través de Swagger UI.

Requisitos

Para ejecutar este proyecto, asegúrate de tener instaladas las siguientes dependencias en tu máquina local:

  • Python 3.8 o superior
  • virtualenv para crear un entorno virtual

Instalación

1. Clona el repositorio

Clona este repositorio en tu máquina local utilizando git:

git clone https://github.com/jmmonzonn/prueba_apolo_ai.git
cd prueba_apolo_ai

2. Crea y activa un entorno virtual

pip install virtualenv
python3 -m venv venv

En Windows

venv\Scripts\activate

En MacOS o Linux

source venv/bin/activate

3. Instala las dependencias

pip install -r requirements.txt

4. Ejecutar el proyecto

En el proyecto encontrarás un archivo llamado main.py. Debes ejecutar este archivo para generar las variables de entorno y para ejecutar las dos apis.

python main.py

5. Documentación de la API

Endpoints - API Products

Método Endpoint Descripción Parámetros
GET /api_products/products Lista todos los productos en la base de datos. -
POST /api_products/product Crea un nuevo producto. - name (str): Nombre del producto.
- price (float): Precio del producto.
- stock (int, opcional): Cantidad en stock.
PATCH /api_products/product/{product_id} Actualiza el stock de un producto. - product_id (uuid): ID del producto.
- stock (int): Nueva cantidad en stock.

Endpoints - API Orders

Método Endpoint Descripción Parámetros
POST api_orders/order Crea un nuevo pedido. - products (list[dict]): Lista de productos en el pedido. Cada producto debe incluir:
    - product_id (uuid): ID del producto.
    - quantity (int): Cantidad solicitada.
GET /api_orders/orders Lista todos los pedidos registrados en la base de datos. -

La documentación completa de los endpoints está disponible a través de Swagger UI, lo que te permitirá probar las APIs fácilmente desde tu navegador.

API Products: http://127.0.0.1:8000/docs API Orders: http://127.0.0.1:8001/docs En estas páginas podrás ver una lista de todos los endpoints disponibles, sus métodos HTTP, parámetros y ejemplos de respuesta.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages