Navigation

    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search

    RESTful API: Vorstellung

    ChurchTools Schnittstellen
    api rest
    12
    24
    2480
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tomzi last edited by tomzi

      For our church the https://xyz.church.tools/api does not work it only says0_1554204083000_3cc56c50-123c-46fe-8454-6bc2d85f056b-image.png

      why is that?

      H 1 Reply Last reply Reply Quote 0
      • H
        hallo144 @tomzi last edited by

        @tomzi
        The url only works if there is NO "/" (Slash) in the end

        xyz.church.tools/api -> works
        xyz.church.tools/api/ -> doesn't work

        1 Reply Last reply Reply Quote 0
        • A
          AGraf last edited by

          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

          1 Reply Last reply Reply Quote 0
          • hbuerger
            hbuerger ChurchToolsMitarbeiter last edited by

            @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.

            1 Reply Last reply Reply Quote 0
            • A
              AGraf last edited by

              Sehr gut! Habe auch erst mal nach /api/groups/{id}/members gesucht ....

              1 Reply Last reply Reply Quote 0
              • philipptrenz
                philipptrenz last edited by philipptrenz

                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!

                hbuerger 1 Reply Last reply Reply Quote 0
                • hbuerger
                  hbuerger ChurchToolsMitarbeiter @philipptrenz last edited by

                  @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.

                  philipptrenz 1 Reply Last reply Reply Quote 0
                  • philipptrenz
                    philipptrenz @hbuerger last edited by philipptrenz

                    @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?

                    davidschilling 1 Reply Last reply Reply Quote 0
                    • davidschilling
                      davidschilling ChurchToolsMitarbeiter @philipptrenz last edited by davidschilling

                      @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 unter https://$DEINE_GEMEINDE.church.tools/system/runtime/swagger/openapi.json
                      $DEINE_GEMEInDE musst du natürlich austauschen.

                      philipptrenz 1 Reply Last reply Reply Quote 1
                      • philipptrenz
                        philipptrenz @davidschilling last edited by

                        @davidschilling Perfekt, den Link zur JSON-Spezifikation hab ich gesucht. Danke dir!

                        1 Reply Last reply Reply Quote 0
                        • MarkusFriesen
                          MarkusFriesen last edited by

                          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.

                          B 1 Reply Last reply Reply Quote 0
                          • B
                            bwl21 @MarkusFriesen last edited by

                            @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.

                            jziegeler MarkusFriesen 2 Replies Last reply Reply Quote 0
                            • jziegeler
                              jziegeler ChurchToolsMitarbeiter @bwl21 last edited by

                              @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

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                bwl21 @jziegeler last edited by

                                @jziegeler danke für den Hinweis, das ist natürlich richtig.

                                1 Reply Last reply Reply Quote 0
                                • MarkusFriesen
                                  MarkusFriesen @bwl21 last edited by

                                  @bwl21 Stimmt, das funktioniert natürlich auch. Probiere ich aus. Danke.

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post