Mithilfe des Pfad-Parameters group können Sie die Ergebnisse einer zurückgegebenen Antwort gruppieren. Dabei können Sie mithilfe des Abfrage-Parameters by angeben, nach welchem Attribut gruppiert werden soll. Zusätzlich können Sie mithilfe des Abfrage-Parameters withcount festlegen (Werte: true oder false), ob die Anzahl der Objekte für jede Gruppe berechnet werden soll. Dies kann die Ausführungszeit verlängern.
HINWEIS: Die API-Methode muss Gruppierungen unterstützen (mithilfe des Parameters EnableGrouping).
 
Das Ergebnis der Abfrage enthält eine Filterbedingung, die Sie als URL-Parameter als Filter übergeben können.
Beispiel 
Die folgende Anfrage ermittelt die Menge aller Identitäten gruppiert nach primärem Standort:
https://<Host-Name>/ApiServer/portal/person/all/group?by=UID_Locality&withcount=true 
Antwort:
{ | 
    { | 
        "Display": "(No value: Primary location)",  | 
        "Filters": [  | 
            { | 
                "ColumnName": "UID_Locality",  | 
                "CompareOp": 0  | 
            }  | 
        ],  | 
        "Count": 42  | 
    },  | 
    { | 
        "Display": "Berlin",  | 
        "Filters": [  | 
            { | 
                "ColumnName": "UID_Locality",  | 
                "CompareOp": 0,  | 
                "Value1": "c644f672-566b-4ab0-bac0-2ad07b6cf457"  | 
            }  | 
        ],  | 
        "Count": 12  | 
    }  | 
}  | 
    
    
Einige Tabellen des Datenmodells sind als Baumstruktur definiert (beispielsweise Department). Daten aus solchen Tabellen können aus einer bestimmten Hierarchie-Ebene geladen werden. 
Mithilfe des Abfrage-Parameters parentKey des übergeordneten Objekts können Sie die Hierarchie-Ebene bestimmen.
Beispiel 
Die folgende Anfrage ermittelt die Servicekategorien direkt unterhalb der Servicekategorie Access Lifecycle:
https://<Host-Name>/ApiServer/portal/servicecategories?parentKey=QER-f33d9f6ec3e744a3ab69a474c10f6ff4 
Die folgende Anfrage ermittelt die Servicekategorien, die keine übergeordnete Servicekategorie haben:
https://<Host-Name>/ApiServer/portal/servicecategories?parentKey= 
Die folgende Anfrage ermittelt alle Servicekategorien unabhängig von ihrer Hierarchie:
https://<Host-Name>/ApiServer/portal/servicecategories 
 
Mithilfe des Pfad-Parameters noRecursive können Sie festlegen, ob die Daten als flache Liste abgefragt wird (Werte: true oder false).
Beispiel 
https://<Host-Name>/ApiServer/portal/servicecategories?noRecursive=true 
  
    
Mithilfe des Abfrage-Parameters withProperties können Sie festlegen, welche zusätzlichen Informationen aus bestimmten Tabellenspalten in der zurückgegebenen Antwort enthalten sein sollen.
HINWEIS: Um Tabellenspalten für diese Abfragen freizugeben, aktivieren Sie im Designer für die entsprechenden Spalten in den Spalteneigenschaften die Option Anzeige in Assistenten.
 
TIPP: Sie können die Namen mehrerer Spalten kommasepariert angeben.
 
Beispiel 
Die folgende Anfrage ermittelt die Menge aller Identitäten und gibt zusätzlich deren bevorzugten Namen und Titel zurück:
https://<Host-Name>/ApiServer/portal/person/all?withProperties=PreferredName,Title 
Antwort:
{ | 
    "TotalCount": 105950,  | 
    "TableName": "Person",  | 
    "Entities": [  | 
        { | 
            "Display": "100, User (USER1)",  | 
            "LongDisplay": "100, User (USER1)",  | 
            "Keys": [  | 
                "bbf3f8e6-b719-4ec7-be35-cbd6383ef370"  | 
            ],  | 
            "Columns": { | 
                "DefaultEmailAddress": { | 
                    "Value": "USER1@qs.ber",  | 
                    "IsReadOnly": true  | 
                },  | 
                "IdentityType": { | 
                    "Value": "Primary",  | 
                    "IsReadOnly": true,  | 
                    "DisplayValue": "Primary identity"  | 
                },  | 
                "PreferredName": { | 
                    "Value": "Johnny",  | 
                    "IsReadOnly": true  | 
                },  | 
                "Title": { | 
                    "Value": "Dr.",  | 
                    "IsReadOnly": true  | 
                },  | 
                "XObjectKey": { | 
                    "Value": "<Key><T>Person</T><P>bbf3f8e6-b719-4ec7-be35-cbd6383ef370</P></Key>",  | 
                    "IsReadOnly": true  | 
                }  | 
            }  | 
}  | 
    
    
Verwenden Sie die typsichere Klassen, um das Datenbankmodell typsicher zu verwenden. Daraus ergeben sich folgende Vorteile:
- 
Beim Kompilieren der Skripte wird geprüft, ob die verwendeten Klassen korrekt sind. Dadurch erkennen Sie bereits sehr früh Tippfehler in Tabellen- und Spaltennamen.
 - 
Die Entwicklungsumgebung kann eine automatische Vervollständigung anbieten.
 - 
Der Datentyp der Spalten ist bekannt, wodurch Typkonvertierungsfehler vermieden werden.
 
Um typsichere Klassen zu verwenden
- 
Bearbeiten Sie das entsprechende API-Plugin (siehe API-Plugins bearbeiten) und nehmen Sie dabei folgende Aktion vor:
- 
Fügen Sie eine Referenz auf die Bibliothek für typsichere Klassen des entsprechenden Datenbankmoduls hinzu (zum Beispiel AOB.TypedWrappers.dll).
Die Klassen für dieses Modul sind daraufhin im Namensraum <Modulname>.TypedWrappers verfügbar (zum Beispiel AOB.TypedWrappers).