Events: insert

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Erstellt einen Termin. Jetzt testen oder Beispiel ansehen

Anfragen

HTTP-Anfrage

POST https://www.googleapis.com/calendar/v3/calendars/calendarId/events

Parameter

Parametername Wert Beschreibung
Pfadparameter
calendarId string Kalender-ID. Rufen Sie die Methode calendarList.list auf, um Kalender-IDs abzurufen. Wenn Sie auf den Hauptkalender des aktuell angemeldeten Nutzers zugreifen möchten, verwenden Sie das Keyword „primary“.
Optionale Suchparameter
conferenceDataVersion integer Versionsnummer der vom API-Client unterstützten Konferenzdaten In Version 0 wird davon ausgegangen, dass keine Konferenzdaten unterstützt werden. Daher werden die Konferenzdaten im Text der Veranstaltung ignoriert. Version 1 unterstützt das Kopieren von ConferenceData-Daten sowie das Erstellen neuer Konferenzen mit dem Feld „createRequest“ von ConferenceData. Der Standardwert ist 0. Zulässige Werte: 0 bis 1.
maxAttendees integer Die maximale Anzahl von Teilnehmern, die in die Antwort aufgenommen werden sollen. Wenn es mehr als die angegebene Anzahl von Teilnehmern gibt, wird nur der Teilnehmer zurückgegeben. Optional.
sendNotifications boolean Veraltet. Verwenden Sie stattdessen sendUpdates.

Gibt an, ob Benachrichtigungen über die Erstellung des neuen Ereignisses gesendet werden sollen. Beachten Sie, dass einige E-Mails auch dann gesendet werden können, wenn Sie den Wert auf false setzen. Der Standardwert ist false.
sendUpdates string Gibt an, ob Benachrichtigungen über die Erstellung des neuen Termins gesendet werden sollen. Einige E-Mails werden möglicherweise noch gesendet. Der Standardwert ist false.

Folgende Werte sind zulässig:
  • all“: Benachrichtigungen werden an alle Gäste gesendet.
  • externalOnly“: Benachrichtigungen werden nur an Personen gesendet, die Google Kalender nicht nutzen.
  • none“: Es werden keine Benachrichtigungen gesendet.
supportsAttachments boolean Gibt an, ob der API-Client, der Vorgänge ausführt, Ereignisanhänge unterstützt. Optional. Die Standardeinstellung ist "False".

Autorisierung

Für diese Anfrage ist eine Autorisierung in mindestens einem der folgenden Bereiche erforderlich:

Umfang
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events

Weitere Informationen finden Sie auf der Seite Authentifizierung und Autorisierung.

Anfragetext

Geben Sie im Anforderungstext eine Ereignisressource mit den folgenden Attributen an:

Attributname Wert Beschreibung Hinweise
Erforderliche Properties
end nested object Das Ende der Veranstaltung (exklusiv). Bei einem wiederkehrenden Termin ist dies die Endzeit der ersten Instanz.
start nested object Die Startzeit der Veranstaltung (inklusive). Bei einem wiederkehrenden Termin ist das die Startzeit der ersten Instanz.
Optionale Attribute
anyoneCanAddSelf boolean Ob jemand sich selbst zum Termin einladen kann (eingestellt). Optional. Die Standardeinstellung ist "False". Bearbeitbar
attachments[].fileUrl string URL-Link zum Anhang.

Wenn Sie Google Drive-Dateianhänge hinzufügen möchten, verwenden Sie in der Drive API das Format der Property alternateLink der Ressource Files.

Erforderlich, wenn Sie einen Anhang hinzufügen.

Bearbeitbar
attendees[] list Die Teilnehmer des Termins. Weitere Informationen zum Planen von Terminen mit anderen Kalendernutzern finden Sie im Leitfaden Termine mit Teilnehmern. Dienstkonten müssen die domainweite Delegierung von Befugnissen nutzen, um die Teilnehmerliste zu befüllen. Bearbeitbar
attendees[].additionalGuests integer Anzahl der zusätzlichen Gäste. Optional. Der Standardwert ist 0. Bearbeitbar
attendees[].comment string Der Kommentar zur Antwort des Teilnehmers. Optional. Bearbeitbar
attendees[].displayName string Der Name des Teilnehmers, falls verfügbar. Optional. Bearbeitbar
attendees[].email string Die E-Mail-Adresse des Teilnehmers, falls verfügbar. Dieses Feld muss vorhanden sein, wenn ein Teilnehmer hinzugefügt wird. Es muss sich um eine gültige E-Mail-Adresse gemäß RFC5322 handeln.

Erforderlich beim Hinzufügen eines Teilnehmers.

Bearbeitbar
attendees[].optional boolean Ob dies ein optionaler Teilnehmer ist. Optional. Die Standardeinstellung ist "False". Bearbeitbar
attendees[].resource boolean Gibt an, ob der Teilnehmer eine Ressource ist. Kann nur festgelegt werden, wenn ein Teilnehmer dem Termin zum ersten Mal hinzugefügt wird. Nachfolgende Änderungen werden ignoriert. Optional. Die Standardeinstellung ist "False". Bearbeitbar
attendees[].responseStatus string Der Antwortstatus der Teilnehmer. Mögliche Werte sind:
  • needsAction“: Der Teilnehmer hat nicht auf die Einladung reagiert (für neue Termine empfohlen).
  • declined“: Der Teilnehmer hat die Einladung abgelehnt.
  • tentative“: Der Teilnehmer hat vorläufig die Einladung angenommen.
  • accepted“: Der Teilnehmer hat die Einladung angenommen.
Bearbeitbar
colorId string Die Farbe des Termins. Diese ID verweist auf einen Eintrag im Abschnitt event der Farbdefinition (siehe Farbendpunkt). Optional. Bearbeitbar
conferenceData nested object Informationen zur Konferenz, z. B. die Details einer Google Meet-Videokonferenz Verwenden Sie das Feld createRequest, um neue Konferenzdetails zu erstellen. Wenn Sie die Änderungen beibehalten möchten, müssen Sie den conferenceDataVersion-Anfrageparameter für alle Ereignisänderungsanfragen auf 1 setzen. Bearbeitbar
description string Beschreibung der Veranstaltung. Kann HTML enthalten. Optional. Bearbeitbar
end.date date Das Datum im Format „jjjj-mm-tt“, wenn es sich um einen ganztägigen Termin handelt. Bearbeitbar
end.dateTime datetime Die Uhrzeit als kombinierter Datum/Uhrzeit-Wert (nach RFC3339 formatiert). Es ist ein Zeitzonenversatz erforderlich, sofern in timeZone nicht explizit eine Zeitzone angegeben ist. Bearbeitbar
end.timeZone string Die Zeitzone, in der die Zeit angegeben ist. (Formatiert als Zeitzonenname für die IANA-Datenbank, z.B. „Europa/Zürich“). Bei wiederkehrenden Ereignissen ist dieses Feld erforderlich und gibt die Zeitzone an, in der der wiederkehrende Termin maximiert wird. Bei einzelnen Ereignissen ist dieses Feld optional und gibt eine benutzerdefinierte Zeitzone für den Beginn und das Ende von Ereignissen an. Bearbeitbar
extendedProperties.private object Properties, die nur für die Kopie des Termins verfügbar sind, der in diesem Kalender angezeigt wird. Bearbeitbar
extendedProperties.shared object Eigenschaften, die zwischen Kopien des Termins in den Kalendern anderer Teilnehmer freigegeben sind. Bearbeitbar
gadget.display string Der Anzeigemodus des Gadgets. Veraltet. Mögliche Werte sind:
  • icon“: Das Gadget wird in der Kalenderansicht neben dem Titel des Termins angezeigt.
  • chip“: Das Gadget wird angezeigt, wenn auf das Ereignis geklickt wird.
Bearbeitbar
gadget.height integer Die Höhe des Gadgets in Pixeln. Die Höhe muss eine Ganzzahl größer als 0 sein. Optional. Veraltet. Bearbeitbar
gadget.preferences object Einstellungen. Bearbeitbar
gadget.title string Der Titel des Gadgets. Veraltet. Bearbeitbar
gadget.type string Der Typ des Gadgets. Veraltet. Bearbeitbar
gadget.width integer Die Breite des Gadgets in Pixeln. Die Breite muss eine Ganzzahl größer als 0 sein. Optional. Veraltet. Bearbeitbar
guestsCanInviteOthers boolean Gibt an, ob Gäste außer dem Organisator andere Personen zu dem Termin einladen können. Optional. Der Standardwert ist „True“. Bearbeitbar
guestsCanModify boolean Gibt an, ob Teilnehmer außer dem Organisator den Termin bearbeiten dürfen. Optional. Die Standardeinstellung ist "False". Bearbeitbar
guestsCanSeeOtherGuests boolean Gibt an, ob Gäste außer dem Organisator sehen können, wer der Termin ist Optional. Der Standardwert ist „True“. Bearbeitbar
id string Undurchsichtige Kennung des Ereignisses. Beim Erstellen neuer einzelner oder wiederkehrender Termine können Sie deren IDs angeben. Bereitgestellte IDs müssen den folgenden Regeln entsprechen:
  • In der ID sind die Zeichen zulässig, die in der base32hex-Codierung verwendet werden, d. h. die Kleinbuchstaben a-v und die Ziffern 0-9, siehe Abschnitt 3.1.2 in RFC2938.
  • Die ID muss zwischen 5 und 1.024 Zeichen lang sein.
  • Die ID muss für jeden Kalender eindeutig sein
Aufgrund der global verteilten Beschaffenheit des Systems können wir nicht garantieren, dass ID-Kollisionen zum Zeitpunkt der Ereigniserstellung erkannt werden. Zur Vermeidung von Kollisionen empfehlen wir die Verwendung eines etablierten UUID-Algorithmus wie in RFC4122.

Wenn Sie keine ID angeben, wird sie automatisch vom Server generiert.

icalUID und id sind nicht identisch und nur einer sollte bei der Erstellung des Ereignisses angegeben werden. Ein Unterschied in der Semantik besteht darin, dass bei wiederkehrenden Ereignissen alle Vorkommen eines Ereignisses unterschiedliche ids haben, während sie alle dieselben icalUIDs haben.

Bearbeitbar
location string Der geografische Ort des Ereignisses in freiem Format. Optional. Bearbeitbar
originalStartTime.date date Das Datum im Format „jjjj-mm-tt“, wenn es sich um einen ganztägigen Termin handelt. Bearbeitbar
originalStartTime.dateTime datetime Die Uhrzeit als kombinierter Datum/Uhrzeit-Wert (nach RFC3339 formatiert). Es ist ein Zeitzonenversatz erforderlich, sofern in timeZone nicht explizit eine Zeitzone angegeben ist. Bearbeitbar
originalStartTime.timeZone string Die Zeitzone, in der die Zeit angegeben ist. (Formatiert als Zeitzonenname für die IANA-Datenbank, z.B. „Europa/Zürich“). Bei wiederkehrenden Ereignissen ist dieses Feld erforderlich und gibt die Zeitzone an, in der der wiederkehrende Termin maximiert wird. Bei einzelnen Ereignissen ist dieses Feld optional und gibt eine benutzerdefinierte Zeitzone für den Beginn und das Ende von Ereignissen an. Bearbeitbar
recurrence[] list Liste der Zeilen RRULE, EXRULE, RDATE und EXDATE für ein wiederkehrendes Ereignis, wie in RFC5545 angegeben. In diesem Feld sind keine DTSTART- und DTEND-Zeilen zulässig. Beginn und Ende des Ereignisses werden in den Feldern start und end angegeben. Dieses Feld wird bei einzelnen Terminen oder Instanzen wiederkehrender Termine weggelassen. Bearbeitbar
reminders.overrides[] list Wenn für den Termin nicht die Standarderinnerungen verwendet werden, werden die spezifischen Erinnerungen für den Termin angezeigt. Ist er nicht festgelegt, wird für diesen Termin keine Erinnerung eingerichtet. Es sind maximal fünf Überschreibungserinnerungen möglich. Bearbeitbar
reminders.overrides[].method string Die von dieser Erinnerung verwendete Methode. Mögliche Werte sind:
  • email“ – Erinnerungen werden per E-Mail gesendet.
  • popup“ – Erinnerungen werden über ein Pop-up-Fenster auf der Benutzeroberfläche gesendet.

Erforderlich beim Hinzufügen einer Erinnerung.

Bearbeitbar
reminders.overrides[].minutes integer Anzahl der Minuten vor dem Termin, an dem die Erinnerung ausgelöst werden soll. Gültige Werte liegen zwischen 0 und 40.320 (4 Wochen in Minuten).

Erforderlich beim Hinzufügen einer Erinnerung.

Bearbeitbar
reminders.useDefault boolean Gibt an, ob die Standarderinnerungen des Kalenders für den Termin gelten. Bearbeitbar
sequence integer Sequenznummer gemäß iCalendar Bearbeitbar
source.title string Titel der Quelle, beispielsweise der Titel einer Webseite oder ein E-Mail-Betreff. Bearbeitbar
source.url string URL der Quelle, die auf eine Ressource verweist. Das URL-Schema muss HTTP oder HTTPS sein. Bearbeitbar
start.date date Das Datum im Format „jjjj-mm-tt“, wenn es sich um einen ganztägigen Termin handelt. Bearbeitbar
start.dateTime datetime Die Uhrzeit als kombinierter Datum/Uhrzeit-Wert (nach RFC3339 formatiert). Es ist ein Zeitzonenversatz erforderlich, sofern in timeZone nicht explizit eine Zeitzone angegeben ist. Bearbeitbar
start.timeZone string Die Zeitzone, in der die Zeit angegeben ist. (Formatiert als Zeitzonenname für die IANA-Datenbank, z.B. „Europa/Zürich“). Bei wiederkehrenden Ereignissen ist dieses Feld erforderlich und gibt die Zeitzone an, in der der wiederkehrende Termin maximiert wird. Bei einzelnen Ereignissen ist dieses Feld optional und gibt eine benutzerdefinierte Zeitzone für den Beginn und das Ende von Ereignissen an. Bearbeitbar
status string Status des Ereignisses. Optional. Mögliche Werte sind:
  • confirmed“: Das Ereignis wurde bestätigt. Das ist der Standardstatus.
  • tentative“: Das Ereignis wird vorläufig bestätigt.
  • cancelled“: Das Ereignis wurde abgebrochen (gelöscht). Die Methode list gibt abgebrochene Ereignisse nur bei inkrementeller Synchronisierung zurück (wenn syncToken oder updatedMin angegeben sind) oder wenn das Flag showDeleted auf true gesetzt ist. Sie werden von der Methode get immer zurückgegeben.

    Ein abgebrochener Status repräsentiert je nach Ereignistyp zwei verschiedene Zustände:

    1. Stornierte Ausnahmen eines nicht stornierten wiederkehrenden Termins zeigen an, dass diese Instanz dem Nutzer nicht mehr angezeigt werden soll. Kunden sollten diese Ereignisse für die Dauer des übergeordneten wiederkehrenden Termins speichern.

      Für stornierte Ausnahmen werden garantiert nur Werte für die Felder id, recurringEventId und originalStartTime ausgefüllt. Die anderen Felder sind möglicherweise leer.

    2. Alle anderen abgesagten Termine stellen gelöschte Termine dar. Kunden sollten ihre lokal synchronisierten Kopien entfernen. Diese abgebrochenen Termine werden schließlich nicht mehr angezeigt. Sie sollten sich also nicht darauf verlassen, dass sie auf unbestimmte Zeit verfügbar sind.

      Bei gelöschten Ereignissen wird nur das Feld id garantiert.

    : Abgesagte Termine im Kalender des Organisators enthalten Termindetails (Zusammenfassung, Ort usw.), damit sie wiederhergestellt werden können. Auch die Ereignisse, zu denen der Nutzer eingeladen wurde und die er manuell entfernt hat, enthalten weitere Details. Bei inkrementellen Synchronisierungsanfragen, bei denen showDeleted auf „false“ gesetzt ist, werden diese Details jedoch nicht zurückgegeben.

    Wenn der Organisator eines Termins geändert wird, z. B. über den Vorgang Verschieben, und der ursprüngliche Organisator nicht auf der Teilnehmerliste steht, bleibt ein abgesagter Termin übrig, in dem nur das Feld id ausgefüllt ist.

Bearbeitbar
summary string Titel der Veranstaltung. Bearbeitbar
transparency string Gibt an, ob der Termin die Zeit im Kalender blockiert. Optional. Mögliche Werte sind:
  • opaque“ – Standardwert. Der Termin wird jedoch nicht im Kalender blockiert. Dies entspricht der Einstellung Anzeigen als auf Beschäftigt in der Kalender-Benutzeroberfläche.
  • transparent“: Der Termin wird nicht im Kalender blockiert. Dies entspricht der Option Anzeigen als auf Verfügbar in der Kalender-Benutzeroberfläche.
Bearbeitbar
visibility string Sichtbarkeit des Ereignisses. Optional. Mögliche Werte sind:
  • default“: Hier wird die Standardsichtbarkeit für Termine im Kalender verwendet. „Immer“ ist der Standardwert.
  • public“: Der Termin ist öffentlich und die Termindetails sind für alle Leser des Kalenders sichtbar.
  • private“: Der Termin ist privat und nur die Teilnehmer können die Termindetails sehen.
  • confidential“ – Der Termin ist privat. Dieser Wert wird aus Kompatibilitätsgründen angegeben.
Bearbeitbar

Antwort

Wenn der Vorgang erfolgreich ist, wird mit dieser Methode eine Ressource vom Typ „Ereignisse“ im Antworttext zurückgegeben.

Beispiele

Hinweis: Bei den für diese Methode verfügbaren Codebeispielen sind nicht alle unterstützten Programmiersprachen vertreten. Eine Liste der unterstützten Sprachen finden Sie auf der Seite für Clientbibliotheken.

Java

Verwendet die Java-Clientbibliothek.

// Refer to the Java quickstart on how to setup the environment:
// https://developers.google.com/calendar/quickstart/java
// Change the scope to CalendarScopes.CALENDAR and delete any stored
// credentials.

Event event = new Event()
    .setSummary("Google I/O 2015")
    .setLocation("800 Howard St., San Francisco, CA 94103")
    .setDescription("A chance to hear more about Google's developer products.");

DateTime startDateTime = new DateTime("2015-05-28T09:00:00-07:00");
EventDateTime start = new EventDateTime()
    .setDateTime(startDateTime)
    .setTimeZone("America/Los_Angeles");
event.setStart(start);

DateTime endDateTime = new DateTime("2015-05-28T17:00:00-07:00");
EventDateTime end = new EventDateTime()
    .setDateTime(endDateTime)
    .setTimeZone("America/Los_Angeles");
event.setEnd(end);

String[] recurrence = new String[] {"RRULE:FREQ=DAILY;COUNT=2"};
event.setRecurrence(Arrays.asList(recurrence));

EventAttendee[] attendees = new EventAttendee[] {
    new EventAttendee().setEmail("lpage@example.com"),
    new EventAttendee().setEmail("sbrin@example.com"),
};
event.setAttendees(Arrays.asList(attendees));

EventReminder[] reminderOverrides = new EventReminder[] {
    new EventReminder().setMethod("email").setMinutes(24 * 60),
    new EventReminder().setMethod("popup").setMinutes(10),
};
Event.Reminders reminders = new Event.Reminders()
    .setUseDefault(false)
    .setOverrides(Arrays.asList(reminderOverrides));
event.setReminders(reminders);

String calendarId = "primary";
event = service.events().insert(calendarId, event).execute();
System.out.printf("Event created: %s\n", event.getHtmlLink());

Python

Verwendet die Python-Clientbibliothek.

# Refer to the Python quickstart on how to setup the environment:
# https://developers.google.com/calendar/quickstart/python
# Change the scope to 'https://www.googleapis.com/auth/calendar' and delete any
# stored credentials.

event = {
  'summary': 'Google I/O 2015',
  'location': '800 Howard St., San Francisco, CA 94103',
  'description': 'A chance to hear more about Google\'s developer products.',
  'start': {
    'dateTime': '2015-05-28T09:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'end': {
    'dateTime': '2015-05-28T17:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'recurrence': [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  'attendees': [
    {'email': 'lpage@example.com'},
    {'email': 'sbrin@example.com'},
  ],
  'reminders': {
    'useDefault': False,
    'overrides': [
      {'method': 'email', 'minutes': 24 * 60},
      {'method': 'popup', 'minutes': 10},
    ],
  },
}

event = service.events().insert(calendarId='primary', body=event).execute()
print 'Event created: %s' % (event.get('htmlLink'))

PHP

Verwendet die PHP-Clientbibliothek.

// Refer to the PHP quickstart on how to setup the environment:
// https://developers.google.com/calendar/quickstart/php
// Change the scope to Google_Service_Calendar::CALENDAR and delete any stored
// credentials.

$event = new Google_Service_Calendar_Event(array(
  'summary' => 'Google I/O 2015',
  'location' => '800 Howard St., San Francisco, CA 94103',
  'description' => 'A chance to hear more about Google\'s developer products.',
  'start' => array(
    'dateTime' => '2015-05-28T09:00:00-07:00',
    'timeZone' => 'America/Los_Angeles',
  ),
  'end' => array(
    'dateTime' => '2015-05-28T17:00:00-07:00',
    'timeZone' => 'America/Los_Angeles',
  ),
  'recurrence' => array(
    'RRULE:FREQ=DAILY;COUNT=2'
  ),
  'attendees' => array(
    array('email' => 'lpage@example.com'),
    array('email' => 'sbrin@example.com'),
  ),
  'reminders' => array(
    'useDefault' => FALSE,
    'overrides' => array(
      array('method' => 'email', 'minutes' => 24 * 60),
      array('method' => 'popup', 'minutes' => 10),
    ),
  ),
));

$calendarId = 'primary';
$event = $service->events->insert($calendarId, $event);
printf('Event created: %s\n', $event->htmlLink);

Ruby

Verwendet die Ruby-Clientbibliothek.

event = Google::Apis::CalendarV3::Event.new(
  summary: 'Google I/O 2015',
  location: '800 Howard St., San Francisco, CA 94103',
  description: 'A chance to hear more about Google\'s developer products.',
  start: Google::Apis::CalendarV3::EventDateTime.new(
    date_time: '2015-05-28T09:00:00-07:00',
    time_zone: 'America/Los_Angeles'
  ),
  end: Google::Apis::CalendarV3::EventDateTime.new(
    date_time: '2015-05-28T17:00:00-07:00',
    time_zone: 'America/Los_Angeles'
  ),
  recurrence: [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  attendees: [
    Google::Apis::CalendarV3::EventAttendee.new(
      email: 'lpage@example.com'
    ),
    Google::Apis::CalendarV3::EventAttendee.new(
      email: 'sbrin@example.com'
    )
  ],
  reminders: Google::Apis::CalendarV3::Event::Reminders.new(
    use_default: false,
    overrides: [
      Google::Apis::CalendarV3::EventReminder.new(
        reminder_method: 'email',
        minutes: 24 * 60
      ),
      Google::Apis::CalendarV3::EventReminder.new(
        reminder_method: 'popup',
        minutes: 10
      )
    ]
  )
)

result = client.insert_event('primary', event)
puts "Event created: #{result.html_link}"

.NET

Verwendet die .NET-Clientbibliothek.

// Refer to the .NET quickstart on how to setup the environment:
// https://developers.google.com/calendar/quickstart/dotnet
// Change the scope to CalendarService.Scope.Calendar and delete any stored
// credentials.

Event newEvent = new Event()
{
    Summary = "Google I/O 2015",
    Location = "800 Howard St., San Francisco, CA 94103",
    Description = "A chance to hear more about Google's developer products.",
    Start = new EventDateTime()
    {
        DateTime = DateTime.Parse("2015-05-28T09:00:00-07:00"),
        TimeZone = "America/Los_Angeles",
    },
    End = new EventDateTime()
    {
        DateTime = DateTime.Parse("2015-05-28T17:00:00-07:00"),
        TimeZone = "America/Los_Angeles",
    },
    Recurrence = new String[] { "RRULE:FREQ=DAILY;COUNT=2" },
    Attendees = new EventAttendee[] {
        new EventAttendee() { Email = "lpage@example.com" },
        new EventAttendee() { Email = "sbrin@example.com" },
    },
    Reminders = new Event.RemindersData()
    {
        UseDefault = false,
        Overrides = new EventReminder[] {
            new EventReminder() { Method = "email", Minutes = 24 * 60 },
            new EventReminder() { Method = "sms", Minutes = 10 },
        }
    }
};

String calendarId = "primary";
EventsResource.InsertRequest request = service.Events.Insert(newEvent, calendarId);
Event createdEvent = request.Execute();
Console.WriteLine("Event created: {0}", createdEvent.HtmlLink);

Einfach loslegen (Go)

Verwendet die Go-Clientbibliothek.

// Refer to the Go quickstart on how to setup the environment:
// https://developers.google.com/calendar/quickstart/go
// Change the scope to calendar.CalendarScope and delete any stored credentials.

event := &calendar.Event{
  Summary: "Google I/O 2015",
  Location: "800 Howard St., San Francisco, CA 94103",
  Description: "A chance to hear more about Google's developer products.",
  Start: &calendar.EventDateTime{
    DateTime: "2015-05-28T09:00:00-07:00",
    TimeZone: "America/Los_Angeles",
  },
  End: &calendar.EventDateTime{
    DateTime: "2015-05-28T17:00:00-07:00",
    TimeZone: "America/Los_Angeles",
  },
  Recurrence: []string{"RRULE:FREQ=DAILY;COUNT=2"},
  Attendees: []*calendar.EventAttendee{
    &calendar.EventAttendee{Email:"lpage@example.com"},
    &calendar.EventAttendee{Email:"sbrin@example.com"},
  },
}

calendarId := "primary"
event, err = srv.Events.Insert(calendarId, event).Do()
if err != nil {
  log.Fatalf("Unable to create event. %v\n", err)
}
fmt.Printf("Event created: %s\n", event.HtmlLink)

JavaScript

Verwendet die JavaScript-Clientbibliothek.

// Refer to the JavaScript quickstart on how to setup the environment:
// https://developers.google.com/calendar/quickstart/js
// Change the scope to 'https://www.googleapis.com/auth/calendar' and delete any
// stored credentials.

var event = {
  'summary': 'Google I/O 2015',
  'location': '800 Howard St., San Francisco, CA 94103',
  'description': 'A chance to hear more about Google\'s developer products.',
  'start': {
    'dateTime': '2015-05-28T09:00:00-07:00',
    'timeZone': 'America/Los_Angeles'
  },
  'end': {
    'dateTime': '2015-05-28T17:00:00-07:00',
    'timeZone': 'America/Los_Angeles'
  },
  'recurrence': [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  'attendees': [
    {'email': 'lpage@example.com'},
    {'email': 'sbrin@example.com'}
  ],
  'reminders': {
    'useDefault': false,
    'overrides': [
      {'method': 'email', 'minutes': 24 * 60},
      {'method': 'popup', 'minutes': 10}
    ]
  }
};

var request = gapi.client.calendar.events.insert({
  'calendarId': 'primary',
  'resource': event
});

request.execute(function(event) {
  appendPre('Event created: ' + event.htmlLink);
});

Node.js

Verwendet die Node.js-Clientbibliothek.

// Refer to the Node.js quickstart on how to setup the environment:
// https://developers.google.com/calendar/quickstart/node
// Change the scope to 'https://www.googleapis.com/auth/calendar' and delete any
// stored credentials.

var event = {
  'summary': 'Google I/O 2015',
  'location': '800 Howard St., San Francisco, CA 94103',
  'description': 'A chance to hear more about Google\'s developer products.',
  'start': {
    'dateTime': '2015-05-28T09:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'end': {
    'dateTime': '2015-05-28T17:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'recurrence': [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  'attendees': [
    {'email': 'lpage@example.com'},
    {'email': 'sbrin@example.com'},
  ],
  'reminders': {
    'useDefault': false,
    'overrides': [
      {'method': 'email', 'minutes': 24 * 60},
      {'method': 'popup', 'minutes': 10},
    ],
  },
};

calendar.events.insert({
  auth: auth,
  calendarId: 'primary',
  resource: event,
}, function(err, event) {
  if (err) {
    console.log('There was an error contacting the Calendar service: ' + err);
    return;
  }
  console.log('Event created: %s', event.htmlLink);
});

Testen!

Verwenden Sie den unten angegebenen APIs Explorer, um diese Methode für Livedaten aufzurufen und die Antwort einzusehen.