Sample code for 30+ languages & platforms
Java

List Events on a Specified Google Calendar

See more Google Calendar Examples

Demonstrates how to fetch the list of events on a particular Google Calendar. The calendar can be referenced by the calendar ID, or by the keyword "primary".

Chilkat Java Downloads

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

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.

        // This example uses a previously obtained access token having permission for the
        // Google Calendar scope.

        // In this example, Get Google Calendar OAuth2 Access Token, the access
        // token was saved to a JSON file.  This example fetches the access token from the file..
        JsonObject jsonToken = new JsonObject();
        jsonToken.loadFile("qa_data/tokens/googleCalendar.json");
        if (!jsonToken.hasMember("access_token")) {
            System.out.println("No access token found.");
            return;
        }

        Http http = new Http();
        http.setAuthToken(jsonToken.stringOf("access_token"));

        // Let's get the primary calendar.  A calendar ID could have be used instead of "primary".
        http.setUrlVar("calendarId", "primary");
        StringBuilder sbResponse = new StringBuilder();
        try {
            http.quickGetSb("https://www.googleapis.com/calendar/v3/calendars/{$calendarId}/events", sbResponse);
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
            return;
        }

        if (http.getLastStatus() != 200) {
            // Note: If a 401 unauthorized response is received, it likely means that the OAuth2 access token needs
            // to be refreshed or re-fetched.
            System.out.println("Error response status: " + http.getLastStatus());
            System.out.println(sbResponse.getAsString());
            return;
        }

        // A sample JSON response:
        // (Code for parsing the Google Calendar events is shown below.)

        // {
        //  "kind": "calendar#events",
        //  "etag": "\"p32cfpufit76da0g\"",
        //  "summary": "support@chilkatcloud.com",
        //  "updated": "2017-08-10T14:00:27.199Z",
        //  "timeZone": "America/Chicago",
        //  "accessRole": "owner",
        //  "defaultReminders": [
        //   {
        //    "method": "popup",
        //    "minutes": 10
        //   }
        //  ],
        //  "nextSyncToken": "CJj8-fLpzNUCEJj8-fLpzNUCGAU=",
        //  "items": [
        //   {
        //    "kind": "calendar#event",
        //    "etag": "\"3004746854620000\"",
        //    "id": "5jt9fopfg3rr9eftegiuq7gc5k",
        //    "status": "confirmed",
        //    "htmlLink": "https://www.google.com/calendar/event?eid=NWp0OWZvcGZnM3JyOWVmdGVnaXVxN2djNWsgc3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t",
        //    "created": "2017-08-10T13:57:07.000Z",
        //    "updated": "2017-08-10T13:57:07.310Z",
        //    "summary": "Run 10 miles",
        //    "creator": {
        //     "email": "support@chilkatcloud.com",
        //     "self": true
        //    },
        //    "organizer": {
        //     "email": "support@chilkatcloud.com",
        //     "self": true
        //    },
        //    "start": {
        //     "dateTime": "2017-08-10T12:00:00-05:00"
        //    },
        //    "end": {
        //     "dateTime": "2017-08-10T13:00:00-05:00"
        //    },
        //    "iCalUID": "5jt9fopfg3rr9eftegiuq7gc5k@google.com",
        //    "sequence": 0,
        //    "hangoutLink": "https://plus.google.com/hangouts/_/chilkatcloud.com/support?hceid=c3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t.5jt9fopfg3rr9eftegiuq7gc5k",
        //    "reminders": {
        //     "useDefault": true
        //    }
        //   },
        //   {
        //    "kind": "calendar#event",
        //    "etag": "\"3004746898118000\"",
        //    "id": "7dvh49vd219r3sq7jdueieu8rc",
        //    "status": "confirmed",
        //    "htmlLink": "https://www.google.com/calendar/event?eid=N2R2aDQ5dmQyMTlyM3NxN2pkdWVpZXU4cmMgc3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t",
        //    "created": "2017-08-10T13:57:29.000Z",
        //    "updated": "2017-08-10T13:57:29.059Z",
        //    "summary": "Eat Giordano's Pizza",
        //    "creator": {
        //     "email": "support@chilkatcloud.com",
        //     "self": true
        //    },
        //    "organizer": {
        //     "email": "support@chilkatcloud.com",
        //     "self": true
        //    },
        //    "start": {
        //     "dateTime": "2017-08-10T15:00:00-05:00"
        //    },
        //    "end": {
        //     "dateTime": "2017-08-10T16:00:00-05:00"
        //    },
        //    "iCalUID": "7dvh49vd219r3sq7jdueieu8rc@google.com",
        //    "sequence": 0,
        //    "hangoutLink": "https://plus.google.com/hangouts/_/chilkatcloud.com/support?hceid=c3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t.7dvh49vd219r3sq7jdueieu8rc",
        //    "reminders": {
        //     "useDefault": true
        //    }
        //   },
        //   {
        //    "kind": "calendar#event",
        //    "etag": "\"3004746915224000\"",
        //    "id": "5btd89ljn07bg3tlgpimcaqrro",
        //    "status": "confirmed",
        //    "htmlLink": "https://www.google.com/calendar/event?eid=NWJ0ZDg5bGpuMDdiZzN0bGdwaW1jYXFycm8gc3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t",
        //    "created": "2017-08-10T13:57:37.000Z",
        //    "updated": "2017-08-10T13:57:37.612Z",
        //    "summary": "Nap",
        //    "creator": {
        //     "email": "support@chilkatcloud.com",
        //     "self": true
        //    },
        //    "organizer": {
        //     "email": "support@chilkatcloud.com",
        //     "self": true
        //    },
        //    "start": {
        //     "dateTime": "2017-08-10T16:30:00-05:00"
        //    },
        //    "end": {
        //     "dateTime": "2017-08-10T17:30:00-05:00"
        //    },
        //    "iCalUID": "5btd89ljn07bg3tlgpimcaqrro@google.com",
        //    "sequence": 0,
        //    "hangoutLink": "https://plus.google.com/hangouts/_/chilkatcloud.com/support?hceid=c3VwcG9ydEBjaGlsa2F0Y2xvdWQuY29t.5btd89ljn07bg3tlgpimcaqrro",
        //    "reminders": {
        //     "useDefault": true
        //    }
        //   }
        //  ]
        // }
        //

        JsonObject json = new JsonObject();
        json.loadSb(sbResponse);

        int numEvents = json.sizeOfArray("items");
        int i = 0;
        while (i < numEvents) {
            json.setI(i);
            System.out.println(json.stringOf("items[i].summary"));
            System.out.println(json.stringOf("items[i].start.dateTime"));
            System.out.println(json.stringOf("items[i].end.dateTime"));
            System.out.println("--");
            i = i + 1;
        }

        // Sample output:

        // Run 10 miles
        // 2017-08-10T12:00:00-05:00
        // 2017-08-10T13:00:00-05:00
        // --
        // Eat Giordano's Pizza
        // 2017-08-10T15:00:00-05:00
        // 2017-08-10T16:00:00-05:00
        // --
        // Nap
        // 2017-08-10T16:30:00-05:00
        // 2017-08-10T17:30:00-05:00
        // --
        //
    }
}