Dil:

Google Takvim API v3 Nasıl Kullanılır: Maliyet, Sınırlamalar, Örnekler

Google API hakkında konuşmamıza devam ediyoruz ve bunu nasıl kullanabileceğinizi gösteriyoruz. Bugün size Calendar API üzerine kapsamlı bir eğitim sunuyoruz — ne olduğunu, nasıl kullanabileceğinizi ve birkaç örnek inceleyeceğiz.
ChatGPT’nin değerlendirmesini görün Canlı widget düzenleyicisini açın
How to use Google Calendar API v3: cost, limits, examples

Google Takvim API’si nedir?

Bu, Takvim etkinliklerini görüntülemenize, oluşturmanıza ve bu etkinliklerle çalışmanıza olanak tanır; ayrıca erişim kontrolleri gibi diğer takvimle ilgili nesnelerle de işlem yapmanıza yardımcı olur. Şimdi Google Takvim API geliştirici anahtarını kullanmaya başlamak için bazı fikirleri inceleyeceğiz.

Bununla Nasıl Çalışırsınız

Calendar API v3’ü uygulamanın birkaç yolu vardır. İşte bazıları.

  • Etkinlikler Oluşturun. Google Takvim, kullanıcıların düzenli kalmasına yardımcı olan harika bir araçtır. Bunu kullanarak örneğin bir yürüyüş rotasını takvim etkinliği olarak ekleyebilir ve her katılımcıya hatırlatacak şekilde onları bilgilendirebilirsiniz; böylece stres yaşamadan hazırlıklı olabilirler.
  • Tekrarlayan Etkinlikler. Bazı etkinlikler birkaç kez tekrarlanır – günlük toplantılar, doğum günleri veya tatiller. Genelde aynı içeriklere sahiptir ve aynı başlangıç ile bitiş saatlerini paylaşır.
  • Kaynakları Eşitleyin. Tüm takvim koleksiyonlarındaki verileri senkronize tutabilir ve bant genişliğinden tasarruf edebilirsiniz.
  • Push Bildirimlerini Etkinleştir. Uygulamanıza bir kaynağın değiştiğini bildiren push bildirimlerini kullanma imkanı vardır.
  • Kaynakları Eşitleyin. Google Takvim API’si, tüm takvim koleksiyonlarındaki verileri senkronize ederken bant genişliğini de tasarruf etmenize yardımcı olur.

Google Takvim ayrıca çalışması için şu kaynakları da kullanır:

  • Etkinlik – Takvimde başlık, başlangıç ve bitiş saatleri ile katılımcıları içeren bir özelliktir.
  • Takvim – olayların bir koleksiyonudur.
  • Calendar list – Takvim Arayüzündeki tüm takvimlerin listesi
  • Ayar – Takvim arayüzünden bir tercih; örneğin kullanıcıların saat dilimi.
  • ACL – bir kullanıcıya takvim üzerinde özel bir erişim düzeyi veren bir erişim kontrol kuralı.
  • Renk – Takvim arayüzünde sunulan renk
  • Boş/Dolu – takvimde etkinlikler planlandığında “meşgul” olarak görülen veya etkinlik yokken “boş” olarak kabul edilen zamanlar.

Takvim API’sini Kullanın

Her istek Calendar API v3’e gönderildiğinde bir yetkilendirme belirteci gerekir. Bu belirteç aynı zamanda Google için uygulamayı tanımlar. Uygulamanın istekleri yetkilendirmek için OAuth 2.0’ı kullanması gerekir – diğer yetkilendirme protokolleri desteklenmez.

İpucu: OAuth 2.0, bir kullanıcının kendi kaynaklarına sınırlı erişimi diğer bir siteye aktarabilmesini sağlayan bir protokoldür; bu süreçte kimlik bilgilerini göstermesi gerekmez.

Google Takvim API’sine gönderilen tüm istekler, doğrulanmış bir kullanıcı tarafından yetkilendirilmelidir. Yetkilendirme süreci, sahip olduğunuz uygulama türüne bağlı olarak değişir. Aşağıdaki süreç, neredeyse tüm uygulama türleri için uygundur:

  1. Uygulamayı oluştururken Google Calendar API Console yardımıyla kaydedin. Google size bir istemci kimliği ve bir istemci sırrı verecek. Bu bilgilere daha sonra ihtiyacınız olacak.
  2. Google Takvim API’sini API Konsolu’nda etkinleştirin. Orada listelenmiyorsa bu adımı atlayın.
  3. Uygulamanız kullanıcı verilerine erişim gerektiğinde, Google’dan belirli bir erişim kapsamı talep eder.
  4. Sonra Google, kullanıcıya bazı bilgilerini talep etmek için uygulamanıza yetki vermesini isteyen bir onay ekranı gösterir.
  5. Kullanıcı onay verirse Google, uygulamanıza kısa ömürlü bir erişim belirteci verir.
  6. Daha sonra uygulamanız kullanıcı verilerini talep eder ve isteğe bu jetonu ekler.
  7. Google isteğinizi ve belirtecinizi geçerli olarak doğrularsa istenen verileri döndürür.

Bazen yeni erişim jetonları elde etmek için ek adımlara ihtiyaç duyabilirsiniz; örneğin yenileme jetonlarını kullanarak. Farklı türde uygulamalar için süreçleri buraya bakın.

Şansınız yaver gider ve onaylanırsanız, entegre yazılımınızın geliştirmesine başlayabilmeniz için Takvim API belgelerine erişim elde edersiniz.



Web sitenize basit ve hızlı bir şekilde bir Takvim eklemenin kolay bir yoluna mı ihtiyacınız var? Elfsight’in Etkinlik Takvimi aracını düşünün. Bu, Google Arama Sonuçları Sayfası’nda (SERP) etkinliklerinizi zahmetsizce göstermenizi sağlar.

Takvim API’si: Örnekler

Google Takvim API ile Etkinlik Oluştur

Etkinlik oluşturmak için en az şu parametreleri sağlayarak events.insert() metodunu çağırmanız gerekir:

  • calendarId – Bu, üzerinde bir etkinlik oluşturacağınız takvimin e-posta adresi olabilecek bir takvim tanımlayıcısıdır veya oturum açmış kullanıcının birincil takvimini kullanacak özel anahtar kelime ‘primary’ olabilir.
  • Etkinlik, başlangıç ve bitiş gibi tüm gerekli bilgilerle oluşturulacak bir olaydır. Buradaki tek zorunlu alanlar başlangıç ve bitiş zamanlarıdır.

Aşağıdaki örnek, bir etkinlik oluşturma ve meta verisini ayarlama sürecini gösterir:

Örnek: Etkinlik Oluşturma Süreci

// 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);



});



Tekrarlı Etkinlikler API

Bu etkinlikler düzenli bir program kapsamında birkaç kez tekrarlanır; örneğin günlük toplantılar, doğum günleri veya tatiller olabilir. İşte 15 Eylül 2015’ten başlayıp 29 Eylül’de beşinci kez gerçekleşene kadar Salı ve Cuma günleri 06:00–07:00 saatlerinde olan bir etkinliğin örneği:

Örnek: Tekrarlayan Etkinlikler

... "start": {



"dateTime": "2015-09-15T06:00:00+02:00",



"timeZone": "Europe/Zurich"



},



"end": {



"dateTime": "2015-09-15T07:00:00+02:00",



"timeZone": "Europe/Zurich"



},



"recurrence": [



"RRULE:FREQ=WEEKLY;COUNT=5;BYDAY=TU,FR"



],



…

Burada, 1 Haziran 2015’te başlayan ve ay boyunca her 3 günde bir tekrarlanan, tüm gün süren bir etkinliği görebiliriz; 10 Haziran hariç, 9 Haziran ve 11 Haziran dahil.

Örnek: tüm gün yinelenen etkinlik

… "start": {



"date": "2015-06-01"



},







"end": {



"date": "2015-06-02"



},



"recurrence": [







"EXDATE;VALUE=DATE:20150610",







"RDATE;VALUE=DATE:20150609,20150611",







"RRULE:FREQ=DAILY;UNTIL=20150628;INTERVAL=3"







],







…



Kaynakları Eşitle

Bu yöntem, tüm takvim koleksiyonlarındaki verileri senkronize tutmanıza yardımcı olur. Artımlı senkronizasyon iki aşamadan oluşur:

  • İlk tam eşitleme, istemci durumunu ve sunucu durumunu tamamen senkronize etmek amacıyla başlangıçta bir kez gerçekleştirilir.
  • Artımlı eşitleme tekrarlı olarak gerçekleştirilir ve önceki güncellemeden bu yana meydana gelen tüm değişiklikler istemciye iletilir.

Senkronizasyon belirteci için bir örnek:

Örnek: Senkronizasyon Belirteci

// 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);



});



Push Bildirimleri

Google Calendar API v3, kaynaklardaki değişiklikleri izlemenizi sağlayan push bildirimleri almanıza olanak tanır. Bu özellik, uygulamanızı geliştirmek için kullanılabilir.

Push bildirimlerini kullanmaya başlamak için üç şeye ihtiyacınız var:

  • Alıcı URL’inizin alan adını kaydedin.
  • Alım URL’nizi veya “Webhook” geri çağrı alıcısını ayarlayın.
  • İzleyeceğiniz her kaynak uç noktası için bildirim kanalı kurun.
İpucu: Şu anda Google Takvim API’si ACL, CalendarList, Events ve Settings kaynaklarındaki değişikliklere bildirimleri destekliyor.

Aşağıdaki örnek, bir dizi etkinlikte değişiklikleri izlemeye nasıl başlayabileceğinizi gösterir:

Örnek: Bir etkinlik koleksiyonundaki değişiklikleri izleme

POST https://www.googleapis.com/calendar/v3/calendars/my_calendar@gmail.com/events/watch



Authorization: Bearer auth_token_for_current_user



Content-Type: application/json



{







"id": "01234567-89ab-cdef-0123456789ab", // Your channel ID.



"type": "web_hook",



"address": "https://mydomain.com/notifications", // Your receiving URL.



...







"token": "target=myApp-myCalendarChannelDest", // (Optional) Your channel token.



"expiration": 1426325213000 // (Optional) Your requested channel expiration time.



}



Takvim API sınırları

Takvim API’sinin günlük 1.000.000 sorgu sınırı vardır. Kullanım limitlerinizi değiştirmek veya kota artırmak isterseniz, şu adımları izleyin:

  • Bir faturalandırma hesabı oluşturun; hesabınız yoksa.
  • Google Konsolu’ndaki API Kitaplığı’nın Etkinleştirilmiş API’ler sayfasına gidin ve listeden bir API seçin.
  • Görüntülemek ve kota ile ilgili ayarları değiştirmek için kotaları seçin.

Kullanım istatistiklerinizi ayrıca Kullanım bölümünde görebilirsiniz.

Platform verilerini kullanmanıza yardımcı olan başka widget’lar da var. Her işletme için en faydalılarından biri Google Yorumlar widget’ı. Geniş işlevselliğe sahip ve sadece Google yorumlarını web sitesine yerleştirme imkanı sunmakla kalmaz, aynı zamanda arama sonuçları için zengin snippet’ler de üretir.

SSS (Sık Sorulan Sorular)

Google Takvim API ücretsiz mi?

Evet, Google Takvim API kullanımı ücretsizdir. Ancak bazı sınırlamalar vardır.

Takvim API’si yardımıyla bir etkinlik nasıl oluşturulur?

events.insert() metodunu çağırmanız gerekiyor; calendarId ve event parametrelerini sağlamalısınız. Ayrıca OAuth kapsamınızı https://www.googleapis.com/auth/calendar olarak ayarlayın ve doğrulanmış kullanıcının sağladığınız calendarId ile takvime yazma erişimine sahip olduğundan emin olun.

Google Takvim’den verileri nasıl alabilirim?

Takvimini açın, sonra “Takvimlerim” bölümüne tıklayın. Dışa aktarmak istediğiniz takvimi seçin ve “Daha Fazla”ya tıklayın. Takvim ayarları altında “Takvimi Dışa Aktar”ı tıklayın. Böylece etkinliklerinizi içeren ICS indirmeye başlayacaktır.

Takvimimi otomatik olarak yedekleyebilir miyim?

Elbette. Bunu yapmak için Takvim sekmesini açın, ardından “Daha Fazla” düğmesine tıklayın ve açılır listeden “Yedekle” seçeneğini seçin; yedekleme otomatik olarak başlayacaktır.

Google Takvim API’nizi nasıl bulabilirsiniz?

Google Geliştirici Konsolu’na gidin ve yeni bir proje oluşturun. Projede yan menüden API’ler ve Kimlik Doğrulama > API’ler bölümüne geçin. Ardından listede Takvim API’si’ni bulun.

Sonuç

Gördüğünüz gibi Google Takvim API ile çalışmak o kadar zor değildir — sadece birkaç kolay adım atmanız yeterli. Şimdi bu araçla ilgili deneyiminizi görmek istiyoruz — kullanım senaryolarınızı ve faydalı ipuçlarınızı yorumlarda paylaşın!

Makale yazarı
İçerik Yöneticisi
Elfsight’te İçerik Yöneticisi olarak, hem pratik hem de ilham veren içerikler üretmeye odaklanıyorum. Karmaşık olanları basitleştirmeyi ve okunabilirliği keyifli kılmayı seviyorum.