Skip to content

API Documentation

MichelleWeck edited this page Mar 30, 2021 · 35 revisions

Route Overview

Authentifizierung

Registrierung

Sample Call :

POST {url}/api/users/register

{
    "username":"michelle99",
    "email":"michelle99@email.de",
    "password":"supergeheim"
}

Success Code : 201

Success Response :

   {message: "User erfolgreich registriert"}

Error Code: : 400

Error Response :

   {message: "Username is already used"}

Error Code: : 409

Error Response :

   {message: "Email is already used"}

Error Code: : 500

Error Response :

   {message: "Please fill out all fields"}

Login

Sample Call :

POST {url}/api/users/login

{
    "email":"michelle99@email.de",
    "password":"supergeheim"
}

Success Code : 200

Success Response :

{
    "username":"michelle99",
    "email":"michelle99@email.de",
    "profilePicture": "/profilePics/defaultProfile.png",
    "token": "xxxx-xxxxx-xxxxx-xxxxx-xxxxxxxx"
}

Error Code: : 401

Error Response :

   {message: "password or email incorrect"}

Logout

Sample Call :

POST {url}/api/users/logout

Success Code : 200

Success Response :

   {message: "you're logged out"}

Startseite

Letzter Photowalk

Sample Call :

GET {url}/api/photowalks/last

Success Code : 200

Success Response :

   {
      "id": 1,
      "name": "Kreise ziehen im Park",
      "length": 180,
      "region": "Hamburger Stadtpark",
      "description": "Dieser PhotoWalk führt Dich einmal durch das grüne Herz von Hamburg. Der 1914 eröffnete Park ist für viele in Hamburg Lebende der beste Ort zum gemeinsamen Grillen oder ideal für einen Sonntagsspaziergang. Dieser PhotoWalk führt Dich an einigen der 23 Kunstwerke vorbei, die im Park zu finden sind. Kannst Du mit Hilfe der Statuen die Photochallenges bewältigen? Neben den Statuen wird Dir auf diesem Spaziergang auch eins von Hamburgs bekanntesten Gebäuden begegnen: Der 1930 zum Planetarium umgebaute Wasserturm. Dieser PhotoWalk beginnt und endet in sehr kurzer Laufreichweite zur Hamburger U-Bahn. Wir empfehlen aus Richtung der U-Bahn Saarlandstraße zu beginnen und den Spaziergang nahe der U-Bahn Borgweg abzuschließen."
   }

Error Code: : 404

Error Response :

{
   "No edited photowalks"
}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Alle Photos zum Photowalk

Sample Call :

//GET {url}/api/photos/photowalk/:PhotowalkId
GET {url}/api/photos/photowalk/1

Success Code : 200

Success Response :

   [
       {
           "id": 2,
           "photo_link": "app\\uploads\\1610808831721wallpaper.jpg",
           "challengeId": 1,
           "userId": 1,
           "likeCount": "0"
       }
   ]

Error Code: : 500

Error Response :

   {message: "Fehler beim Auslesen der Photos zum Photowalk mit id = 1"}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Photowalk Overview

Alle Photowalks

Sample Call :

   GET {url}/api/photowalks

Success Code : 200

Success Response :

   [
     "photowalks": [
       {
           "id": 1,
           "name": "Photowalk 1",
           "length": 2.7,
           "region": "Wandsbek",
           "route": "Link zur Route"
       },
       {
           "id": 2,
           "name": "Photowalk 2",
           "length": 3.5,
           "region": "Hamburg Mitte",
           "route": "Link zur Route 2"
       },
       {
           "id": 3,
           "name": "Photowalk 3",
           "length": 5,
           "region": "Hafencity",
           "route": "Link zur Route 3"
       }
     ],
     "editedPhotowalks"[
         1
     ]
   ]

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Photowalk Detail

Photowalk Details lesen

Sample Call :

//GET {url}/api/photowalks/:PhotowalkId
GET {url}/api/photowalks/2

Success Code : 200

Success Response :

   {
   	"id": 2,
   	"name": "Bei Wind und Wellen",
   	"length": 90,
   	"region": "Hafencity",
   	"description": "Die Hafencity ist Hamburgs neuester Stadtteil, trägt aber auch sehr viel Tradition und Geschichte mit sich. Auf diesem Walk kannst Du viele der Facetten erleben, die Hamburg unserer Meinung nach zu der schönsten Stadt im Norden machen: Die Nähe zum Wasser, der frische Wind, der einem auch bei Hamburger Schietwetter erfrischend um die Nase weht, das UNESCO-Welterbe die Speicherstadt und innovative, moderne Architektur mit viel Glas.Lass Dich von diesem PhotoWalk von den Elbbrücken zur Elbphilharmonie führen. Versuche doch mal einmal im Monat auf diesen Walk zu gehen und lasse Dich von der Entwicklung und Veränderung dieses Stadtteils überraschen. Vielleicht kannst Du ja mit Deinen Fotos die Entwicklung einer neuen Konstruktion festhalten. ",
   	"challenges": [
   		{
   			"id": 11,
   			"description": "Klarer Durchblick",
   			"lat": 53.53521336640151,
   			"lng": 10.024162351676146,
   			"photowalkId": 2
   		},
   		{
   			"id": 12,
   			"description": "Herausragend",
   			"lat": 53.53684950227621,
   			"lng": 10.017179843560202,
   			"photowalkId": 2
   		},
   		...
   	],
   	"waypoints": [
   		{
   			"id": 61,
   			"lat": 53.53521336640151,
   			"lng": 10.024162351676146,
   			"photowalkId": 2
   		},
   		{
   			"id": 62,
   			"lat": 53.53538689692047,
   			"lng": 10.023538075184806,
   			"photowalkId": 2
   		},
   		{
   			"id": 63,
   			"lat": 53.535104055808205,
   			"lng": 10.023295920352979,
   			"photowalkId": 2
   		},
   		...
   	]
   }

Error Code: : 500

Error Response :

   {message: "Fehler beim Auslesen des Photowalks mit id = 2"}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Photo hochladen

Sample Call :

POST {url}/api/photos

   {
   	"photo_link": "examplefile.png",
   	"challengeId": "1"
   }

Success Code : 201

Success Response :

   {message: "Photo erfolgreich hochgeladen"}

Error Code: : 400

Error Response :

   {message: "content cannot be empty!"}

Error Code: : 500

Error Response :

   {message: "Some error occurred while creating the Photo"}

Photo liken

Sample Call :

//POST {url}/api/likes/:photoId
POST {url}/api/likes/2

Success Code : 200

Success Response :

   {message: "Photo erfolgreich geliked!"}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Like löschen

Sample Call :

//DELETE {url}/api/likes/:photoId
DELETE {url}/api/likes/2

Success Code : 200

Success Response :

   {message: "Like erfolgreich gelöscht!"}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

My Photos

Alle Photos zum User

Sample Call :

GET{url}/api/photos/user

Success Code : 200

Success Response :

   [
       {
           "id": 2,
           "photo_link": "app\\uploads\\1610808831721acb.jpg",
           "challengeId": 13,
           "userId": 1,
           "likeCount": "2",
       "liked": 1,
       "challenge": {
   	"description": "Spiegel",
   	"photowalkId": 2
       }
       },
       {
           "id": 5,
           "photo_link": "app\\uploads\\1610880480730def.JPG",
           "challengeId": 3,
           "userId": 1,
           "likeCount": "0",
       "liked": null,
       "challenge": {
   	"description": "Lächeln und gemeinsam winken",
   	"photowalkId": 1
       }
       }
   ]

Error Code: : 500

Error Response :

   {message: "Fehler beim Auslesen der Photos des Users"}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Alle Photos aller Freunde zum User

Sample Call :

GET{url}/api/photos/friends

Success Code : 200

Success Response :

   [
       {
           "id": 4,
           "photo_link": "/uploads/thumbnail1616497988115flower.png",
           "challengeId": 22,
           "userId": 3,
           "likeCount": "1",
           "liked": null,
           "challenge": {
               "description": "Die grüne Stadt",
               "photowalkId": 3
           },
           "user": {
               "username": "mitch"
           }
       }
   ]

Error Code: : 500

Error Response :

   {message: "Fehler beim Auslesen der Photos des Users"}

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

My Friends

Alle Freundschaften zum User

Sample Call :

GET {url}/api/users/friends

Success Code : 200

Success Response :

   {
       "friends": [
           {
               "id": 3,
               "username": "mitch",
               "profile_picture": "/profilePics/defaultProfile.png",
               "friendship": {
                   "accepted": true,
                   "first_move": true
               }
           }
       ]
   }

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

User mit Username finden

Sample Call :

//GET {url}/api/users/search/:username
GET {url}/api/users/search/mi

Success Code : 200

Success Response :

   {
       "id": 8,
       "username": "mi",
       "profile_picture": "/profilePics/defaultProfile.png"
   }

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Freundschaft hinzufügen

Sample Call :

//POST {url}/api/friendships/:friendId
POST {url}/api/friendships/1

Success Code : 201

Success Response :

   {
       "message": "Freundschaft erfolgreich erstellt"
   }

Error Code: : 400

Error Response :

   {
       message: "Freundschaft existiert bereits!"
   }
  {
      "message": "Ids müssen unterschiedlich sein!"
  }
  {
      "message": "Content can not be empty!"
  }

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Freundschaft akzeptieren

Sample Call :

//PUT {url}/api/friendships/:friendId
PUT {url}/api/friendships/1

Success Code : 200

Success Response :

   {
       "message": "Freundschaft erfolgreich akzeptiert."
   }

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Freundschaft löschen

Sample Call :

//DELETE {url}/api/friendships/:friendId
DELETE {url}/api/friendships/1

Success Code : 200

Success Response :

   {
       "message": "Freundschaft wurde erfolgreich gelöscht!"
   }

Error Code: : 401

Error Response :

   {message: "Unauthorized"}

Einstellungen

Username ändern

Sample Call :

PATCH {url}/api/users/updateUsername
{
   "newUsername":"mike97"
}

Success Code : 200

Success Response :

   {
       message: "Username erfolgreich erneuert."
   }

Error Code: : 404

Error Response :

   {message: "Kein Username gegeben!"}

Error Code: : 409

Error Response :

   {message: "Username bereits vergeben."}

Error Code: : 430

Error Response :

   {message: "Username hat sich nicht geändert!"}

Error Code: : 500

Error Response :

   {message: "Some error occurred while updating."}

Profilbild ändern

Sample Call :

PATCH {url}/api/users/updateProfilePicture
{
   "profile_picture": "examplefile.png"
}

Success Code : 200

Success Response :

{
   "message": "Profilbild erfolgreich erneuert",
   "path": "/profilePics/small1617109032357IMG_3536.JPG"
}

Error Code: : 400

Error Response :

   {message: "content cannot be empty!"}

Error Code: : 500

Error Response :

   {message: "Some error occurred while updating the ProfilePicture"}

Password ändern

Sample Call :

PUT {url}/api/users/updatePassword
{
   "oldPassword":"supergeheim",
   "newPassword":"superdupergeheim"
}

Success Code : 200

Success Response :

   {
       message: "Password erfolgreich erneuert."
   }

Error Code: : 400

Error Response :

   {"message": "Password has to have at least 8 characters"}

Error Code: : 401

Error Response :

   {"message": "Current password is incorrect"}

Error Code: : 500

Error Response :

{"message": "Some error occurred while updating."}

User löschen

Sample Call :

DELETE {url}/api/users/deleteUser

Success Code : ``

Success Response :

   {
       message: "User erfolgreich gelöscht"
   }

Error Code: : 500

Error Response :

   {message: "Could not delete User"}

Alle Photos vom User löschen

Sample Call :

DELETE {url}/api/photos/deleteUserAllPhotos

Success Code : 200

Success Response :

   {message: "Photos erfolgreich gelöscht"}

Error Code: : 500

Error Response :

   {message: "Fehler beim Auslesen der Photos des Users"}