Sample code for 30+ languages & platforms
Java Requires Chilkat v11.0.0+

Create Group

See more Microsoft Group Examples

Create a new group as specified in the request body. You can create one of three types of groups:
  • Office 365 Group (unified group)
  • Dynamic group
  • Security group

This operation returns by default only a subset of the properties for each group. These default properties are noted in the Properties section.

See https://docs.microsoft.com/en-us/graph/api/group-post-groups?view=graph-rest-1.0 for more information.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Http;
import com.chilkatsoft.chilkat2.HttpResponse;
import com.chilkatsoft.chilkat2.JsonObject;

public class ChilkatExample {

    public static void main(String[] args) {
        // This example requires the Chilkat API to have been previously unlocked.
        // See Global Unlock Sample for sample code.

        Http http = new Http();

        // Use your previously obtained access token as shown here:
        //    Get Microsoft Graph OAuth2 Access Token with Group.ReadWrite.All scope.

        JsonObject jsonToken = new JsonObject();
        try {
            jsonToken.loadFile("qa_data/tokens/msGraphGroup.json");
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        http.setAuthToken(jsonToken.stringOf("access_token"));

        // Create a JSON body for the HTTP POST
        // Use this online tool to generate the code from sample JSON:
        // Generate Code to Create JSON

        // {
        //   "description": "Self help community for library",
        //   "displayName": "Library Assist",
        //   "groupTypes": [
        //     "Unified"
        //   ],
        //   "mailEnabled": true,
        //   "mailNickname": "library",
        //   "securityEnabled": false
        // }

        JsonObject json = new JsonObject();
        json.updateString("description", "Self help community for library");
        json.updateString("displayName", "Library Assist");
        json.updateString("groupTypes[0]", "Unified");
        json.updateBool("mailEnabled", true);
        json.updateString("mailNickname", "library");
        json.updateBool("securityEnabled", false);

        // POST the JSON to https://graph.microsoft.com/v1.0/groups

        HttpResponse resp = new HttpResponse();
        try {
            http.httpJson("POST", "https://graph.microsoft.com/v1.0/groups", json, "application/json", resp);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        json.load(resp.getBodyStr());
        json.setEmitCompact(false);

        if (resp.getStatusCode() != 201) {
            System.out.println(json.emit());
            System.out.println("Failed, response status code = " + resp.getStatusCode());
            return;
        }

        System.out.println(json.emit());

        // A sample response:
        // (See code for parsing this response below..)

        // {
        //     "id": "b320ee12-b1cd-4cca-b648-a437be61c5cd",
        //       "deletedDateTime": null,
        //       "classification": null,
        //       "createdDateTime": "2018-12-22T00:51:37Z",
        //       "creationOptions": [],
        //       "description": "Self help community for library",
        //       "displayName": "Library Assist",
        //       "groupTypes": [
        //           "Unified"
        //       ],
        //       "mail": "library7423@contoso.com",
        //       "mailEnabled": true,
        //       "mailNickname": "library",
        //       "onPremisesLastSyncDateTime": null,
        //       "onPremisesSecurityIdentifier": null,
        //       "onPremisesSyncEnabled": null,
        //       "preferredDataLocation": "CAN",
        //       "proxyAddresses": [
        //           "SMTP:library7423@contoso.com"
        //       ],
        //       "renewedDateTime": "2018-12-22T00:51:37Z",
        //       "resourceBehaviorOptions": [],
        //       "resourceProvisioningOptions": [],
        //       "securityEnabled": false,
        //       "visibility": "Public",
        //       "onPremisesProvisioningErrors": []
        // }

        // Use this online tool to generate parsing code from sample JSON:
        // Generate Parsing Code from JSON

        String strVal = "";

        String id = json.stringOf("id");
        String deletedDateTime = json.stringOf("deletedDateTime");
        String classification = json.stringOf("classification");
        String createdDateTime = json.stringOf("createdDateTime");
        String description = json.stringOf("description");
        String displayName = json.stringOf("displayName");
        String mail = json.stringOf("mail");
        boolean mailEnabled = json.boolOf("mailEnabled");
        String mailNickname = json.stringOf("mailNickname");
        String onPremisesLastSyncDateTime = json.stringOf("onPremisesLastSyncDateTime");
        String onPremisesSecurityIdentifier = json.stringOf("onPremisesSecurityIdentifier");
        String onPremisesSyncEnabled = json.stringOf("onPremisesSyncEnabled");
        String preferredDataLocation = json.stringOf("preferredDataLocation");
        String renewedDateTime = json.stringOf("renewedDateTime");
        boolean securityEnabled = json.boolOf("securityEnabled");
        String visibility = json.stringOf("visibility");
        int i = 0;
        int count_i = json.sizeOfArray("creationOptions");
        while (i < count_i) {
            json.setI(i);
            i = i + 1;
        }

        i = 0;
        count_i = json.sizeOfArray("groupTypes");
        while (i < count_i) {
            json.setI(i);
            strVal = json.stringOf("groupTypes[i]");
            i = i + 1;
        }

        i = 0;
        count_i = json.sizeOfArray("proxyAddresses");
        while (i < count_i) {
            json.setI(i);
            strVal = json.stringOf("proxyAddresses[i]");
            i = i + 1;
        }

        i = 0;
        count_i = json.sizeOfArray("resourceBehaviorOptions");
        while (i < count_i) {
            json.setI(i);
            // ...
            i = i + 1;
        }

        i = 0;
        count_i = json.sizeOfArray("resourceProvisioningOptions");
        while (i < count_i) {
            json.setI(i);
            // ...
            i = i + 1;
        }

        i = 0;
        count_i = json.sizeOfArray("onPremisesProvisioningErrors");
        while (i < count_i) {
            json.setI(i);
            // ...
            i = i + 1;
        }

        System.out.println("Success.");
    }
}