Gruppen

Gruppen bieten eine effektive Möglichkeit, Nutzer zu organisieren.

Eine Gruppe erstellen

Mit der Mutation createGroup können Sie eine neue Gruppe anlegen.Im folgenden Beispiel wird eine Gruppe für die A-Jugend erstellt. Diese Gruppe ist privat, also nicht öffentlich sichtbar, und bestimmte Nutzer werden automatisch hinzugefügt.Alle Nutzer, die die Rolle „A-Jugend“ oder „App-Admin“ besitzen, sollen der Gruppe automatisch zugeordnet werden. Dafür tragen wir im roles-Attribut die Rollen-Keys ein.In diesem Fall sind das "A-Jugend" und "AA".

mutation CreateGroup {
    createGroup(
        group: {
            name: "A-Jugend"
            publicGroup: false
            listedGroup: false
            description: "Gruppe der A-Jugend"
            roles: ["A-Jugend", "AA"]
        }
    ) {
        name
        memberIds
    }
}

Die Response zeigt die neu erstellte Gruppe mit den zugeordneten Mitgliedern anhand ihrer ID:

{
    "data": {
        "createGroup": {
            "name": "A-Jugend",
            "memberIds": [
                "66e41ca2eb07c6643266248c",
                "87g58sg8wv80s8684984654w"
            ]
        }
    }
}

Alle Gruppen der App laden

Mit der Query listGroups können Sie eine Liste aller Gruppen der App abrufen. Dabei können Sie mit der Variable listedGroupsOnly festlegen, ob nur gelistete Gruppen angezeigt werden sollen.

query ListGroups {
    listGroups(listedGroupsOnly: false) {
        id
        name
        description
    }
}

Die Response zeigt eine Liste der verfügbaren Gruppen:

{
    "data": {
        "listGroups": [
            {
                "id": "00_Appack_TEMPLATE_app_admin",
                "name": "App-Administratoren",
                "description": null
            },
            {
                "id": "00_Appack_TEMPLATE_push_admin",
                "name": "Push-Administratoren",
                "description": null
            },
            {
                "id": "8458s454fx4885e48s48982a",
                "name": "A-Jugend",
                "description": "Gruppe der A-Jugend"
            }
        ]
    }
}

Daten einer Gruppe abrufen

Mit der Query getGroup können Sie die Informationen zu einer bestimmten Gruppe abrufen, einschließlich der Mitgliederliste. Im folgenden Beispiel werden die Mitglieder der Gruppe mit der ID „8458s454fx4885e48s48982a“ abgefragt.

query GetGroup {
    getGroup(id: "8458s454fx4885e48s48982a") {
        members {
            name
            firstname
        }
    }
}

Die Response gibt die Namen und Vornamen der Gruppenmitglieder zurück:

{
    "data": {
        "getGroup": {
            "members": [
                {
                    "name": "Mustermann",
                    "firstname": "Max"
                },
                {
                    "name": "Musterfrau",
                    "firstname": "Marta"
                }
            ]
        }
    }
}

Weitere nützliche Queries:

Weitere nützliche Mutationen: