Skip to content

Ressourcen

Sebastian Faust edited this page Aug 27, 2018 · 18 revisions

Ressourcen

Info: Umgesetzte Fehlercodes sind bold gesetzt

Ressource Methode Semantik Content Type (req) Content Type (res) HTTP Statuscode
users
/ GET gebe alle User aus / JSON 200:Erfolgreich, 404:Keine User, 500:Serverfehler
/ POST erstelle eine User und erhalte seine URI im Response Header JSON JSON 201:Erstellt, 400:Fehlerhafte Nachricht, 500:Serverfehler
/{userID} GET gebe bestimmten User aus / JSON 200:Erfolgreich, 404:Kein User mit der ID vorhanden, 500:Serverfehler
/{userID} PUT aktualisiere bestimmten User JSON / 200:Erfolgreich, 400:Fehlerhafte Nachricht, 500:Serverfehler
/{userID} DELETE lösche bestimmten User / / 200:Erfolgreich, 404:Kein User mit der ID vorhanden, 500:Serverfehler
/{userID}/events GET gebe alle Events eines User aus / JSON 200:Erfolgreich, 404:Kein User mit der ID vorhanden, 500:Serverfehler
events
/ POST erstelle ein neues Event und erhalte dessen URI im Response Header JSON JSON 201:Erstellt, 400:Fehlerhafte Nachricht, 500:Serverfehler
/{eventID} GET gebe ein bestimmtes Event aus / JSON 200:Erfolgreich, 404:Keie Event mir der ID Vorhanden, 500:Serverfehler
/{eventID} PUT aktualisiere ein bestimmtes Event JSON / 200:Erfolgreich, 400:Fehlerhafte Nachricht, 500:Serverfehler
/{eventID} DELETE lösche eine bestimmtes Event / / 200:Erfolgreich, 404:Kein Event mit dieser ID Vorhanden, 500:Serverfehler
events/{eventID}/wishes
/ GET gebe alle Wünsche eines Events aus / JSON 200:Erfolgreich, 404:Kein Event mit dieser ID vorhanden, 500:Serverfehler
/ POST erstelle einen neuen Wunsch und erhalte seine URI im Response Header JSON JSON 201:Erstellt, 400:Fehlerhafte Nachricht, 400:User ist nicht teil des Events, 404:Kein Event, 400: Daten entsprechen nicht JSON Schema, 423: LOCKED: Shopping List already generated, 500:Serverfehler
/{wunschID} GET erhalte einen spezifischen Wunsch / JSON 200:Erfolgreich, 404:Kein Event, 404:Kein Wish, 500:Serverfehler
/{wunschID} PUT verändere einen spezifischen Wunsch JSON / 200:Erfolgreich, 400:Fehlerhafte Nachricht, 400:User ist nicht teil des Events, 404:Kein Event, 400: Daten entsprechen nicht JSON Schema, 423: LOCKED: Shopping List already generated, 500:Serverfehler
/{wunschID} DELTE lösche einen spezifischen Wunsch / / 200:Erfolgreich, 404:Kein Event, 404:Kein Wish, 500:Serverfehler
events/{eventID}/shoppinglist
/ GET gebe alle Shoppinglist Items eines Events aus / JSON 200:Erfolgreich, 404:Kein Event, 500:Serverfehler
/ POST erstelle einen neue Shoppinglist, POST ist Leer, Informationen werden intern aus dem Event gesammelt und gematched JSON JSON 201:Erstellt, 404:Event ID nicht vorhanden, 500:Serverfehler
/{matchID} GET erhalte ein spezifisches Shoppinglist-Item / JSON 200:Erfolgreich, 404:Kein Event, 404:Kein Shoppinglist Item, 500:Serverfehler
events/{eventID}/users
/ GET gebe alle Users Einträge eines Events aus / JSON 200:Erfolgreich, 404:Kein Event, 500:Serverfehler
/ POST füge einen User zu einem Event hinzu indem du seine ID in dem Event POSTest, erhalte die URI des Eintrages im Response Header JSON JSON 201:Erstellt, 400:Fehlerhafte Nachricht, 404:Kein Event mit dieser ID, 500:Serverfehler
/{userID} GET erhalte einen spezifischen User Eintrag eines Events / JSON 200:Erfolgreich, 404:Kein Event, 404:Kein Eintrag, 500:Serverfehler

Anmerkungen

  • User von Events werden in den Events lediglich als Verlinkung (URI) auf den tatsächlichen Eintrag des Users unter /users/(id) gespeichert und nicht als vollständiges Objekt
    • Dies vermeidet Redundanz
  • Shoppinglist-Einträge bestehen aus der URI des Users dem der Eintrag zugewiesen wurde und aus der URI des wishes aus dem der Eintrag entstanden ist.
    • Dies vermeidet Redundanz