Jump to content

Kategorienverwaltung über die API


Moritz

Recommended Posts

Ich glaube wir sind uns alle einig, die Kategorisierung von smaps ist ein echt feines neues Feature und auch ein veranschaulichendes Beispiel, in wiefern wir – die smapLand-Community hier! – Einfluss auf die Entwicklung von smapOne nehmen können. @Frank Röhl, dir gebührt an dieser Stelle höchster Dank dafür, die Gruppierungslawine angetreten zu haben.

Was mir bei dem neuen Feature aufgefallen ist: Mir fehlen noch einige wesentliche Funktionen. So zum Beispiel eine Mehrfachzuweisung oder -entfernung von smaps zu Kategorien. Und damit bin ich ja nicht alleine, wie der Thread zeigt.

Deshalb möchte ich mit diesem Beitrag ein weiteres Mal die Stärke der API verdeutlichen und wie wir mit ihrer Hilfe unsere eigenen Features an das smapOne-Ecosystem ranbasteln können.

 

Die API-Endpunkte

Zunächst einmal einige Informationen zu den neuen API-Endpunkten. Diese tauchen nämlich noch nicht in der offiziellen Swagger-UI-API-Dokumentation auf. Deshalb habe ich in meinem Browser einfach mal ein wenig "gehorcht", was da so an Routen angesprochen werden und ob es API-Routen (".../backend/v1/..." oder ".../backend/intern...") sind.

image.thumb.png.5adf036e4fd2fe5dd9fa1185575ed51f.png

 

Neue Kategorie erstellen

POST https://platform.smapone.com/backend/intern/smaps/overview/categories

Payload für die Neuanlage von Kategorien ist einfach nur ein JSON-Objekt mit "title"-Key und entsprechendem Value für die Kategoriebezeichnung.

{
    "title": "Kategorientest"
}

 

Vorhandene Kategorien abrufen

GET https://platform.smapone.com/backend/intern/smaps/overview/categories

Die Response ist ein JSON-Array mit den IDs und Titeln der Kategorie sowie der Info, wieviele smaps ihr zugeordnet sind.

image.png.36cd1063ecbd7fab47288eedf0f35a85.png

 

Kategoriezuordnung für eine smap abrufen

GET https://platform.smapone.com/backend/intern/smaps/overview/<smapID>/categories

Die Response ist hier ein JSON-Array mit allen Kategorien (ID und Titel) sowie eine true|false-Info, ob die smap dieser Kategorie zugewiesen ist.

image.png.7e5ac23c9d515b4fff168f44b17e73e7.png

 

Kategoriezuordnung für eine smap anpassen

PUT https://platform.smapone.com/backend/intern/smaps/overview/<smapID>/categories

Der Payload, also der Body für diese Route ist wie folgt aufzubauen:

{
  "Categories": [
    {
      "categoryId": <categoryID>,
      "isAssigned": true|false
    },
    {...}
  ]
}

 

Und weiter?

Ich bastle gerade an einem kleinen Helfertool, mit dem dann z.B. viele smaps auf einmal Kategorien zugewiesen werden können. Ein etwas anderes Tool (konkret zum Verwalten von Webhooks) mit ähnlicher Motivation (fehlende Funktion "von außen" ranbasteln) habe ich ja schon an anderer Stelle vorgestellt:

 

Ich habe einfach mal ChatGPT beauftragt, mir hierfür eine App zu bauen. Ihr werdet begeistert sein, was dabei herausgekommen ist:

image.png.f2b66be083a50d7cb25b64deaa1c4f52.png

Ja zugegeben, das Klickt sich ein wenig umständlich und ermöglicht auch (noch) nicht, dass man sich vorhandene smaps einer Kategorie anzeigen lassen kann (um dann selektiv abzuwählen). Aber um viele oder alle smaps einer Kategorie hinzufügen oder entfernen zu können ist schon ganz hilfreich. Probiert es mal aus (hinten statt <API_TOKEN> einfach euer Token an die URL anfügen)!

https://smappetizer.github.io/category-manager/?token=<API_TOKEN>

 

  • Like 2
  • Thanks 10
Link to comment
Share on other sites

  • Moritz pinned this topic
  • 2 weeks later...

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...