REST Resource: subscriptions

Kaynak: Abonelik

Bir Google Workspace kaynağıyla ilgili etkinlikleri almak için abonelik. Abonelikler hakkında daha fazla bilgi edinmek için Google Workspace Events API'ye genel bakış başlıklı makaleyi inceleyin.

JSON gösterimi
{
  "name": string,
  "uid": string,
  "targetResource": string,
  "eventTypes": [
    string
  ],
  "payloadOptions": {
    object (PayloadOptions)
  },
  "notificationEndpoint": {
    object (NotificationEndpoint)
  },
  "state": enum (State),
  "suspensionReason": enum (ErrorType),
  "authority": string,
  "createTime": string,
  "updateTime": string,
  "reconciling": boolean,
  "etag": string,

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
}
Alanlar
name

string

Tanımlayıcı. Aboneliğin kaynak adı.

Biçim: subscriptions/{subscription}

uid

string

Yalnızca çıkış. Abonelik için sistem tarafından atanan benzersiz tanımlayıcı.

targetResource

string

Zorunlu. Değişmez. Etkinlikler için izlenen Google Workspace kaynağı. Tam kaynak adı olarak biçimlendirilir. Hedef kaynaklar ve destekledikleri etkinlikler hakkında bilgi edinmek için Desteklenen Google Workspace etkinlikleri başlıklı makaleyi inceleyin.

Kullanıcılar, uygulamanıza yalnızca belirli bir hedef kaynak için bir abonelik oluşturma yetkisi verebilir. Uygulamanız aynı kullanıcı kimlik bilgileriyle başka bir abonelik oluşturmaya çalışırsa istek, ALREADY_EXISTS hatası döndürür.

eventTypes[]

string

Zorunlu. Sırasız liste. Abonelik oluşturmak için giriş. Aksi takdirde yalnızca çıkış. Hedef kaynak hakkında alınacak bir veya daha fazla etkinlik türü. CloudEvents spesifikasyonuna göre biçimlendirilir.

Desteklenen etkinlik türleri, aboneliğinizin hedef kaynağına bağlıdır. Ayrıntılar için Desteklenen Google Workspace etkinlikleri bölümüne bakın.

Varsayılan olarak, aboneliğinizin yaşam döngüsü ile ilgili etkinlikler de alırsınız. Bu alan için yaşam döngüsü etkinlikleri belirtmeniz gerekmez.

Hedef kaynak için mevcut olmayan bir etkinlik türü belirtirseniz istek bir HTTP 400 Bad Request durum kodu döndürür.

payloadOptions

object (PayloadOptions)

İsteğe bağlı. Etkinlik yüküne hangi verilerin dahil edileceğiyle ilgili seçenekler. Yalnızca Google Chat etkinlikleri için desteklenir.

notificationEndpoint

object (NotificationEndpoint)

Zorunlu. Değişmez. Aboneliğin, Pub/Sub konusu gibi etkinlikleri yayınladığı uç nokta.

state

enum (State)

Yalnızca çıkış. Aboneliğin durumu. Aboneliğin etkinlikleri alıp alamayacağını ve bunları bildirim uç noktasına gönderip gönderemeyeceğini belirler.

suspensionReason

enum (ErrorType)

Yalnızca çıkış. Aboneliği askıya alan hata.

Aboneliği yeniden etkinleştirmek için hatayı giderin ve subscriptions.reactivate yöntemini çağırın.

authority

string

Yalnızca çıkış. Aboneliğin oluşturulmasına yetki veren kullanıcı.

Biçim: users/{user}

Google Workspace kullanıcıları için {user} değeri, Directory API'deki user.id alanıdır.

createTime

string (Timestamp format)

Yalnızca çıkış. Aboneliğin oluşturulduğu zaman.

updateTime

string (Timestamp format)

Yalnızca çıkış. Aboneliğin son güncellenme tarihi.

reconciling

boolean

Yalnızca çıkış. Değer true ise abonelik güncellenmektedir.

etag

string

İsteğe bağlı. Bu sağlama toplamı, sunucu tarafından diğer alanların değerine göre hesaplanır ve devam etmeden önce istemcinin güncel bir değere sahip olmasını sağlamak için güncelleme isteklerinde gönderilebilir.

Birlik alanı expiration. Aboneliğin süresinin dolacağı zaman.

Maksimum geçerlilik bitiş süresi, aboneliğinizin etkinlik yükü verilerinde kaynak verileri içerip içermediğine (PayloadOptions alanında belirtilir) bağlıdır:

  • Yük verileri kaynak verilerini atlıyorsa 7 güne kadar.
  • Yük verileri kaynak verileri içeriyorsa 4 saate kadar. Google Workspace kuruluşunuz alan genelinde yetkilendirme yoluyla kaynağa erişim izni veriyorsa aboneliğin geçerlilik bitiş süresini 24 saate kadar uzatabilirsiniz.

Abonelik süresi dolduktan sonra otomatik olarak silinir. Aboneliğin süresi dolmadan 12 saat ve bir saat önce notification_endpoint yaşam döngüsü etkinlikleri alırsınız. Ayrıntılı bilgi için Yaşam döngüsü etkinliklerini alma ve yanıtlama başlıklı makaleyi inceleyin.

Aboneliğin süresinin dolmasını önlemek için UpdateSubscription yöntemini kullanarak süre son tarihini uzatabilirsiniz. Ayrıntılar için Aboneliği güncelleme veya yenileme başlıklı makaleyi inceleyin. expiration şunlardan yalnızca biri olabilir:

expireTime

string (Timestamp format)

Boş olmayan varsayılan değer. Aboneliğin sona erdiği zamanı gösteren UTC zaman damgası. Girişte ne kullanılmış olursa olsun her zaman çıkışta gösterilir.

ttl

string (Duration format)

Yalnızca giriş. Aboneliğin geçerlilik süresi (TTL) veya süresi. Belirtilmemişse veya 0 olarak ayarlanmışsa mümkün olan maksimum süreyi kullanır.

PayloadOptions

Etkinlik yüküne hangi verilerin dahil edileceğine ilişkin seçenekler. Yalnızca Google Chat etkinlikleri için desteklenir.

JSON gösterimi
{
  "includeResource": boolean,
  "fieldMask": string
}
Alanlar
includeResource

boolean

İsteğe bağlı. Etkinlik yükünün, değişen kaynakla ilgili veriler içerip içermediği. Örneğin, Google Chat mesajının oluşturulduğu bir etkinlik için yükün Message kaynağıyla ilgili verileri içerip içermediği. Yanlış ise etkinlik yükü yalnızca değiştirilen kaynağın adını içerir.

fieldMask

string (FieldMask format)

İsteğe bağlı. includeResource true olarak ayarlanmışsa etkinlik yüküne dahil edilecek alanların listesi. Alanları virgülle ayırın. Örneğin, bir Google Chat mesajının gönderenini dahil etmek ve zaman oluşturmak için message.sender,message.createTime yazın. Atlanırsa yük, kaynağın tüm alanlarını içerir.

Kaynakta bulunmayan bir alan belirtirseniz sistem bu alanı yoksayar.

NotificationEndpoint

Aboneliğin etkinlikleri yayınladığı uç nokta.

JSON gösterimi
{

  // Union field endpoint can be only one of the following:
  "pubsubTopic": string
  // End of list of possible types for union field endpoint.
}
Alanlar

Birlik alanı endpoint.

endpoint yalnızca aşağıdakilerden biri olabilir:

pubsubTopic

string

Değişmez. Abonelikle ilgili etkinlikleri alan Cloud Pub/Sub konusu.

Biçim: projects/{project}/topics/{topic}

Konuyu, bu aboneliği oluşturduğunuz Google Cloud projesinde oluşturmanız gerekir.

Konu etkinlikler aldığında etkinlikler Cloud Pub/Sub mesajları olarak kodlanır. Ayrıntılar için CloudEvents için Google Cloud Pub/Sub Protokol Bağlantısı başlıklı makaleyi inceleyin.

Eyalet

Abonelik için olası durumlar.

Sıralamalar
STATE_UNSPECIFIED Varsayılan değer. Bu değer kullanılmamaktadır.
ACTIVE Abonelik etkindir ve bildirim uç noktasına etkinlik alıp gönderebilir.
SUSPENDED Abonelik, bir hata nedeniyle etkinlik alamıyor. Hatayı tanımlamak için suspensionReason alanına bakın.
DELETED Abonelik silinir.

ErrorType

Bir abonelikle ilgili olası hatalar.

Sıralamalar
ERROR_TYPE_UNSPECIFIED Varsayılan değer. Bu değer kullanılmamaktadır.
USER_SCOPE_REVOKED Yetki veren kullanıcı, bir veya daha fazla OAuth kapsamının iznini iptal etti. Google Workspace için yetkilendirme hakkında daha fazla bilgi edinmek istiyorsanız OAuth kullanıcı rızası ekranını yapılandırma başlıklı makaleyi inceleyin.
RESOURCE_DELETED Aboneliğin hedef kaynağı artık mevcut değil.
USER_AUTHORIZATION_FAILURE Aboneliğin oluşturulmasına yetki veren kullanıcı artık aboneliğin hedef kaynağına erişemez.
ENDPOINT_PERMISSION_DENIED Google Workspace uygulaması, etkinlikleri aboneliğinizin bildirim uç noktasına göndermek için erişime sahip değil.
ENDPOINT_NOT_FOUND Aboneliğin bildirim uç noktası mevcut değil veya uç nokta, aboneliği oluşturduğunuz Google Cloud projesinde bulunamıyor.
ENDPOINT_RESOURCE_EXHAUSTED Aboneliğin bildirim uç noktası, kota yetersizliği veya sıklık sınırına ulaşılması nedeniyle etkinlikleri alamadı.
OTHER Tanımlanamayan bir hata oluştu.

Yöntemler

create

Google Workspace aboneliği oluşturur.

delete

Bir Google Workspace aboneliğini siler.

get

Google Workspace aboneliğiyle ilgili ayrıntıları alır.

list

Google Workspace aboneliklerini listeler.

patch

Google Workspace aboneliğini günceller veya yeniler.

reactivate

Askıya alınmış bir Google Workspace aboneliğini yeniden etkinleştirir.