ينشئ حدثًا. جرِّب الخدمة الآن أو اطّلِع على مثال.
الطلب
طلب HTTP
POST https://www.googleapis.com/calendar/v3/calendars/calendarId/events
المعلمات
اسم المعلَمة | القيمة | الوصف |
---|---|---|
مَعلمات المسار | ||
calendarId |
string |
معرّف التقويم لاسترداد أرقام تعريف التقاويم، يمكنك استدعاء الطريقة calendarList.list. إذا كنت تريد الوصول إلى التقويم الأساسي للمستخدم الذي سجّل الدخول حاليًا، استخدِم الكلمة الرئيسية "primary ".
|
مَعلمات طلب البحث الاختيارية | ||
conferenceDataVersion |
integer |
رقم نسخة بيانات مكالمة الفيديو المتوافقة مع عميل واجهة برمجة التطبيقات يفترض الإصدار 0 عدم توفّر بيانات المؤتمر ويتجاهل بيانات المؤتمر في نص الحدث. يتيح الإصدار 1 إمكانية نسخ ConferenceData بالإضافة إلى إنشاء مكالمات فيديو جديدة باستخدام حقل createRequest في conferenceData. القيمة التلقائية هي 0.
القيم المقبولة هي من 0 إلى 1 .
|
maxAttendees |
integer |
الحد الأقصى لعدد الضيوف المطلوب تضمينهم في الرد. إذا كان هناك أكثر من العدد المحدّد من الضيوف، يتم عرض المشارك فقط. اختياريّ. |
sendNotifications |
boolean |
تمّ الإيقاف. يُرجى استخدام sendUpdates بدلاً من ذلك. يحدد هذا الخيار ما إذا كان سيتم إرسال إشعارات بشأن إنشاء الحدث الجديد. يُرجى العِلم أنّه قد يستمر إرسال بعض الرسائل الإلكترونية حتى إذا ضبطت القيمة على false . القيمة التلقائية هي false .
|
sendUpdates |
string |
ما إذا كان سيتم إرسال إشعارات بشأن إنشاء الحدث الجديد يُرجى العِلم أنّه قد يستمر إرسال بعض الرسائل الإلكترونية. القيمة التلقائية هي false .
في ما يلي القيم المقبولة:
|
supportsAttachments |
boolean |
ما إذا كان عميل واجهة برمجة التطبيقات الذي يُجري العملية يتيح مرفقات الأحداث اختياريّ. القيمة التلقائية هي False. |
التفويض
يتطلب هذا الطلب تفويضًا بنطاق واحد على الأقل من النطاقات التالية:
النطاق |
---|
https://www.googleapis.com/auth/calendar |
https://www.googleapis.com/auth/calendar.events |
لمزيد من المعلومات، يُرجى الاطّلاع على صفحة المصادقة والتفويض.
نص الطلب
في نص الطلب، قدِّم مرجع أحداث يتضمّن السمات التالية:
اسم الموقع | القيمة | الوصف | ملاحظات |
---|---|---|---|
السمات المطلوبة | |||
end |
nested object |
وقت انتهاء الحدث (الحصري) بالنسبة إلى الحدث المتكرّر، هذا هو وقت انتهاء المثيل الأول. | |
start |
nested object |
وقت بدء الحدث (شاملاً) بالنسبة إلى الحدث المتكرّر، يشير ذلك إلى وقت بدء النسخة الأولى. | |
السمات الاختيارية | |||
anyoneCanAddSelf |
boolean |
ما إذا كان بإمكان أي مستخدم دعوة نفسه إلى الحدث (ميزة متوقّفة نهائيًا) اختياريّ. القيمة التلقائية هي False. | قابلة للكتابة |
attachments[].fileUrl |
string |
رابط عنوان URL يؤدي إلى المرفق لإضافة مرفقات ملفات Google Drive، استخدِم التنسيق نفسه المُستخدَم في سمة مطلوب عند إضافة مرفق. |
قابلة للكتابة |
attendees[] |
list |
ضيوف الفعالية. اطّلِع على دليل الأحداث التي تضم ضيوفًا للحصول على مزيد من المعلومات عن جدولة الأحداث مع مستخدمي التقويم الآخرين. يجب أن تستخدم حسابات الخدمة تفويض مرجع على مستوى النطاق لتعبئة قائمة الضيوف. | قابلة للكتابة |
attendees[].additionalGuests |
integer |
عدد النزلاء الإضافيين. اختياريّ. القيمة التلقائية هي 0. | قابلة للكتابة |
attendees[].comment |
string |
تعليق ردّ الضيف اختياريّ. | قابلة للكتابة |
attendees[].displayName |
string |
اسم الحاضر، إذا كان متاحًا اختياريّ. | قابلة للكتابة |
attendees[].email |
string |
عنوان البريد الإلكتروني للمشارك، إذا كان متاحًا يجب أن يكون هذا الحقل متوفّرًا عند إضافة مشارِك. يجب أن يكون عنوان بريد إلكتروني صالحًا وفقًا لمعيار RFC5322. مطلوب عند إضافة مشارِك. |
قابل للكتابة |
attendees[].optional |
boolean |
ما إذا كان هذا الضيف اختياريًا. اختياريّ. القيمة التلقائية هي False. | قابلة للكتابة |
attendees[].resource |
boolean |
ما إذا كان الحاضر مورّدًا لا يمكن ضبط هذا الخيار إلا عند إضافة الضيف إلى الحدث للمرة الأولى. ويتم تجاهل التعديلات اللاحقة. اختياريّ. القيمة التلقائية هي False. | قابل للكتابة |
attendees[].responseStatus |
string |
حالة ردّ الحاضر القيم المحتمَلة هي:
|
قابلة للكتابة |
birthdayProperties |
nested object |
بيانات عيد الميلاد أو الحدث الخاص تُستخدَم إذا كان eventType يساوي "birthday" . غير قابل للتغيير |
قابل للكتابة |
birthdayProperties.type |
string |
نوع عيد الميلاد أو الحدث الخاص القيم المحتمَلة هي:
"birthday" . لا يمكن تغيير النوع بعد إنشاء الحدث. |
قابلة للكتابة |
colorId |
string |
لون الحدث. هذا هو رقم تعريف يشير إلى إدخال في قسم event من تعريف الألوان (راجِع نقطة نهاية الألوان). اختياريّ. |
قابلة للكتابة |
conferenceData |
nested object |
المعلومات المتعلّقة بالمؤتمر، مثل تفاصيل مؤتمر Google Meet لإنشاء تفاصيل جديدة لمكالمة الفيديو، استخدِم الحقل createRequest . للاحتفاظ بالتغييرات التي أجريتها، تذكّر ضبط مَعلمة طلب conferenceDataVersion على 1 لجميع طلبات تعديل الأحداث. |
قابلة للكتابة |
description |
string |
تمثّل هذه السمة وصف الفعالية. يمكن أن يحتوي على لغة HTML. اختياريّ. | قابلة للكتابة |
end.date |
date |
التاريخ، بالتنسيق "yyyy-mm-dd"، إذا كان هذا الحدث يستمر طوال اليوم. | قابل للكتابة |
end.dateTime |
datetime |
الوقت، كقيمة تاريخ ووقت مجمّعة (منسّقة وفقًا لـ RFC3339) يجب تحديد توقيت المنطقة الزمنية ما لم يتم تحديد منطقة زمنية صراحةً في timeZone . |
قابلة للكتابة |
end.timeZone |
string |
المنطقة الزمنية التي تم تحديد الوقت فيها (يكون التنسيق على هيئة اسم في "قاعدة بيانات المناطق الزمنية IANA"، مثل "Europe/Zurich") بالنسبة إلى الأحداث المتكرّرة، يكون هذا الحقل مطلوبًا ويحدّد المنطقة الزمنية التي يتم فيها توسيع نطاق التكرار. بالنسبة إلى الأحداث الفردية، يكون هذا الحقل اختياريًا ويشير إلى منطقة زمنية مخصّصة لبدء/انتهاء الحدث. | قابلة للكتابة |
eventType |
string |
نوع محدّد للحدث. لا يمكن تعديل هذا الخيار بعد إنشاء الحدث. القيم المحتمَلة هي:
|
قابلة للكتابة |
extendedProperties.private |
object |
السمات الخاصة بنُسخة الحدث التي تظهر في هذا التقويم | قابلة للكتابة |
extendedProperties.shared |
object |
السمات التي تتم مشاركتها بين نُسخ الحدث في تقاويم الضيوف الآخرين | قابل للكتابة |
focusTimeProperties |
nested object |
بيانات حدث "وقت التركيز" تُستخدَم إذا كان eventType يساوي focusTime . |
قابل للكتابة |
gadget.display |
string |
وضع عرض الأداة تمّ الإيقاف. القيم المتاحة:
|
قابل للكتابة |
gadget.height |
integer |
ارتفاع الأداة بالبكسل يجب أن يكون الارتفاع عددًا صحيحًا أكبر من 0. اختياريّ. تمّ الإيقاف. | قابل للكتابة |
gadget.iconLink |
string |
عنوان URL لرمز الأداة يجب أن يستخدم عنوان URL مخطّط HTTPS. تمّ الإيقاف. | قابلة للكتابة |
gadget.link |
string |
عنوان URL الخاص بالتطبيق المصغّر يجب أن يستخدم عنوان URL مخطّط HTTPS. تمّ الإيقاف. | قابل للكتابة |
gadget.preferences |
object |
التفضيلات. | قابل للكتابة |
gadget.title |
string |
عنوان الأداة. تمّ الإيقاف. | قابلة للكتابة |
gadget.type |
string |
نوع الأداة تمّ الإيقاف. | قابلة للكتابة |
gadget.width |
integer |
عرض الأداة بالبكسل يجب أن يكون العرض عددًا صحيحًا أكبر من 0. اختياريّ. تمّ الإيقاف. | قابل للكتابة |
guestsCanInviteOthers |
boolean |
ما إذا كان بإمكان الضيوف غير المُنظِم دعوة مستخدمين آخرين إلى الحدث اختياريّ. القيمة التلقائية هي True. | قابل للكتابة |
guestsCanModify |
boolean |
ما إذا كان بإمكان الضيوف غير المنظِّم تعديل الحدث اختياريّ. القيمة التلقائية هي False. | قابل للكتابة |
guestsCanSeeOtherGuests |
boolean |
ما إذا كان بإمكان الضيوف غير المنظِّم الاطّلاع على الضيوف المشاركين في الحدث اختياريّ. القيمة التلقائية هي True. | قابلة للكتابة |
id |
string |
معرّف غير شفاف للحدث. عند إنشاء أحداث جديدة فردية أو متكرّرة، يمكنك تحديد معرّفاتها. يجب أن تتّبع المعرّفات المقدَّمة القواعد التالية:
إذا لم تحدّد معرّفًا، سينشئه الخادم تلقائيًا. تجدر الإشارة إلى أنّ السمتَين |
قابلة للكتابة |
location |
string |
الموقع الجغرافي للفعالية بتنسيق نصي حر اختياريّ. | قابلة للكتابة |
originalStartTime.date |
date |
التاريخ، بالتنسيق "yyyy-mm-dd"، إذا كان هذا الحدث يستمر طوال اليوم. | قابلة للكتابة |
originalStartTime.dateTime |
datetime |
الوقت، كقيمة تاريخ ووقت مجمّعة (منسّقة وفقًا لـ RFC3339) يجب تحديد معادلة المنطقة الزمنية، ما لم يتم تحديد منطقة زمنية بشكل صريح في timeZone . |
قابلة للكتابة |
originalStartTime.timeZone |
string |
المنطقة الزمنية التي تم تحديد الوقت فيها (يكون التنسيق على هيئة اسم في "قاعدة بيانات المناطق الزمنية IANA"، مثل "Europe/Zurich") بالنسبة إلى الأحداث المتكرّرة، يكون هذا الحقل مطلوبًا ويحدّد المنطقة الزمنية التي يتم فيها توسيع نطاق التكرار. بالنسبة إلى الأحداث الفردية، يكون هذا الحقل اختياريًا ويشير إلى منطقة زمنية مخصّصة لبدء/انتهاء الحدث. | قابل للكتابة |
outOfOfficeProperties |
nested object |
بيانات الأحداث التي تشير إلى أنّك خارج المكتب تُستخدَم إذا كان eventType يساوي outOfOffice . |
قابل للكتابة |
recurrence[] |
list |
قائمة بخطوط RRULE وEXRULE وRDATE وEXDATE لحدث متكرّر، كما هو محدّد في RFC5545. يُرجى العِلم أنّه لا يُسمح بخطوط DTSTART وDTEND في هذا الحقل، ويتم تحديد وقتَي بدء الفعالية وانتهائها في الحقلَين start وend . يتم حذف هذا الحقل للأحداث الفردية أو المثيلات من الأحداث المتكررة. |
قابلة للكتابة |
reminders.overrides[] |
list |
إذا لم يستخدم الحدث التذكيرات التلقائية، يتم إدراج التذكيرات الخاصة بالحدث، أو يشير ذلك إلى عدم ضبط أي تذكيرات لهذا الحدث في حال عدم ضبطها. الحد الأقصى لعدد تذكيرات الإلغاء هو 5. | قابلة للكتابة |
reminders.overrides[].method |
string |
الطريقة المستخدَمة في هذا التذكير القيم المحتمَلة هي:
مطلوب عند إضافة تذكير. |
قابلة للكتابة |
reminders.overrides[].minutes |
integer |
عدد الدقائق قبل بدء الحدث التي يجب أن يتم فيها تشغيل التذكير تتراوح القيم الصالحة بين 0 و40320 (4 أسابيع في الدقائق). مطلوب عند إضافة تذكير. |
قابلة للكتابة |
reminders.useDefault |
boolean |
ما إذا كانت التذكيرات التلقائية في التقويم تنطبق على الحدث أم لا. | قابلة للكتابة |
sequence |
integer |
الرقم التسلسلي وفقًا لتنسيق iCalendar | قابلة للكتابة |
source.title |
string |
عنوان المصدر، مثل عنوان صفحة ويب أو موضوع رسالة إلكترونية | قابلة للكتابة |
source.url |
string |
عنوان URL للمصدر الذي يشير إلى مورد يجب أن يكون مخطّط عنوان URL هو HTTP أو HTTPS. | قابل للكتابة |
start.date |
date |
التاريخ، بالتنسيق "yyyy-mm-dd"، إذا كان هذا الحدث يستمر طوال اليوم. | قابلة للكتابة |
start.dateTime |
datetime |
الوقت، كقيمة مجمَّعة للتاريخ والوقت (بتنسيق RFC3339). يجب تحديد توقيت المنطقة الزمنية ما لم يتم تحديد منطقة زمنية صراحةً في timeZone . |
قابلة للكتابة |
start.timeZone |
string |
المنطقة الزمنية التي تم تحديد الوقت فيها (يكون التنسيق على هيئة اسم في "قاعدة بيانات المناطق الزمنية IANA"، مثل "Europe/Zurich") بالنسبة إلى الأحداث المتكرّرة، يكون هذا الحقل مطلوبًا ويحدّد المنطقة الزمنية التي يتم فيها توسيع نطاق التكرار. بالنسبة إلى الأحداث الفردية، يكون هذا الحقل اختياريًا ويشير إلى منطقة زمنية مخصّصة لبدء/انتهاء الحدث. | قابلة للكتابة |
status |
string |
حالة الحدث. اختياريّ. القيم المحتمَلة هي:
|
قابلة للكتابة |
summary |
string |
تمثل هذه الخاصية عنوان الفعالية. | قابلة للكتابة |
transparency |
string |
ما إذا كان الحدث يحظر وقتًا في التقويم اختياريّ. القيم المحتمَلة هي:
|
قابلة للكتابة |
visibility |
string |
مستوى رؤية الحدث اختياريّ. القيم المحتمَلة هي:
|
قابلة للكتابة |
workingLocationProperties |
nested object |
بيانات أحداث مكان العمل | قابل للكتابة |
workingLocationProperties.customLocation |
object |
يحدّد هذا الحقل ما إذا كان المستخدم يعمل من موقع جغرافي مخصّص. | قابلة للكتابة |
workingLocationProperties.customLocation.label |
string |
تصنيف إضافي اختياري لمعلومات إضافية | قابلة للكتابة |
workingLocationProperties.homeOffice |
any value |
يحدّد ما إذا كان المستخدم يعمل من المنزل. | قابلة للكتابة |
workingLocationProperties.officeLocation |
object |
في حال توفّر هذه القيمة، تشير إلى أنّ المستخدم يعمل من مكتب. | قابلة للكتابة |
workingLocationProperties.officeLocation.buildingId |
string |
معرّف مبنى اختياري يجب أن يشير هذا الحقل إلى رقم تعريف مبنى في قاعدة بيانات "الموارد" في المؤسسة. | قابلة للكتابة |
workingLocationProperties.officeLocation.deskId |
string |
معرّف سطح مكتب اختياري. | قابلة للكتابة |
workingLocationProperties.officeLocation.floorId |
string |
معرّف اختياري للطابق | قابلة للكتابة |
workingLocationProperties.officeLocation.floorSectionId |
string |
معرّف قسم الطابق الاختياري. | قابلة للكتابة |
workingLocationProperties.officeLocation.label |
string |
اسم المكتب الذي يتم عرضه في برامج "تقويم Google" على الويب والأجهزة الجوّالة. ننصحك بالإشارة إلى اسم مبنى في قاعدة بيانات "الموارد" الخاصة بالمؤسسة. | قابل للكتابة |
workingLocationProperties.type |
string |
تمثّل هذه السمة نوع مكان العمل. القيم المتاحة:
هذا الحقل مطلوب عند إضافة خصائص مكان العمل. |
قابلة للكتابة |
الرد
إذا كانت الاستجابة ناجحة، تعرض هذه الطريقة مرجع الأحداث في نص الاستجابة.
أمثلة
ملاحظة: إنّ الأمثلة المرتبطة بالرموز والمتوفرة لهذه الطريقة لا تمثّل كل لغات البرمجة المتوافقة (يُرجى مراجعة صفحة مكتبات البرامج للاطّلاع على قائمة باللغات المتوافقة).
Java
تستخدم مكتبة برامج Java.
// 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
يستخدم مكتبة برامج Python.
# 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
يستخدم مكتبة برامج PHP.
// 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
تستخدم مكتبة برامج Ruby.
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.
يستخدم مكتبة عملاء .NET.
// 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);
البدء
يستخدم مكتبة Go للعملاء.
// 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
يستخدم مكتبة JavaScript للعملاء.
// 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
يستخدم مكتبة عميل Node.js.
// 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); });
جرّب الآن
استخدِم "مستكشف واجهات برمجة التطبيقات" أدناه لطلب هذه الطريقة على البيانات المباشرة والاطّلاع على الاستجابة.