# Google Takvim

* [Bir hizmet hesabı nasıl oluşturulur](#how-to-create-a-service-account)
* [Anahtar dosyası nasıl indirilir](#how-to-download-the-key-file)
* [Takvim kimliği nasıl bulunur](#how-to-find-the-calendar-id)
* [Yeni bir takvim nasıl oluşturulur](#how-to-create-a-new-calendar)
* [Takvim hakkında bilgi nasıl alınır](#how-to-get-the-information-about-the-calendar)
* [Hizmet hesabının takvim listesini nasıl alınır](#how-to-get-the-list-of-the-service-accounts-calendars)
* [Etkinliklerle nasıl çalışılır](#how-to-work-with-events)

## Bir hizmet hesabı nasıl oluşturulur

Bunun için Google hizmetlerinde kendi hesabınızı oluşturmanız gerekir.

Şuraya gidin [**bu bağlantıya**](https://console.developers.google.com/cloud-resource-manager) ve yeni bir proje oluşturun:

![](https://lh5.googleusercontent.com/NG1WV05Itj6EeCf1J9zBHYqC8ZbDqXGaHpdLex4KIfUL42orPsIcFxxFfPMzqR2kJ-GU4F3d0aoLZYcjSmSzwTtmujFcCMHdp6YGTU6RcYoo4xvquTEmTvXIt238pJ_ZZHLaZ1kjr9OSrbj_sQ)

Proje için bir ad düşünün:

![](https://lh6.googleusercontent.com/-DGrD4022xKo01cvjPWcoADnzpk5xsneUOQy_04I6hIUXiDRrJvQTw8ZPZVuhz5dTbZ3FgBsOHaP_IuBWS3UcsidNYWePfPk0SThtOGFFJ192mzgerDv_SGzmzCJTlZjC6e-97rHn_PXJL9JsA)

“Oluştur”a basın ve proje oluşturulurken biraz bekleyin.

Sayfayı yeniden yükleyin ve ardından yeni oluşturulan projeye tıklayın. Soldaki alanda erişim durumunuzu kontrol edin - “Owner (1)” yazmalıdır:

![](https://lh6.googleusercontent.com/9muFuGGA7dUF3bHo-GZa-XB8NyzclfD5q8iGAigEwUH_2MvBoHgzqyuoeP4drSlh2Zx0ASELNDLq_GKhc4UcQVdVZ6PhIZDd4tGGcTB_3haklI729SkI-2HvIUByewnDBzbfUtkUPIJr0UzF_Q)

Şimdi hizmet hesabı ayarlarına geçin:

![](https://lh5.googleusercontent.com/Q45Aug6B6BY2jJkJJxCXLqh7YrFYmR9Zp1KeVQy0x14ZkznGbVrIXzA_awcNsw7Yc5Aa_SFQ2xK0gB3qeZMT1YPTR6VF6eQ6ssxweXhrvZSwhgOrUlsOh0YQPMxl3IXr6JdGfAHPeGUMDO5wdQ)

Burada “Service accounts” bölümünü açmanız ve “ + Create Service Account”a basmanız gerekir:

![](https://lh5.googleusercontent.com/9KCh-Y4hP2xAubjCTQ9wK3V5lwYDNSGhCRVtc7TzQl5xsfBBKQrUR8kHq2YCFafMGh9asbDOQL_JgYlHUediL17wf8X42hTFJWt3LQnOYi10jEZOvBvv5pYsDUKKqHtr-fkVfHQTNz7johCoaQ)

Hizmet hesabının adını ve e-postasını girin:

![](https://lh6.googleusercontent.com/Oo5EpjcAEAhisFjWhGxEk7zBuo3TqHuyfNXWL_BatusaULn-U8qE-38mnEToYoOJZk6o24JccBBVVAha0CU6ZFvEOu8H-rculhxerQnB9yI5vBmnpSm1EyBg4LtVCCwUDMI52mdz503Q9qxODg)

Sonra Owner rolünü seçin:

![](https://lh4.googleusercontent.com/V3ndP4Csp309f2aAvvzPNGad2NQQNZEOrMFSYw5bqFeqEVBt-SAJpr6SI48Yn8JQmYmu20wZ8HjTBNSWaVsunMGT40RE1WnzuJojbJ0Iwcbt8EYIXKt_131lfi_r-Iibu3oaPLTT5ltaHos6tQ)

“Done”a basın ve ardından seçilen projede “Manage keys”e tıklayın. Sonra “Create new key”e basın

![](https://lh4.googleusercontent.com/mvdV7hP-TSK-Kvr0aHm76l8I4ddetWVXYskOKYa6La3Xp7rwUuw3tP553hBRUENFepzriZsX67C9ve5hKU7iR6lBz2jg6PVTf2DYSrI7JZGSBMaz8dhBp6Zpjx47d8hLjiGkfVDFOi7kG8nQ6g)

JSON anahtar türünü seçin ve “Create”e basın

![](https://lh5.googleusercontent.com/JxAPsYM4zEjFmFbuXDnqVZQmmgHiEqtl-jMO4vmQqu8WyHssEN3Upm43xzcZNkYXNRbln0MuqAZQq76xNi99Nqj73aqgwxfBUGaYKtIvU9or0ukkm-RpBz3qPqpt4SsAdrkuo5PiLIQ0YGuM_Q)

Anahtarı oluşturduktan sonra, otomatik olarak bilgisayarınıza kaydedilir

![](https://lh4.googleusercontent.com/kyAdhhQobVvR9HcexWGzBlFckXTZ-L82kSbEkCakbMld65KmtrjsXl2SgwldU77XNNaLsrN3YMlLPOr2WpLCk-KomTdiOMCossSkRTYKdp1VflZad1rEzOiSGj-y-dFnNuTRc7kz4C7hnFPgug)

Sonra onu barındırma ortamına ya da Salebot’a yüklemeniz ve aldığınız URL’yi creds\_path parametresinde paylaşarak istek parametrelerinde bağlantıyı vermeniz gerekir.

Şimdi ayrıca API entegrasyonlarımızı eklemeniz gerekiyor. Bunun için şuraya gidin:

![](https://lh3.googleusercontent.com/7DPiPASSAdgFU9O5I7laKm9aQkEtvrq2ADlFTMUeu95OSQw26TS8hhAmWNgvw4oXClgElmHKEVHw6y7YsGYPTL5MhB8WSk9EycEz2F2yCO_GM-AcIdPGujVCieUu7nE1cFEzf9WlmxPpF07o1w)

Ardından API’leri ve hizmetleri etkinleştirmeniz ve açılan pencerede Google Calendar API’yi aramanız gerekir:

![](https://lh6.googleusercontent.com/gLQvQQjADGonjX1uL3kIVIte6chCYzjmDmob5flHdzpUIkBLKF5oenob2Att_5b6Tu4fHZNsk7-adfizosbqEwvGjHiWKB_tZKr5Y2L3b831PqEHVkt12ggpxS_3Csw9fdW--atRK2sAXNkV7Q)

Arama sonucuna ve ardından “Enable”e basın:

![](https://lh5.googleusercontent.com/3LpS3U0TyFp3QORLenGiy0924zXuQGNhePDobY8Xz5asuf7sYXJAHNHsuMJXyugngMoVRu0r73YSxDkbWCbYLYgXFRucxvCrEruxFUmy9pKGr6Rl0CGp0QLSbUkNe9duyb6W2WSGqlym9BF95g)

Bu adım hizmet hesabınızın oluşturulmasını tamamlar.

## Anahtar dosyası nasıl indirilir

Projeyi Salebot üzerinde açın ve elde edilen anahtar dosyasını bir bloğa yükleyin, örneğin şöyle:

![](https://lh6.googleusercontent.com/Ru3wFP-gmQjC-np0U4tUJoYHfKUx4bQEq3sR5QvbIefpZxgT8P9DjjdBsdzJejElBCnDURleohA7ekpEyB7-N2Ha7emTYNHY7-_R6pWzpPCblVHEs6lMiYhYWyRLxzk_QYPrsk9BQQ09MPxm1Q)

“Save”e basın ve ücretsiz test penceresine geçin:

![](https://lh3.googleusercontent.com/GWgWz8uGZmRyo7oUIt1Hh32y-aPypPIveRuPnbrVut6wbiPPwzzob8vc8slphEjjZMFH5uZwdKokVGMq72nipIs32u4kOal-4EHKkcePLX1JDdUWra1l4SEvhzx-c8_O4uhRXwtTg-q4JCrm2A)

Koşul olarak belirlediğiniz ifadeyi girin (bu durumda “123”). Yanıt olarak anahtar dosyasının bağlantısını alacaksınız:

![](https://lh5.googleusercontent.com/Fdpb36HCVWJteTrSoID1LFotJsYNDsQrE_uyyYsvMe0Iy6NNR_djCaKS8Kf9O_XLtb8KMGQL9tHl7aOhHrANj4D7108Qx6bRPj8wN5HKMH5RXLavLkrNyeEwqzgi5OyzrXAYbamr6VuDhpmJvg)

{% hint style="danger" %}
Bloğu silemezsiniz, aksi halde dosya sunucudan silinir ve onu tekrar eklemek zorunda kalırsınız.
{% endhint %}

Sizi rahatsız etmemesi için bloğu Not durum türünde yapmayı unutmayın.

![](https://lh4.googleusercontent.com/rfNCUwnEr-FN-CCEnzeDCxrB1eqnTbUUUnLOmQkipoVzHmsCf56AM0-UtAWZWe0EhWFVMX-s9vFXTMrl78XT2bcJijvYptrTSE2kvpXWJUB3vF8BvlnDX_gjndY_UPDzGYYvnCfeUe2td8A87g)

Bu bağlantıyı bir değişkende saklayabilir veya creds\_path parametresinde olduğu gibi aktarabilirsiniz.

## Takvim kimliği nasıl bulunur

Mevcut takvimin kimliğini ayarlarında “Integrate calendar” bölümünde bulabilirsiniz:

![](https://lh6.googleusercontent.com/ssPqnz_cQlA8v2pCzXmcaOC0tagTVBDV4Vyd-9UqvQF4VjbXyroqkwkwO6IaXOv-x0vOP3bAem5aB_vsdg9kemyO-n6quLhGf88a_5B62n1iJAIOOXwDTkmRAAv1rPGlwLM0Yx-1iH-lKnFuzg)

## Yeni bir takvim nasıl oluşturulur

Yeni bir takvimi iki yoldan biriyle oluşturabilirsiniz: manuel olarak ve bir işlev kullanarak.

### Takvimi manuel oluşturma:

![](https://lh4.googleusercontent.com/P49fLaIHyOh-0-FcQWdFBN5UygV9a-Tq6_92Q3Sn0ln5u1Sb7LmIDz88tKfDiRv1nTb7cofbFoi9Q_mdNk-Ol0Qt01MAd5HwfxIM9_pcifEIAwhWy_9eskUYVG8E7a4IfsVBNlCo0C2j_t8MPw)

Notlar ekleyebilmek ve mevcut bir takvimi (veya manuel oluşturulmuş bir takvimi) düzenleyebilmek için hizmet hesabına erişim vermelisiniz. Bunun için, gerekli takvimin ayarlarına hizmet hesabının e-posta adresini eklemeniz yeterlidir:

![](https://lh4.googleusercontent.com/hQLBvQk36xq20jXLPWzLdNXWoSEXHj2qMshjZxQTGKneJj4H-HUy2Ekz3WJ5y5aVbGyfmE6-YQm-TIAqNwze_kFGhncbrWHLpnljDYaSDz8EXJ-Za3OutS9rIdJVgxpuHZZdXrdmQlUZ5iUUtg)

### Bir işlev kullanarak takvim oluşturma

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

**Parametreler**:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - oluştur \
**name** - takvim adı \
**description** - takvim açıklaması

**Ek parametreler**:

**time\_zone** - takvimin saat dilimi.  IANA Saat Dilimi kimliği. Varsayılan olarak Europe/Moscow (GMT+3) \
**location** - takvimin coğrafi konumu, serbest biçimli bir metin olarak

Ayrıca farklı bir hesaba, örneğin ana hesabınıza da erişim verebilirsiniz:

**owner\_email** - takvimin sahibi olarak eklenen hesabın e-posta adresi

{% hint style="warning" %}
Varsayılan olarak takvim hizmet hesabında oluşturulur. Takvimi kendi hesabınızdan görsel olarak düzenleyebilmek için owner\_email parametresine e-posta adresinizi girin.
{% endhint %}

**Depolanan değerler** JSON yanıtından

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür:

`{'kind': 'calendar#calendar', 'etag': '"WgASl9FY_5zrEmCZvrt4Qlh6tGQ"', 'id': '7e2q3mka5dmfmcohdltfupclj4@group.calendar.google.com', 'summary': 'Takvim adı’', 'timeZone': 'UTC'}`

Oluşturulan takvimin kimliğini kaydedelim: `id -> calendar_id`&#x20;

![](https://lh6.googleusercontent.com/64BZuVj1APwealP0nIEY5gb_9I4ZV9gLApOEIbRhYYzIGSg2wKza1OggKASRFBOnSDkghoINjH2SKnXAUxFrA-i02kmtz5BrSqV2n0OS_7_dbNvQuLBhh3PsrQ8Qc7_KhqOshVf3JhaV6O_m-w)

Test için #{custom\_answer} değişkenini gösterebilirsiniz.

Eğer e-posta (owner\_email) aktarıldıysa, başarılı isteğin ardından e-posta gelen kutunuza gidip takvimin hesabınıza eklenmesini onaylamanız gerekir:

![](https://lh6.googleusercontent.com/Vt4Z3gvrMcWZDcR1FIjQdcJCJu8KnP9p3AXtWfW0D6LAjSrsdjd05pwjgeEivQl6f3Su7KEgOVLp4-usk1GiLwijbNA8rYW1kimicScJLI6cxj1lP3ezShCEVxeI-3_JoO-fo6NSrbUQIehWgw)

![](https://lh6.googleusercontent.com/tPzJigwrYpHh3MD3c-zX2rP32sHT_VM1Y6l-uebqvb2XUntTkiXNlAWex79NzZZuw3FxjAJZRtrXah9N-cqLjonAX0LhXhuJ7cTIb-UdfmM0auYaXnOQTQYP9QTNouQHFY5fsHtviWvpSgZKIw)

## Takvim hakkında bilgi nasıl alınır

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

**Parametreler**:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - get\_calendar; \
**calendar\_id** - seçilen takvimin kimliği

**Depolanan değerler**

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

Bir **örnek** işlev yanıtından:

`{'kind': 'calendar#calendar', 'etag': '"6KN4OTLeoqGGu7Nr5uNIQgCGYsU"', 'id': 'rcdd8mimc6gjtasan9ansn8354@group.calendar.google.com', 'summary': 'Takvim adı', 'timeZone': 'UTC'}`

## Hizmet hesabının takvim listesini nasıl alınır

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

**Parametreler**:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - calendars\_list

**Depolanan değerler**

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

Bir **örnek** işlev yanıtından:

`{` \
&#x20;  `'kind': 'calendar#calendarList',` \
&#x20;  `'etag': '"p32o8pm47rfqf20g"',`\
&#x20;  `'nextSyncToken': 'CLCM2Ifb9PECEi5nc2hlZXRzQGdzaGVldHMtMjU0NzEzLmlhbS5nc2VydmljZWFjY291bnQuY29t',` \
&#x20;  `'items': [` \
&#x20;    `{` \
&#x20;      `'kind': 'calendar#calendarListEntry',` \
&#x20;      `'etag': '"1625235372775000"',` \
&#x20;      `'id': '74u4aogu34hisgvi9v0pjriqho@group.calendar.google.com',` \
&#x20;      `'summary': 'AAAAAAAAaa',` \
&#x20;      `'timeZone': 'Asia/Singapore',` \
&#x20;      `'colorId': '17',` \
&#x20;      `'backgroundColor': '#9a9cff',` \
&#x20;      `'foregroundColor': '#000000',` \
&#x20;      `'selected': True,` \
&#x20;      `'accessRole': 'owner',` \
&#x20;      `'defaultReminders': [` \
&#x20;     `]` \
&#x20;  `},` \
&#x20;  `{` \
&#x20;    `'kind': 'calendar#calendarListEntry',` \
&#x20;    `'etag': '"1625235805096000"',` \
&#x20;    `'id': '5u9q24kdh571mnm667t2d3q16c@group.calendar.google.com',` \
&#x20;    `'summary': 'AAAAAAAAaa',` \
&#x20;    `'timeZone': 'Asia/Singapore',` \
&#x20;    `'colorId': '21',` \
&#x20;    `'backgroundColor': '#cca6ac',` \
&#x20;    `'foregroundColor': '#000000',` \
&#x20;    `'selected': True,` \
&#x20;    `'accessRole': 'owner',` \
&#x20;    `'defaultReminders': [`\
&#x20;    `]` \
&#x20;   `}` \
&#x20; `]` \
`}`

## Etkinliklerle nasıl çalışılır

### Etkinlik hızlı ekleme

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

**Parametreler**:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - quick\_add\_event; \
**calendar\_id** - seçilen takvimin kimliği;\
**event\_name** - etkinliğin adı

Bir **örnek** - parametrelerin

`{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com", "command": "quick_add_event","event_name": "İnanılmaz Etkinlik"}`

**Depolanan değerler**

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür. Oluşturulan etkinliği daha sonra düzenleyebilmek için kimliğini kaydetmeniz önerilir: id -> event\_id.

Bir **örnek** işlev yanıtından:

`{`\
`'kind': 'calendar#event',` \
`'etag': '"3253879667088000"',` \
`'id': 'ljp7a3ocp8oorbov9u2cq221s0',` \
`'status': 'confirmed',` \
`'htmlLink': 'https://www.google.com/calendar/event?eid=bGpwN2Ezb2NwOG9vcmJvdjl1MmNxMjIxczAgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw',` \
`'created': '2021-07-22T07:43:53.000Z',` \
`'updated': '2021-07-22T07:43:53.544Z',` \
`'creator': {'email': 'gsheets@gsheets-254713.iam.gserviceaccount.com'},` \
`'organizer': {'email': 'i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com',` \
`'displayName': 'Testov',` \
`'self': True},` \
`'start': {'dateTime': '2021-07-22T07:43:53Z', 'timeZone': 'UTC'},` \
`'end': {'dateTime': '2021-07-22T08:43:53Z', 'timeZone': 'UTC'},` \
`'iCalUID': 'ljp7a3ocp8oorbov9u2cq221s0@google.com',` \
`'sequence': 0,` \
`'reminders': {'useDefault': True},` \
`'eventType': 'default'`\
`}`

![](/files/87f5977e52580ce30d7cc035231fb1a2e9a0e138)

### Bir etkinlik nasıl eklenir

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - add\_event \
**calendar\_id** - seçilen takvimin kimliği \
**event\_name** - etkinliğin adı

Ayrıca iki parametre seçeneğinden birini ayarlamanız gerekir: tarih VEYA tarih ve saat.

Etkinlik tüm gün sürüyorsa, tarihleri belirtmeniz gerekir:

1. **start\_date** - etkinliğin başladığı tarih DD.MM.YYYY formatında (ör. 23.07.2010)
2. **end\_date** - etkinliğin bittiği tarih DD.MM.YYYY formatında (ör. 24.07.2010)

Etkinlik belirlenen saat aralığında gerçekleşiyorsa, tarih ve saati belirtmeniz gerekir:

1. start\_datetime - etkinliğin başladığı tarih ve saat DD.MM.YYYY HH:MM formatında (ör. 23.07.2010 12:00)
2. end\_datetime - etkinliğin bittiği tarih ve saat DD.MM.YYYY HH:MM formatında (ör. 23.07.2010 13:00)
3. time\_zone - etkinliğin saat dilimi. IANA Saat Dilimi kimliği. Varsayılan olarak Europe/Moscow (GMT+3)

{% hint style="info" %}
Takvimin ve etkinliğin saat dilimleri farklıysa, saatli etkinlik takvimin saat dilimine eklenir.
{% endhint %}

Örnek:

Takvim Europe/Kyiv +3 saat diliminde ve etkinlik Europe/Berlin +2 saat diliminde ekleniyor. 12:00’deki etkinlik saati (+2 tz) takvime 13:00 olarak eklenir, çünkü Kiev saatine göre 13:00, +2 saat diliminde 12:00’dir.

**Ek parametreler:**

**event\_description** - etkinliğin açıklaması \
**location** - etkinliğin coğrafi konumu, serbest biçimli metin olarak \
**email\_minutes** - katılımcıların e-postalarına bildirim göndermek için etkinlikten kaç dakika önce \
**popup\_minutes** - katılımcılara açılır pencere olarak bildirim göndermek için etkinlikten kaç dakika önce

Parametrelere bir örnek:

`{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com", "command": "add_event", "event_name": "Tüm zamanların en büyük etkinliği", "start_datetime": "27.07.2021 12:00", "end_datetime": "27.07.2021 14:00"}`

#### JSON yanıtından saklanan değerler:

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

Oluşturulan etkinliği ileride düzenlemek için kimliğini kaydetmeniz önerilir:

**id -> event\_id**

#### İşlev yanıtına bir örnek:

`{'kind': 'calendar#event', 'etag': '"3254057128970000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T08:22:53.109Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': 'gsheets@gsheets-254713.iam.gserviceaccount.com'}, 'organizer': {'email': 'i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com', 'displayName': ‘Test’, 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Kyiv}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Kyiv}, 'iCalUID': 'ittr5291ppi7snapn8jbct5krs@google.com', 'sequence': 0, 'attendees': [{'email': john@gmail.com', 'displayName': John, 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default'}`

![](https://lh4.googleusercontent.com/KVPS5xulK5hFYLTI9tsbvwd51rbH-FkxXMWArUuUNvTfTD-hTq486q4KSQvO45JqCet3U9wmrB65dwrSsOJQTeTxmt47tV5Jh1Qx6Wsri5cPW47QOohuwHY1rDdF7_G-hPNe8-xuCtEDY-rbIg)

### Etkinliği düzenleme

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar\\>
**İstek türü**: POST-json

#### Zorunlu parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - update\_event; \
**calendar\_id** - takvimin kimliği; \
**event\_id** - düzenlemeniz gereken etkinliğin kimliği

**İsteğe bağlı parametreler** güncelleme için:

Bir tane de, birkaç parametre de aktarabilirsiniz.

**event\_name** - etkinliğin adı \
**event\_description** - etkinliğin açıklaması \
**email\_minutes** - katılımcıların e-postalarına bildirim göndermek için etkinlikten kaç dakika önce \
**popup\_minutes** - katılımcılara açılır pencere olarak bildirim göndermek için etkinlikten kaç dakika önce

Etkinlik tüm gün sürüyorsa, tarihleri belirtmeniz gerekir:

**start\_date** - etkinliğin başladığı tarih DD.MM.YYYY formatında (ör. 23.07.2010) \
**end\_date** - etkinliğin bittiği tarih DD.MM.YYYY formatında (ör. 24.07.2010)

Etkinlik belirlenen saat aralığında gerçekleşiyorsa, tarih ve saati belirtmeniz gerekir:

**start\_datetime** - etkinliğin başladığı tarih ve saat DD.MM.YYYY HH:MM formatında (ör. 23.07.2010 12:00) \
**end\_datetime** - etkinliğin bittiği tarih ve saat DD.MM.YYYY HH:MM formatında (ör. 23.07.2010 13:00) \
**time\_zone** - etkinliğin saat dilimi. IANA Saat Dilimi kimliği. Varsayılan olarak Europe/Moscow (GMT+3)

Parametrelere bir örnek:

`{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com", "event_id": "j1lcpm4q2p9c0cv705alv3brug", "command": "update_event", "event_name": "Düzenlenmiş etkinlik", "start_datetime": "27.07.2021 12:00", "end_datetime": "27.07.2021 14:00","popup_minutes": "11","email_minutes": "22"}`

#### JSON yanıtından saklanan değerler:

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

#### İşlev yanıtına bir örnek:

`{"kind":"calendar#event","etag":""3276713558524000"","id":"j1lcpm4q2p9c0cv705alv3brug","status":"confirmed","htmlLink":"https://www.google.com/calendar/event?eid=ajFsY3BtNHEycDljMGN2NzA1YWx2M2JydWcgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw","created":"2021-12-01T10:40:11.000Z","updated":"2021-12-01T10:43:16.738Z","summary":"Amazing","creator":{"email":"gsheets@gsheets-254713.iam.gserviceaccount.com"},"organizer":{"email":"i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com","displayName":"Test","self":true},"start":{"dateTime":"2021-12-28T09:00:00Z","timeZone":"Europe/Moscow"},"end":{"dateTime":"2021-12-29T11:00:00Z","timeZone":"Europe/Moscow"},"iCalUID":"j1lcpm4q2p9c0cv705alv3brug@google.com","sequence":0,"reminders":{"useDefault":false,"overrides":[{"method":"email","minutes":22},{"method":"popup","minutes":12}]},"eventType":"default","update_status":"ok"}`

### Etkinlik listesi alma

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - get\_event\_list;\
**calendar\_id** - takvimin kimliği

Ek parametreler aktarmasanız, sonuç bugünün etkinliklerinin listesi olur

**Ek parametreler:**

**start\_date** - etkinlikleri aramak istediğiniz tarih DD.MM.YYYY formatında (23.07.2021) \
**end\_date** - etkinlikleri aramak istediğiniz son tarih DD.MM.YYYY formatında (24.07.2021)

Parametrelere bir örnek:

23 Temmuz için olan etkinlik bulunur

`{"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json", "calendar_id": "i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com", "command": "get_event_list", "start_date": "22.07.2021", "end_date": "23.07.2021"}`

#### JSON yanıtından saklanan değerler:

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

Bulunan etkinlikler listesi bir değişkende saklanabilir:

**items -> event\_list**

#### İşlev yanıtına bir örnek:

`{'kind': 'calendar#events', 'etag': '"p33odnesrinsv20g"', 'summary': 'Test', 'description': 'Test description', 'updated': '2021-07-23T12:13:05.686Z', 'timeZone': 'UTC', 'accessRole': 'owner', 'defaultReminders': [], 'items': [{'kind': 'calendar#event', 'etag': '"3254084771372000"', 'id': '6d8rocb9e2r21ue37jgsa0v06i', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=NmQ4cm9jYjllMnIyMXVlMzdqZ3NhMHYwNmkgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T12:11:13.000Z', 'updated': '2021-07-23T12:13:05.686Z', 'summary': 'DDDDDDDDD', 'creator': {'email': 'adnimdd@gmail.com'}, 'organizer': {'email': 'i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com', 'displayName': 'Testov', 'self': True}, 'start': {'date': '2021-07-20'}, 'end': {'date': '2021-07-21'}, 'transparency': 'transparent', 'iCalUID': '6d8rocb9e2r21ue37jgsa0v06i@google.com', 'sequence': 0, 'reminders': {'useDefault': False}, 'eventType': 'default'}]}`

### Etkinlikleri farklı bir takvime taşıma

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - move\_event; \
**calendar\_id** - etkinliğin taşındığı takvimin kimliği;\
**event\_id** - etkinliğin kimliği; \
**destination\_calendar\_id** - etkinliğin taşındığı takvimin kimliği;

#### JSON yanıtından saklanan değerler:

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

#### İşlev yanıtına bir örnek:

`{'kind': 'calendar#event', 'etag': '"3253880350568000"', 'id': 'ljp7a3ocp8oorbov9u2cq221s0', 'status': 'cancelled', 'htmlLink': 'https://www.google.com/calendar/event?eid=bGpwN2Ezb2NwOG9vcmJvdjl1MmNxMjIxczAgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-22T07:43:53.000Z', 'updated': '2021-07-22T07:49:35.284Z', 'creator': {'email': 'gsheets@gsheets-254713.iam.gserviceaccount.com'}, 'organizer': {'email': '88q8fvkrv5ue7orsh109t6o60s@group.calendar.google.com', 'displayName': 'Тестовый календарь'}, 'start': {'dateTime': '2021-07-22T07:43:53Z', 'timeZone': 'UTC'}, 'end': {'dateTime': '2021-07-22T08:43:53Z', 'timeZone': 'UTC'}, 'iCalUID': 'ljp7a3ocp8oorbov9u2cq221s0@google.com', 'sequence': 0, 'reminders': {'useDefault': True}, 'eventType': 'default'}`

### Etkinlik hakkında bilgi nasıl alınır

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - get\_event; \
**calendar\_id** - takvimin kimliği; \
**event\_id** - etkinliğin kimliği

#### JSON yanıtından saklanan değerler:

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

#### İşlev yanıtına bir örnek:

`{'kind': 'calendar#event', 'etag': '"3254067331414000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T11:12:55.553Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': 'gsheets@gsheets-254713.iam.gserviceaccount.com'}, 'organizer': {'email': 'i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Moscow'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Moscow'}, 'iCalUID': 'ittr5291ppi7snapn8jbct5krs@google.com', 'sequence': 0, 'attendees': [{'email': 'adnimdd@gmail.com', 'displayName': 'John', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default'}`

### Bir etkinlik nasıl silinir

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - remove\_event; \
**calendar\_id** - takvimin kimliği; \
**event\_id** - silmek istediğiniz etkinliğin kimliği

#### JSON yanıtından saklanan değerler:

Başarılı çalıştırmadan sonra işlev, kaydedip saklayabileceğiniz şu parametreleri döndürür.

#### İşlev yanıtına bir örnek:

`{'status': 'ok'}`

### Etkinlik katılımcısı nasıl eklenir

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - add\_client; \
**calendar\_id** - takvimin kimliği; \
**event\_id** - etkinliğin kimliği; \
**client\_email** - eklemek istediğiniz müşterinin e-posta adresi

Ek parametreler:&#x20;

**name** - etkinliğin adı; \
**yorum** - katılımcının yorumu

**Parametrelere bir örnek:**

`{` \
`"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json",` \
`"calendar_id": "i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com",` \
`"command": "add_client",` \
`"event_id": "#{event_id}",` \
`"client_email": "asdc@mail.com",` \
`"name": "John",` \
`"comment": "İlk ben olacağım!"` \
`}`

![](https://lh5.googleusercontent.com/8JxiPQ_0jmcLYLgDm342-ZfFX346G_QtephaPBQ6upoh1zWVphAZvve3OtpDM8UgJyreXmxFpkEV0tO6Jq15ECT2nMx-rg1lGpzybwCB4Hnd391H99IQ-hQ6fuEOvU-CRCHw2L74UVXJLHTCfQ)

#### JSON yanıtından saklanan değerler:

İşlev her zaman durumu döndürür **add\_status**. Şu üç değerden birini alabilir:

**ok** - müşteri eklendi \
**exist** - müşteri zaten mevcut \
**error** - ekleme sırasında bir hata oluştuysa, add\_status ile birlikte ayrıca hata metnini içeren error\_message parametresi olur

#### Başarı durumunda işlevin yanıtına bir örnek:

`{'kind': 'calendar#event', 'etag': '"3254059247409000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T08:58:11.548Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': 'gsheets@gsheets-254713.iam.gserviceaccount.com'}, 'organizer': {'email': 'i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Moscow'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Moscow'}, 'iCalUID': 'ittr5291ppi7snapn8jbct5krs@google.com', 'sequence': 0, 'attendees': [{'email': 'adnimdd@gmail.com', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': 'adnimd@gmail.com', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': 'adnidgmd@gmail.com', 'displayName': 'John2', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default', ‘add_status’: 'ok'}`&#x20;

### Katılımcı nasıl silinir

**İşlev URL'si**: <https://store.salebot.ai/function/gcalendar> \
**İstek türü**: POST-json

#### Parametreler:

**creds\_path** - takvimin API’sine erişim anahtarının bağlantısı (yukarıdaki talimat kullanılarak elde edilir); \
**komutunu** - remove\_client; \
**calendar\_id** - takvimin kimliği; \
**event\_id** - etkinliğin kimliği; \
**client\_email** - müşterinin e-posta adresi

#### Parametrelere bir örnek:

`{` \
`"creds_path": "https://files.salebot.ai/uploads/message/file/30037/calendar-project-320517-c241d9ab0565.json",` \
`"calendar_id": "i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com",` \
`"command": "remove_client",` \
`"event_id": "#{event_id}",` \
`"client_email": "asdc@mail.com"` \
`}`

#### JSON yanıtından saklanan değerler:

İşlev her zaman durumu döndürür **remove\_status**. Şu üç değerden birini alabilir:

**1** - müşteri başarıyla kaldırıldı \
**0** - müşteri bulunamadı \
**error** - kaldırma sırasında bir hata oluştuysa, remove\_status ile birlikte ayrıca hata metnini içeren error\_message parametresi olur

#### Başarı durumunda işlevin yanıtı:

`{'kind': 'calendar#event', 'etag': '"3254059247409000"', 'id': 'ittr5291ppi7snapn8jbct5krs', 'status': 'confirmed', 'htmlLink': 'https://www.google.com/calendar/event?eid=aXR0cjUyOTFwcGk3c25hcG44amJjdDVrcnMgaTlzdmVydHN0dm9vMmZxMW8waThjbjM5YThAZw', 'created': '2021-07-23T08:22:35.000Z', 'updated': '2021-07-23T08:58:11.548Z', 'summary': 'New Event44', 'description': 'Descri xbb xhjxkv', 'location': 'city London', 'creator': {'email': 'gsheets@gsheets-254713.iam.gserviceaccount.com'}, 'organizer': {'email': 'i9svertstvoo2fq1o0i8cn39a8@group.calendar.google.com', 'displayName': 'Test', 'self': True}, 'start': {'dateTime': '2021-07-23T13:30:00Z', 'timeZone': 'Europe/Moscow'}, 'end': {'dateTime': '2021-07-23T14:00:00Z', 'timeZone': 'Europe/Moscow'}, 'iCalUID': 'ittr5291ppi7snapn8jbct5krs@google.com', 'sequence': 0, 'attendees': [{'email': 'adnimdd@gmail.com', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': 'adnimd@gmail.com', 'displayName': 'John', 'responseStatus': 'needsAction'}, {'email': 'adnidgmd@gmail.com', 'displayName': 'John2', 'responseStatus': 'needsAction'}], 'reminders': {'useDefault': False, 'overrides': [{'method': 'email', 'minutes': 10}, {'method': 'popup', 'minutes': 10}]}, 'eventType': 'default', 'remove_status': '1'}`


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/tr/integrations/google/calendar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
