Webhook kullanarak bildirim ayarlama

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Webhook nedir?

Webhook, bir etkinlik tarafından tetiklenen bir HTTP geri çağırma işleyicisini tanımlar. Şunları yapabilirsiniz: webhook'lar oluşturup bunları etkinlik bildirimlerini işleyecek şekilde yapılandırın. para kazanma bildirim şablonları için bildirim şablonlarına gidin.

Webhook kullanarak bildirim ayarlamak için Edge Management'ı kullanarak aşağıdaki adımları tamamlayın UI veya Management and Monetization API:

  1. Bildirim etkinlikleri için geri çağırma işleyicilerini tanımlayan webhook'ları Kullanıcı arayüzü veya API.
  2. Geri arama işleyiciyi ayarlayın.
  3. Ayarlanabilir bir ücret planı için bildirimi ayarlamak üzere şurayı kullanın: Kullanıcı arayüzü veya API.

Webhook'ları yönetme

Bildirim etkinlikleri için geri çağırma işleyicileri tanımlayan webhook'ları Kullanıcı arayüzü veya API.

Kullanıcı arayüzünü kullanarak webhook'ları yönetme

Aşağıdaki bölümlerde açıklandığı gibi, kullanıcı arayüzünü kullanarak bildirim etkinlikleri için geri arama işleyicileri tanımlayan webhook'ları ekleyin ve yönetin.

Webhook'lar sayfasını keşfetme

Aşağıda açıklandığı şekilde Webhook'lar sayfasına erişin.

Edge

Edge kullanıcı arayüzünü kullanarak Webhook'lar sayfasına erişmek için:

  1. apigee.com/edge adresinde oturum açın.
  2. Yayınla > Para kazanma > Webhook'lar'ı tıklayın.

Webhook'lar sayfası görüntülenir.

Şekilde vurgulandığı gibi Webhook'lar sayfası şunları yapmanıza olanak tanır:

Klasik Edge (Private Cloud)

Klasik Edge kullanıcı arayüzünü kullanarak Webhook'lar sayfasına erişmek için:

  1. ms-ip olan http://ms-ip:9000 uygulamasında oturum açın Yönetim Sunucusu düğümünün IP adresi veya DNS adı.
  2. Yönetici > Webhook'lar.

Webhook'lar sayfası görüntülenir.

Webhook'lar sayfası, şunları yapmanıza olanak tanır:

Kullanıcı arayüzünü kullanarak webhook ekleme

Kullanıcı arayüzünü kullanarak webhook eklemek için:

  1. Webhook'lar sayfasına erişin.
  2. + Webhook'u tıklayın.
  3. Aşağıdaki bilgileri girin (tüm alanların doldurulması zorunludur).
    Alan Açıklama
    Ad Webhook'un adı.
    Url Etkinlik bildirimi şu olduğunda çağrılacak geri çağırma işleyicinin URL'si: tetiklendi. Geri arama işleyiciyi ayarlama başlıklı makaleyi inceleyin.
  4. Kaydet'i tıklayın.

Webhook listeye eklenir ve varsayılan olarak etkinleştirilir.

Kullanıcı arayüzünü kullanarak webhook'u düzenleme

Kullanıcı arayüzünü kullanarak bir webhook'u düzenlemek için:

  1. Webhook'lar sayfasına erişin.
  2. İmlecinizi düzenlemek istediğiniz webhook'un üzerine getirin ve işlemler menüsünde simgesini tıklayın.
  3. Webhook alanlarını gerektiği şekilde düzenleyin.
  4. Webhook'u Güncelle'yi tıklayın.

Kullanıcı arayüzünü kullanarak webhook'u etkinleştirme veya devre dışı bırakma

Kullanıcı arayüzünü kullanarak bir webhook'u etkinleştirmek veya devre dışı bırakmak için:

  1. Webhook'lar sayfasına erişin.
  2. İmlecinizi webhook'un üzerine getirin ve durum anahtarını etkinleştirerek veya devre dışı bırakın.

Kullanıcı arayüzünü kullanarak webhook silme

Bir webhook'u kullanıcı arayüzünü kullanarak silmek için:

  1. Webhook'lar sayfasına erişin.
  2. İmleci, silmek istediğiniz webhook'un üzerine getirin ve 'i tıklayın.

Webhook silindi ve listeden kaldırıldı.

API kullanarak webhook'ları yönetme

API'yi kullanarak webhook'ları aşağıdaki bölümlerde açıklandığı şekilde ekleyip yönetin.

API

/mint/organizations/{org_name}/webhooks adresine GET isteği göndererek tüm webhook'ları görüntüleyin. Örneğin:

curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks" \
  -H "Content-Type: application/json " \
  -u email:password

Aşağıda, döndürülen yanıtla ilgili bir örnek yer almaktadır:

{
  "totalRecords": 2,
  "webhooks": [
    {
      "created": 1460162656342,
      "enabled": false,
      "id": "21844a37-d26d-476c-93ed-38f3a4b24691",
      "name": "webhook1",
      "postUrl": "http://mycompany.com/callbackhandler1",
      "updated": 1460162656342,
      "updatedBy": "joe@example.com"
    },
        {
      "created": 1460138724352,
      "createdBy": "joe@example.com",
      "enabled": true,
      "id": "a39ca777-1861-49cf-a397-c9e92ab3c09f",
      "name": "webhook2",
      "postUrl": "http://mycompany.com/callbackhandler2",
      "updated": 1460138724352,
      "updatedBy": "joe@example.com"
    }

  ]
}

Webhook kullanarak API

Şuna bir GET isteği göndererek tek bir webhook'u görüntüleyin: /mint/organizations/{org_name}/webhooks/{webhook_id}

Örneğin:

curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/21844a37-d26d-476c-93ed-38f3a4b24691" \
  -H "Content-Type: application/json " \
  -u email:password

Aşağıda yanıtın bir örneği verilmiştir:

{
   "created": 1460162656342,
   "enabled": false,
   "id": "21844a37-d26d-476c-93ed-38f3a4b24691",
   "name": "webhook1",
   "postUrl": "http://mycompany.com/callbackhandler1",
   "updated": 1460162656342,
   "updatedBy": "joe@example.com"
 }

API

/mint/organizations/{org_name}/webhooks öğesine POST isteği göndererek webhook ekleyin. Webhook'un adını ve çağrılacak geri çağırma işleyicinin URL'sini iletmeniz gerekir Etkinlik bildirimi tetiklendiğinde.

Örneğin, aşağıdaki kod webhook3 adında bir webhook oluşturur ve Webhook'a callbackhandler3:

curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks"
  -H "Content-Type: application/json "
  -d '{
    "name": "webhook3",
    "postURL": "http://mycompany.com/callbackhandler3"
    }' \
    -u email:password

Aşağıda yanıtın bir örneği verilmiştir:

{
  "created": 1460385534555,
  "createdBy": "joe@example.com",
  "enabled": false,
  "id": "0a07eb1f-f485-4539-8beb-01be449699b3",
  "name": "webhook3",
  "orgId": "myorg",
  "postUrl": "http://mycompany.com/callbackhandler3",
  "updated": 1460385534555,
  "updatedBy": "joe@example.com"
}

API kullanarak webhook düzenleme

Webhook'u düzenlemek için PUT isteği /mint/organizations/{org_name}/webhooks/{webhook_id} Güncellemeleri isteğinde bulunabilirsiniz.

Örneğin, aşağıdaki komut dosyasıyla ilişkili geri çağırma işleyiciyi günceller: webhook1:

curl -X PUT "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3" \
  -H "Content-Type: application/json " \
  -d '{
    "postURL": "http://mycompany.com/callbackhandler4"
  }' \
  -u email:password

Aşağıda yanıtın bir örneği verilmiştir:

{
  "created": 1460385534555,
  "enabled": false,
  "id": "0a07eb1f-f485-4539-8beb-01be449699b3",
  "name": "webhook3",
  "orgId": "myorg",
  "postUrl": "http://mycompany.com/callbackhandler4",
  "updated": 1460385534555,
  "updatedBy": "joe@example.com"
}

API kullanarak webhook'u etkinleştirme veya devre dışı bırakma

Şuna bir POST isteği göndererek webhook'u etkinleştirin veya devre dışı bırakın: /mint/organizations/{org_name}/webhooks/{webhook_id}, bir webhook'u güncellerken yaptığınız gibi, ve istek gövdesindeki etkin özelliği sırasıyla doğru veya yanlış değerine ayarlayın. Webhook'u devre dışı bırakırsanız aşağıdaki durumlarda bir etkinlik olduğunda gösterilir.

Örneğin, aşağıdakiler webhook3 özelliğini etkinleştirir:

curl -X POST "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/0a07eb1f-f485-4539-8beb-01be449699b3" \
  -H "Content-Type: application/json " \
  -d '{
    "enabled": "true"
  }' \
  -u email:password

Aşağıda yanıtın bir örneği verilmiştir:

{
  "created": 1460385534555,
  "enabled": true,
  "id": "0a07eb1f-f485-4539-8beb-01be449699b3",
  "name": "webhook3",
  "orgId": "myorg",
  "postUrl": "http://mycompany.com/callbackhandler4",
  "updated": 1460385534555,
  "updatedBy": "joe@example.com"
}

Webhook kullanarak API

Webhook'u silmek için şuna DELETE isteği gönderin: /mint/organizations/{org_name}/webhooks/{webhook_id}

Şurada işlemler varsa webhook'un silinmesinin zorunlu kılınıp kılınmayacağını belirtmek için: ilerleme durumunu görmek için forceDelete sorgu parametresini true veya false. forceDelete sorgu parametresi etkinleştirildi (true) varsayılan olarak.

Örneğin, aşağıdaki webhook3 silinir:

curl -X DELETE "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks/21844a37-d26d-476c-93ed-38f3a4b24691" \
  -H "Content-Type: application/json " \
  -u email:password

Geri çağırma işleyiciyi ayarlama

Aşağıda, geri çağırma işleyiciye gönderilen JSON isteğinin biçimi gösterilmektedir Bir etkinlik bildirimi tetiklendiğinde webhook tarafından tanımlanır. Geri çağırma işleminin işleyicisi isteği uygun şekilde işler.

{
        "orgName": "{org_id}",
        "developerEmail": "{dev_email}",
        "developerFirstName": "{first_name}",
        "developerLastName": "{last_name}",
        "companyName": "{company_name}",
        "applicationName": "{app_name}",
        "packageName": "{api_package_name}",
        "packageId": "{api_package_id}",
        "ratePlanId": "{rateplan_id}",
        "ratePlanName": "{rateplan_name}",
        "ratePlanType": "{rateplan_type}",
        "developerRatePlanQuotaTarget": {quota_target},
        "quotaPercentUsed": {percentage_quota_used},
        "ratePlanStartDate": {rateplan_startdate}, 
        "ratePlanEndDate": {rateplan_enddate},
        "nextBillingCycleStartDate": {next_billing_cycle_startdate},
        "products": ["{api_product_name}","{api_product_name}"],
        "developerCustomAttributes": [],
        "triggerTime": {trigger_time},
        "triggerReason": "{trigger_reason}",
        "developerQuotaResetDate": "{devquota_resetdate}"
}

Ayarlanabilir ücret planı için bildirimler ayarlama

Ayarlanabilir ücret planı için webhook'lardan yararlanarak bildirimleri ayarlayın: Kullanıcı arayüzü veya API.

Kullanıcı arayüzünü kullanarak ayarlanabilir ücret planı için bildirimleri ayarlama

Aşağıda açıklandığı gibi, kullanıcı arayüzünü kullanarak düzenlenebilir bir ücret planı için webhook'ları kullanarak bildirimleri ayarlayın.

Ayarlanabilir ücret planı için Bildirimler iletişim kutusuna erişme

Aşağıda açıklandığı şekilde, ayarlanabilir ücret planı için Bildirimler iletişim kutusuna erişin.

Edge

Edge kullanıcı arayüzünü kullanarak bildirimler iletişim kutusuna erişmek için:

  1. ayarlanabilir bildirim planıyla ilgili ayrıntılara göz atın.
  2. Ücret Planları sayfasına erişmek için Yayınla > Para kazanma > Ücret Planları'nı tıklayın.
  3. İşlemleri görmek için imlecinizi yayınlanan Ayarlanabilir bildirim oranı planının üzerine getirin.
  4. +Bildir'i tıklayın.

    Bildirimler iletişim kutusu görüntülenir.

    Not: +Bildir işleminin gösterilebilmesi için ücret planının yayınlanması gerekir.

Klasik Edge (Private Cloud)

Bildirimler sayfasına erişmek için:

  1. Şurada açıklandığı gibi düzenlenebilir bir bildirim ücreti planı oluşturun: ayarlanabilir bildirim planıyla ilgili ayrıntılara göz atın.
  2. Yayınla > Paketler'i tıklayın.
  3. Ücret planı için İşlemler sütununda +Bildir'i tıklayın.

    Bildirimler iletişim kutusu görüntülenir.

Kullanıcı arayüzünü kullanarak ayarlanabilir ücret planı için bildirimler ekleme

Ayarlanabilir bir ücret planı için bildirim eklemek üzere kullanıcı arayüzünde:

  1. Bildirimler iletişim kutusuna erişin.
  2. Bildirim Aralıkları altında bildirim koşulunu şu şekilde ayarlayın: Belirli bir hedef için belirli bir işlem sayısı bildiriminin tetikleneceğini unutmayın. Özellikle:
    • Kesin bir yüzde belirlemek için Şundan/Toplama % alanına yüzdeyi girin. To % (Alıcı %) alanını boş bırakın.
    • Bir yüzde aralığı ayarlamak için başlangıç ve bitiş yüzdesini Sırasıyla At/Başlangıç % ve % alanları ve bir artım değerini Adım % alanına girin. Bildirimler varsayılan olarak %10 içinde gönderilir artımlılık değeri.

    Notify At alanı, hedef sayısının her bir yüzdesini yansıtacak şekilde güncellenir işlemlerdir.

  3. Ek bildirim koşulları ayarlamak için +Ekle'yi tıklayıp adımı tekrarlayın. 5.
  4. Bir veya daha fazla öğe seçerek Webhook'lar altında bildirim işlemini ayarlayın webhook'ları kullanabilirsiniz.
  5. Bildirim Oluştur'u tıklayın.

Kullanıcı arayüzünü kullanarak düzenlenebilir bir ücret planı için bildirimleri düzenleme

Ayarlanabilir bir ücret planıyla ilgili bildirimleri düzenlemek için kullanıcı arayüzünde:

  1. Bildirimler iletişim kutusuna erişin.
  2. Ücret planı için İşlemler sütununda +Bildir'i tıklayın.
  3. Düzenle'yi tıklayın.
  4. Değerleri gereken şekilde değiştirin.
  5. Bildirimi Kaydet'i tıklayın.

Düzenlenebilir ücret planı bildirimlerini kullanıcı arayüzünü kullanarak silme

Bir bildirim koşulunu ve işlemi silmek için:

  1. Bildirimler iletişim kutusuna erişin.
  2. Ücret planı için İşlemler sütununda +Bildir'i tıklayın.
  3. Bildirimi Sil'i tıklayın.

Ayarlanabilir bir ücret planı için bildirimleri ayarlamak üzere API

API'yi kullanarak düzenlenebilir ücret planı için bildirim ayarlamak istiyorsanız aşağıdaki prosedürü kullanın: Yönetim bildirim koşullarını ve işlemlerini API kullanarak ve bu bölümde açıklanan özellikleri kullanarak.

Bildirim koşulunu (notificationCondition) ayarlamak için aşağıdaki özellik değerlerinden yararlanabilirsiniz. Daha fazla bilgi için Yapılandırma özelliklerini inceleyin.

Özellik Değer
RATEPLAN Ayarlanabilir bildirim ücret planının kimliği.
PUBLISHED Ayarlanabilir bildirim ücreti planının olması gerektiğini belirtmek için TRUE. yayınlanmış.
UsageTarget Bildirim almak istediğiniz hedef işlem sayısının yüzdesi tetiklenemez.

Bu özellik, yaklaşan veya erişim aşamasında olan geliştiricileri bilgilendirmenizi sağlar. düzenlenebilir bildirim ücret listesi planı için hedef işlem sayısı satın almaları söz konusu olabilir. Örneğin, bir geliştirici ayarlanabilir bildirim satın aldıysa ve geliştirici için hedef işlem sayısı 1.000 olarak ayarlanmış olsa bile 800 işleme (hedef dönüşüm sayısının% 80'i) ulaştıklarında işlem sayısı), 1.000 işlem (%100) veya 1.500 işlem (%150).

  • Kesin bir yüzde belirlemek için %= n girin. Örneğin, %= 80, etkinliğinizin hedef sayısının yüzdesi işlemleri %80'e ulaşıyor.
  • Yüzde aralığı ayarlamak için başlangıç ve bitiş yüzdelerini ve şu şekilde artırılacak: %= start to end by n. Örneğin, örneğin, %= 80 to 100 by 10 değeri şu olduğunda bildirim gönderir: hedef işlem sayısının yüzdesi %80, %90 ve %100'e ulaşır.

Bildirim işlemini ayarlamak için actions altında aşağıdaki değerleri ayarlayın. Örneğin, Daha fazla bilgi için Yapılandırma özelliklerini inceleyin.

Özellik Değer
actionAttribute Webhook'u tetiklemek için WEBHOOK.
value API'yi kullanarak webhook oluşturma başlıklı önceki bölümde tanımladığınız webhook'un kimliği.

Aşağıda, aşağıdakileri tetikleyen bir bildirim koşulunun nasıl oluşturulacağına dair bir örnek verilmiştir: webhook, hedef işlem sayısının yüzdesi %80, %90, %100, %110 ve %120'si.

{
    "notificationCondition": [
      {
        "attribute": "RATEPLAN",
        "value": "123456"
      },
      {
        "attribute": "PUBLISHED",
        "value": "TRUE"
      },
      {
        "attribute": "UsageTarget",
        "value": "%= 80 to 120 by 10"
      }
    } 
    ],
   "actions": [{
          "actionAttribute": "WEBHOOK",
          "value": "b0d77596-142e-4606-ae2d-f55c3c6bfebe",
        }]
  }

Bir bildirim koşulunu ve işlemini görüntüleme, güncelleme ve silme hakkında bilgi edinmek için bkz:

Webhook yanıt kodları

Aşağıda webhook yanıt kodları ve bunların web sunucusu tarafından bahsedeceğim.

Yanıt Kodu Açıklama
2xx Başarılı
5xx

İstek başarısız oldu. Sistem, isteği 5 dakika içinde en fazla üç kez yeniden dener sağlar.

Not: Webhook istekleri için okuma ve bağlantı zaman aşımları Her biri 3 saniye. Bu durum, isteklerin başarısız olmasına yol açabilir.

Other response İstek başarısız oldu. Sistem isteği yeniden denemez.