Endpoints: Device‐Component - bjoern621/PeerDrop GitHub Wiki

Device Component

Hier befindet sich die Endpunkt-Dokumentation des Device-Components.


1. Alle registrierten Geräte eines Accounts zurückgeben

URI

GET /devices

Beschreibung

Gibt alle einem Benutzeraccount zugeordneten registrierten Geräte zurück.

Request

Kein Body.

Response

  • Status 200 (OK):
    {
      "devices" : [
        {
          "displayName" : "string",
          "isCurrentDevice" : "bool",
          "uuid" : "guid",
          "status" : "string"
        }
      ]
    }
    
    Felder:
    • displayName: Anzeigename des Gerätes im Frontend
    • isCurrentDevice: true, wenn dies das aufrufende Gerät ist, sonst false
    • uuid: Einzigartiger Identifier für das Gerät, welcher auch im Cookie von den registrierten Geräten liegt
    • status:
      • online: Gerät ist gerade online und angemeldet ist
      • offline: Gerät ist nicht angemeldet/erreichbar
      • busy: Gerät ist in einer bestehenden Verbindung zu einem Gerät
  • Status 400 (Bad Request):
    {
      "error" : "Invalid account ID in session."
    }
    
  • Status 401 (Unauthorized): Kein Body. Wenn das Client-Gerät in der Session nicht angemeldet ist, oder
    • der Benutzeraccount nicht existiert, oder
    • der Cookie des Clients ein falsches Format hat.

2. Gerät registrieren

URI

POST /device/register

Beschreibung

Registriert das aktuelle Gerät an den Account, über welchen das Client-Gerät gerade angemeldet ist. Setzt beim erfolgreichen Registrieren automatisch den DeviceUUID Cookie beim Client-Gerät.

Request

Kein Body.

Response

  • Status 200 (OK):
    {
      "uuid" : "guid"
    }
    
    Felder:
    • displayName: Anzeigename des Gerätes im Frontend
    • isCurrentDevice: true, wenn dies das aufrufende Gerät ist, sonst false
    • uuid: Einzigartiger Identifier für das Gerät, welcher auch im Cookie von den registrierten Geräten liegt
    • status:
      • online: Gerät ist gerade online und angemeldet ist
      • offline: Gerät ist nicht angemeldet/erreichbar
      • busy: Gerät ist in einer bestehenden Verbindung zu einem Gerät
  • Status 400 (Bad Request):
    {
      "error" : "Invalid account ID in session."
    }
    
  • Status 401 (Unauthorized): Kein Body. Wenn das Client-Gerät in der Session nicht angemeldet ist, oder
    • der Benutzeraccount nicht existiert, oder
    • der Cookie des Clients ein falsches Format hat.

3. Aktuelles Gerät löschen

URI

DELETE /device

Beschreibung

Löscht das aufrufende Gerät aus der Liste von registrierten Geräten für den Account, auf welchem das Client-Gerät eingeloggt ist. Entfernt dafür automatisch die DeviceUUID aus dem Cookie des Client-Gerätes.

Request

Kein Body.

Response

  • Status 200 (OK):
    {
      "message" : "Device deleted successfully."
    }
    
  • Status 400 (Bad Request):
    {
      "error" : "Invalid account ID in session."
    }
    
  • Status 401 (Unauthorized): Kein Body. Wenn das Client-Gerät in der Session nicht angemeldet ist, oder
    • der Benutzeraccount nicht existiert, oder
    • der Cookie des Clients ein falsches Format hat.

3. Anderes Gerät löschen

URI

DELETE /devices

Beschreibung

Löscht ein bereits registriertes Gerät aus der Liste der registrierten Geräte des Accounts, auf welchem das Client-Gerät eingeloggt ist.

Request

{
  "uuid": "guid"
}

Felder:

  • uuid: GUID des zu löschenden Gerätes

Response

  • Status 200 (OK):
    {
      "message" : "Device deleted successfully."
    }
    
  • Status 400 (Bad Request):
    {
      "error" : "Invalid account ID in session."
    }
    
    {
      "error" : "Device UUID is required."
    }
    
  • Status 401 (Unauthorized): Kein Body. Wenn das Client-Gerät in der Session nicht angemeldet ist, oder
    • der Benutzeraccount nicht existiert, oder
    • der Cookie des Clients ein falsches Format hat.