Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

APIs für REDAXO

License

NotificationsYou must be signed in to change notification settings

FriendsOfREDAXO/api

Repository files navigation

Beschreibung

Dieses AddOn ermöglich es, APIs in REDAXO zu nutzen. Dabei geht es vor allem um die Nutzung von APIs aus anderen Systemen heraus, um z.B. Daten abzugleichen oder zu ergänzen. Weiterhin ist die API erweiterbar. Jedes andere AddOn kann eigene Endpunkte anlegen.

Zunächst ist geplant die Basisfeatures von REDAXO abzubilden.

Geplante und umgesetzte Endpunkte

Wenn getestet, dann wurde explicit nochmal geprüft, ob die Funktionalität exakt so umgesetzt sind, wie sie in REDAXO/Core verwendet wurde.

  • Passende Extension Points
  • Vorhandene Klassen wurden genutzt
  • Felder sind auf das Nötigste reduziert. Keine Felder von externen/anderen AddOns/PlugIns werden ausgegeben oder verarbeitet.
  • OpenAPI Spezifikationen sind vorhanden und richtig verwendet

Endpunkte

EndpunktMethodBeschreibungStatusTest
/api/structure/articlesGETArtikelliste
/api/structure/articles/{id}/slicesGETSlices eines Artikel anzeigen
/api/structure/articles/{id}/slicesPOSTArticleSlice erstellen
/api/structure/articles/{id}/slices/{slice_id}GETSlice eines Artikel anzeigen
/api/structure/articles/{id}/slices/{slice_id}PUT/PATCHSlice eines Artikel ändern
/api/structure/articlesPOSTArtikel anlegen
/api/structure/articles/{id}GETArtikel anzeigen
/api/structure/articles/{id}DELETEArtikel löschen
/api/structure/articles/{id}PUT/PATCHArtikel ändern
/api/structure/categoriesPOSTKategorie anlegen
/api/structure/categories/{id}DELETEKategorie löschen
/api/structure/categories/{id}PUT/PATCHKategorie ändern
/api/mediaGETMedienliste
/api/media/{filename}GETMediametadaten
/api/media/{filename}/fileGETMediafile (raw)
/api/mediaPOSTMedium anlegen
/api/media/{id}DELETEMedium löschen
/api/media/{id}PUT/PATCHMedium ändern
/api/media/categoriesGETMediakategorienliste
/api/media/categoriesPOSTMediakategorie anlegen
/api/media/categories/{id}DELETEMediakategorie löschen
/api/media/categories/{id}PUT/PATCHMediakategorie ändern
/api/modulesGETModulliste
/api/modulesPOSTModul anlegen
/api/module/{id}GETModul auslesen
/api/module/{id}DELETEModul löschen
/api/module/{id}PUT/PATCHModul ändern
/api/templatesGETTemplate Liste
/api/templatesPOSTTemplate anlegen
/api/templates/{id}DELETETemplate löschen
/api/templates/{id}PUT/PATCHTemplate ändern
/api/usersGETUserliste
/api/usersPOSTUser anlegen
/api/users/{id}GETUser holen
/api/users/{id}/roleGETUserrolen eines Users auflisten
/api/users/{id}/rolePOSTUserrole einem Users hinzufügen
/api/users/{id}/roleDELETEUserrole eines Users löschen
/api/users/{id}DELETEUser löschen
/api/users/{id}PUT/PATCHUser ändern
/api/users/rolesGETRollenliste
/api/users/rolesPOSTRolle anlegen
/api/users/roles/{id}DELETERolle löschen
/api/users/roles/{id}PUT/PATCHRolle ändern
/api/system/clangsGETSprachenliste
/api/system/clangsPOSTSprache anlegen
/api/system/clangs/{id}GETSprache auslesen
/api/system/clangs/{id}DELETESprache löschen
/api/system/clangs/{id}PUT/PATCHSprache ändern

Bei Problemen mit Authorization

Es kann sein, dass der Apache nicht alle Header weitergibt. In diesem Fall kann es helfen, die folgenden Zeilen in die .htaccess zu schreiben:

# Sets the HTTP_AUTHORIZATION header removed by ApacheRewriteCond %{HTTP:Authorization} .RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

Ohne API-Token geht nichts

Bitte zuerst einen API-Token im Backend anlegen und die ensprechenden Scopes (Endpunkt) freigeben.

API Struktur

Am besten direkt im AddOn unter OpenAPI nachsehen. Dort werden alle verfügbaren Endpunkte aufgelistet.

Was funktioniert vielleicht nicht, und müssen AddOn Entwickler beachten

Das API AddON funktioniert aus dem Frontend-User-Kontext heraus. Das heisst, sollte es registrierte Methoden an bestimmtenExtensionPoints geben, welche nur im Backend-User-Kontext gesetzt wurden, z.B. (rex::isBackend) -> registerEP, dann werden diese nicht in der dieser API ausgeführt.D.h. diese AddOns müssen entsprechend angepasst werden.

Weitere noch nicht beachtete Usecases

FE API (Wird hier noch nicht behandelt)

- GET API     - für Content frei und abhängig vom Frontenduserrechten YCom/YGroup- POST/UPDATE/GET/DELETE API    - YCOm Profile, Password etc.    - für YForm    - Für Sonsiges

BE API (Wird hier noch nicht behandelt)

- für alles mit BE-User-Rechten

Credits:

checked by:https://www.coderabbit.ai


[8]ページ先頭

©2009-2025 Movatter.jp