Product Service - Orden-der-letzten-Haltestelle/WebEngineering GitHub Wiki

Contents

GET Products

Dieser Endpunkt gibt eine liste an Produkten zurück

Endpoint

GET /api/products?name=&minPrice=&maxPrice=

Sicherheit

keine einschränkung, auch nicht registrierte Nutzer können diesen Endpunkt nutzen

Responses

200

[
    {
        "id": "34987",
        "name": "T-shirt",
        "description": "tolles T-shirt",
        "amount": 5,
        "price": 1888
    },
    ...
]

500

Server error, try later

GET Single Product

Gebe alle Informationen des Produkts mit der gegebenen ID zurück.

Endpoint

GET /api/products/:productId

Sicherheit

keine einschränkung, auch nicht registrierte Nutzer können diesen Endpunkt nutzen

Responses

200

{
    "id": "34987",
    "name": "T-shirt",
    "description": "tolles T-shirt",
    "amount": 5,
    "price": 1888
}

500

Server error, try later

POST Product

Dieser Endpunkt sollte ein neues Produkt in die Datenbank hinzufügen.

Endpoint

POST /api/products

Sicherheit

Nur Admins sollten zugriff auf diesen endpunkt haben

Payload

{
    "name": "T-shirt",
    "description": "tolles T-shirt",
    "amount": 5,
    "price": 1888
}

Der Preis wird in Cent übergeben.

Responses

201

{
    "id": "34987",
    "name": "T-shirt",
    "description": "tolles T-shirt",
    "amount": 5,
    "price": 1888
}

500

Server error, try later

PUT Product

Dieser Endpunkt sollte das Produkt mit der ID aus dem pfad bearbeiten und die existierenden informationen mit denen aus dem payload ersetzen.

Endpoint

PUT /api/products/:productId

Sicherheit

Nur Admins sollten zugriff auf diesen endpunkt haben

Payload

{
    "name": "T-shirt",
    "description": "tolles T-shirt",
    "amount": 5,
    "price": 1888
}

Der Preis wird in Cent übergeben.

Responses

200

{
    "id": "34987",
    "name": "T-shirt",
    "description": "tolles T-shirt",
    "amount": 5,
    "price": 1888
}

500

Server error, try later

DELETE Product

Löschen des Produkts mit der ID aus dem pfad.

Endpoint

PUT /api/products/:productId

Sicherheit

Nur Admins sollten zugriff auf diesen endpunkt haben

Responses

200

{
    "message": "Deleted Product with Id: ${productId}"
}

500

Server error, try later