Skip to content

daniel-pm19/MasterChefAPI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🍳 Máster Chef Celebrity API

API REST desarrollada por DOSW Company para la gestión de recetas del programa Máster Chef Celebrity.
Esta API permite consultar, registrar, actualizar y eliminar recetas creadas por participantes, jueces (chefs) y televidentes, además de filtrar por temporada o por ingredientes específicos.


⚙️ Instalación y Ejecución Local

1️⃣ Clonar el repositorio

git clone https://github.com/<tu-usuario>/MasterChefAPI.git
cd MasterChefAPI

2️⃣ Ejecutar el proyecto

mvn clean compile
mvn spring-boot:run

Enlace de swagger UI

https://mastercheft2-a8afeadpdvbxbshj.canadacentral-01.azurewebsites.net/swagger-ui/index.html

Evidencia swagger

Evidencia azure

Evidencia azure


Ejemplos de request y response por endpoint

Crear una receta:

Request:

    "id": "RE001",
    "title": "Filet Mignon",
    "ingridients": [
        "Beef",
        "Butter",
        "Salt",
        "Pepper"
    ],
    "steps": [
        "Season the meat with salt and pepper.",
        "Heat butter in a pan.",
        "Cook the meat for 3 minutes per side.",
    ],
    "season": 1,
    "authorChef": {
        "id": "CH001",
        "name": "Juan Perez",
        "role": "CONTESTANT"
    }
} 

Response:

    {
    "id": "RE001",
    "title": "Filet Mignon",
    "ingridients": [
        "400g of beef tenderloin",
        "15g of butter",
        "Salt",
        "Pepper"
    ],
    "steps": [
        "Season the meat with salt and pepper.",
        "Heat butter in a pan.",
        "Cook the meat for 3 minutes per side.",
    ],
    "season": 1,
    "authorChef": {
        "id": "CH001",
        "name": "Juan Perez",
        "role": "CONTESTANT"
    }
    }

Actualizar una receta:

Request:

    {
  "id": "RE001",
  "title": "Filet Mignon Deluxe",
  "ingridients": [
    "Beef chata",
    "Butter",
    "Salt",
    "Pepper"
  ],
  "steps": [
    "Marinate the meat and put salt, and pepper.",
    "Cook in butter for 400 minutes per side.",
    "Serve with a sauce of your choice."
  ],
  "season": 2,
  "authorChef": {
    "id": "CH001",
    "name": "Juan Perez",
    "role": "CONTESTANT"
  }
}

Response:

        {
  "id": "RE001",
  "title": "Filet Mignon Deluxe",
  "ingridients": [
    "400g of beef chata",
    "20g of butter",
    "Salt",
    "Pepper"
  ],
  "steps": [
    "Marinate the meat and put salt, and pepper.",
    "Cook in butter for 400 minutes per side.",
    "Serve with a sauce of your choice."
  ],
  "season": 2,
  "authorChef": {
    "id": "CH001",
    "name": "Juan Perez",
    "role": "CONTESTANT"
  }
}

Eliminar receta

Request:

    DELETE /recipes/RE001

Response:

    204 No Content

Obtener todas las recetas

Request:

    GET /recipes

Response:

    [
  {
    "id": "RE001",
    "title": "Filet Mignon",
    "ingridients": ["Beef", "Butter", "Salt"],
    "steps": ["Season", "Cook", "Serve"],
    "season": 1,
    "authorChef": {
      "id": "CH001",
      "name": "Juan Perez",
      "role": "CONTESTANT"
    }
  }
]

Obtener todas las por id

Request:

    GET /recipes/RE001

Response:

    [
  {
    "id": "RE001",
    "title": "Filet Mignon",
    "ingridients": ["Beef", "Butter", "Salt"],
    "steps": ["Season", "Cook", "Serve"],
    "season": 1,
    "authorChef": {
      "id": "CH001",
      "name": "Juan Perez",
      "role": "CONTESTANT"
    }
  }
]

Obtener todas las recetas por participante

Request:

    GET /recipes/contestants

Response:

    [
  {
    "id": "RE001",
    "title": "Filet Mignon",
    "ingridients": ["Beef", "Butter", "Salt"],
    "steps": ["Season", "Cook", "Serve"],
    "season": 1,
    "authorChef": {
      "id": "CH001",
      "name": "Juan Perez",
      "role": "CONTESTANT"
    }
  }
]

Obtener todas las recetas por temporada

Request:

    GET /recipes/season/1

Response:

    [
  {
    "id": "RE001",
    "title": "Filet Mignon",
    "season": 1,
    }
  }
]

Obtener recetas por ingrediente

Request:

    GET /recipes/ingridient/Butter

Response:

    [
  {
    "id": "RE001",
    "title": "Filet Mignon",
    "ingridients": ["Beef", "Butter", "Salt"],
    "steps": ["Season", "Cook", "Serve"],
    "authorChef": {
      "id": "CH001",
      "name": "Juan Perez",
      "role": "CONTESTANT"
    }
  }
]

About

Master chef API for DOSW class

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages