Karo API Browser

Hinweis zu "/api/games", games2 und games3: Das Ziel ist, dass die APIv2 zukünftig unter /api/games erreichbar ist. Das soll dazu dienen, migrieren zu können ohne die User auszusperren

user games maps mapimages chat messaging misc deprecated/obsolete - or dead obsolete/legacy - slow or dead external

Zusatzinfos und nicht testbare Requests

  • API Auth
    • Empfohlen: Bei jedem Request über den Header "X-Auth-Key" den api_key setzen, den man über /api/key bekommen kann. Erspart jegliches Cookie-Gehampel. Beispiel in CURL:
      curl https://www.karopapier.de/api/user/check -H "x-auth-key: abcdefghijkl123"
      Der Key kann mit einem DELETE request auf /api/key zurückgesetzt/gelöscht werden.
    • Langsame Auth: Bei jedem Request über die Header "X-Auth-Login" und "X-Auth-Password" die Daten setzen. Einfacht, dauert allerdings, die Passwort-Validierung braucht Rechenzeit. Beispiel in CURL:
      curl https://www.karopapier.de/api/user/check -H "x-auth-login: Didi" -H "x-auth-password: password2028"
    • Auth Veraltet: POST: /api/user/login -- Man poste ein JSON array {"login":"Didi","password":"Karo4ever"} und erhält entweder error 403 oder die API-Daten des User UND 1-2 Cookies, die man sich aufheben und immer mitschicken sollte (wegen App und alten Scripts geht als alias auch noch /api/login, soll aber eigentlich sterben).
  • Favoriten
    • Favouriten: PUT: /api/user/favs/12345
    • Favouriten: DELETE: /api/user/favs/12345
  • Notizen
    • PUT: /api/notes/12345 -- JSON-Body {text:"Merken: Nicht letzter werden"}
    • DELETE: /api/notes/12345 (oder Body mit leerem Text, also {text:""})
    • DELETE: /api/notes/12345 (oder Body mit leerem Text, also {text:""})
  • Planned Moves PUT: /api/planned-moves/12345 -- JSON-Body [{x:"1",y:"2",xv:"3",yv:"-4"},{...}]
  • Chat-Nachricht POST /api/chat -- JSON-Body {msg: 'Mein Nachricht im Chat'}
    Optional ein ref: 123456 mitschicken, was eine id-Referenz auf eine existierende Nachricht ist
  • Neues Spiel Am besten hier das Beispiel anschauen
  • Aussteigen DELETE /games/12345
  • Zettel
    • Neue Nachricht: POST /api/messages/1 -- JSON body mit {text: "Hallo Didi!"}
    • Zettel Lesebestätigung: PATCH /api/messages/1 -- Setzt dann den "Unread Counter" uc, also ungelesene pro Kontakt zurück

Dies soll zur Dokumentation der bisherigen verfuegbaren API-Calls dienen.
Vorschläge bitte PER EMAIL!

{}