RESTful API: Vorstellung
-
@aschild Mir ist beim Testen aufgefallen, dass der Link nur funktioniert wenn er nicht mit einem
/
(Slash) endet. Also/api
ist ok aber/api/
nicht. Das werde ich noch beheben. War das zufällig auch bei dir so?Die Seite sollte auf jeden Fall auch für Self-Hoster Kunden sichtbar sein. Falls das Problem noch weiter besteht würde ich dich gerne bitte dem Support zu schreiben (support@churchtools.de), dann können wir gerne noch mal genau auf deine Installation gucken.
-
@aschild Also bei uns funktioniert es auch im Selbst-Hosting, scheint also kein generelles Problem zu sein.
-
@MichaelG Wir sind gerade an einem großen Thema dran, wofür wir allerdings "nur" die Gruppenteilnehmer benötigen. Die Endpoints um Gruppenteilnehmer für eine Gruppe zu bekommen, zu ändern, zu entfernen wird es bald geben (hoffentlich spätestens ab v3.45.x). Allerdings hier auch erstmal ohne Gruppenfelder. Das wird aber noch kommen.
Alle Gruppen zu sehen (
GET
) wird es schon mit der nächsten Version geben. Das Anlegen (POST
), Ändern (PATCH
) oder Löschen (DELETE
) von Gruppen wird noch etwas dauern. Ein Zeitfenster kann ich dir leider nicht nennen. Aber ich persönlich würde mir wünschen, dass es bis zum Sommer drin wäre (da ich es private gut nutzen könnte ^^) -
@hbuerger sagte in RESTful API: Vorstellung:
@aschild Mir ist beim Testen aufgefallen, dass der Link nur funktioniert wenn er nicht mit einem
/
(Slash) endet. Also/api
ist ok aber/api/
nicht. Das werde ich noch beheben. War das zufällig auch bei dir so?Die Seite sollte auf jeden Fall auch für Self-Hoster Kunden sichtbar sein. Falls das Problem noch weiter besteht würde ich dich gerne bitte dem Support zu schreiben (support@churchtools.de), dann können wir gerne noch mal genau auf deine Installation gucken.
Ja, genau das war es, ohne Abschliessenden / geht es und macht dann ein Redirect nach https://servername.domain.tld/api#/
Danke
-
Die App verwendet also bereits die API, und der aktuelle Stand der API ist unter /api dokumentiert? Wirklich beides?
Ich versuche nämlich gerade, mir anhand der Doku zusammenzureimen, was die App wohl macht, um mir meine Dienste anzuzeigen und mir dann auch die weiteren Beteiligten aufzulisten - und das gelingt mir nicht.
-
@artus70 Du bist sehr aufmerksam
Ja, die App verwendet die API und diese ist (noch nicht vollständig) dokumentiert. Gerade die Events und Dienste sind auch über die REST API abrufbar, aber haben wir noch nicht dokumentiert, weil wir hier noch mal genau drüber gucken wollen. Das werde ich aber schnellstmöglich nachholen
-
For our church the https://xyz.church.tools/api does not work it only says
why is that?
-
@tomzi
The url only works if there is NO "/" (Slash) in the endxyz.church.tools/api -> works
xyz.church.tools/api/ -> doesn't work -
Ich habe mir die RESTful API angeschaut und sie sieht sehr gut aus!
Vor allem die Doku mit Swagger ist genial.
Mir fiel auf, dass bei Gruppen /api/groups/{id} das Property "members" fehlt. In der Doku ist es vorhanden, bei meinen Antworten fehlt es. Die Properties "information", "settings", "followUp" sind da, nur "members" fehlt. Genau was ich brauche
Kann das Problem jemand nachvollziehen? CT-Version 3.45.0 -
@AGraf sagte in RESTful API: Vorstellung:
Mir fiel auf, dass bei Gruppen /api/groups/{id} das Property "members" fehlt.
Sehr gut aufgefallen.
Das sollte nicht in der Doku sein. Wir haben uns erstmal dagegen entscheiden die Members in die Gruppen API reinzunehmen. Wir arbeiten an einem eigenen Members Endpoint, der ist aber noch nicht fertig. Ich behebe die Unstimmigkeiten in der Doku.
-
Sehr gut! Habe auch erst mal nach /api/groups/{id}/members gesucht ....
-
Hey, vielen Dank für das Bereitstellen der API.
Ich wurde von meiner Gemeinde angefragt, ob ich ein kleines Desktop-Tool schreiben kann, dass die Gottesdienstbesucher in ChurchTools einträgt ohne sich im Webportal einloggen zu müssen. Ist schon absehbar wann diese Funktionalität implementiert sein wird?
Vielen Dank!
-
@philipptrenz sagte in RESTful API: Vorstellung:
Hey, vielen Dank für das Bereitstellen der API.
Ich wurde von meiner Gemeinde angefragt, ob ich ein kleines Desktop-Tool schreiben kann, dass die Gottesdienstbesucher in ChurchTools einträgt ohne sich im Webportal einloggen zu müssen. Ist schon absehbar wann diese Funktionalität implementiert sein wird?
Vielen Dank!
Du meinst sicherlich die Fakten im Events Modul, oder? Nein darüber haben wir aktuell noch nicht gesprochen.
-
@hbuerger Genau! Okay, aber ist der Events-Endpoint schon in Planung? Nachdem die Facts ja frei konfigurierbar sind würde ich für den Endpunkt einfach ein Array mit Key-Values zum Lesen und Setzen vorschlagen.
In etwa so
GET /events/{id}/facts Returns: { "data": [ { "key": "Besucherzahl", "value": 57 }, { "key": "Kollekte", "value": 0 } ] }
und
PUT /events/{id}/facts Request body: { "data": [ { "key": "Besucherzahl", "value": 57 }, { "key": "Kollekte", "value": 165 } ] }
Das sollte generisch genug sein, um auch spätere Erweiterungen an den Facts abbilden zu können.
Ich fände es klasse, wenn das Feature zeitnah Einzug erhält. Ich habe nämlich wenig Lust mich mit der alten API herumzuschlagen
Btw: Wird es eine veröffentlichte Swagger-Spezifikation für die API geben, um sich mit Swagger CodeGen den Client-Code generieren lassen zu können?
-
@philipptrenz sagte in RESTful API: Vorstellung:
Btw: Wird es eine veröffentlichte Swagger-Spezifikation für die API geben, um sich mit Swagger CodeGen den Client-Code generieren lassen zu können?
Diese Spezifikation gibt es schon. Eine Nutzung davon siehst du wenn du /api bei euch in der Installation aufrufst.
Die spezifikation findest du unterhttps://$DEINE_GEMEINDE.church.tools/system/runtime/swagger/openapi.json
$DEINE_GEMEInDE
musst du natürlich austauschen. -
@davidschilling Perfekt, den Link zur JSON-Spezifikation hab ich gesucht. Danke dir!
-
Hi @hbuerger. Vielen Dank für die API, bin gerade drauf gestoßen und finde sie super Hilfreicht!
Ich habe eine kurze frage zur Erweiterung. Ich habe es geschafft meine Gemeinde dazu zu überreden das wir unsere Lieder Datenbank in die Cloud zu ChurchTools ziehen.
Die Song api kann ja aber zur Zeit nur lesen. Habt ihr euch auch überlegt API's zum erstellen von Songs, und für das automatisierte hochlanden von z.b. songbeamer sng dateien zu ermöglichen?
Das wäre super Hilfreich.
Danke.
-
@markusfriesen Du kannst jenseits der dokumentierten RESTful API auch die alte API nutzen. Die musst du halt ein bisschen ausforschen, im Browser die Entwicklertools aufmachen, einen Song hochladen und im Netzwerktab schauen, was da läuft.
-
@bwl21 wobei du die alte API nur für das erstellen der Songs bräuchtest. Für die Dateien gibt es eine eigene file-API bei der du den domaintype song angeben kannst
-
@jziegeler danke für den Hinweis, das ist natürlich richtig.