Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. info
Co to jest webhook?
Webhook definiuje wywołanie zwrotne HTTP, które jest wywoływane przez zdarzenie. Możesz tworzyć webhooki i konfigurować je do obsługi powiadomień o wystąpieniu zdarzeń zamiast korzystać z szablonów powiadomień o zarabianiu, jak opisano w artykule Konfigurowanie powiadomień za pomocą szablonów powiadomień.
Aby skonfigurować powiadomienia za pomocą webhooków, wykonaj te czynności, korzystając z interfejsu zarządzania Edge lub interfejsu API do zarządzania i zarabiania:
- Dodaj webhooki, które definiują funkcje obsługi wywołania zwrotnego dla zdarzeń powiadomienia za pomocą interfejsu użytkownika lub interfejsu API.
- Skonfiguruj moduł obsługi wywołania zwrotnego.
- Skonfiguruj powiadomienie dla elastycznego planu cenowego, korzystając z interfejsu użytkownika lub interfejsu API.
Zarządzanie webhookami
Dodawaj webhooki i zarządzaj nimi, aby definiować funkcje wywołania zwrotnego dla zdarzeń powiadomienia za pomocą interfejsu użytkownika lub interfejsu API.
Zarządzanie webhookami za pomocą interfejsu użytkownika
Dodawaj webhooki i zarządzaj nimi, aby definiować moduły obsługi wywołania zwrotnego dla zdarzeń powiadomienia, korzystając z interfejsu użytkownika w sposób opisany w następnych sekcjach.
- Poznawanie strony Webhooks
- Dodawanie webhooka za pomocą interfejsu użytkownika
- Edytowanie webhooka za pomocą interfejsu użytkownika
- Usuwanie webhooka za pomocą interfejsu użytkownika
Poznawanie strony Webhooks
Otwórz stronę webhooki zgodnie z opisem poniżej.
Edge
Aby otworzyć stronę webhooków za pomocą interfejsu Edge:
- Zaloguj się na stronie apigee.com/edge.
- Na pasku nawigacyjnym po lewej stronie kliknij Opublikuj > Generowanie przychodu > Webhooki.
Pojawi się strona Webhooks.
Jak widać na rysunku, na stronie webhooków możesz:
- wyświetlać szczegóły istniejących webhooków.
- Dodaj webhooka.
- Włącz lub wyłącz, edytuj lub usuń webhook.
- Przeszukać listę webhooków.
Classic Edge (Private Cloud)
Aby otworzyć stronę webhooków za pomocą klasycznego interfejsu Edge:
- Zaloguj się na stronie
http://ms-ip:9000
, gdzie ms-ip to adres IP lub nazwa DNS węzła serwera zarządzania. Kliknij Administracja > Webhooki.
Pojawi się strona Webhooks.
Strona Webhooki umożliwia:
- wyświetlać szczegóły istniejących webhooków.
- Dodaj webhooka.
- Włącz lub wyłącz, edytuj lub usuń webhook.
- Przeszukuj listę webhooków.
Dodawanie webhooka za pomocą interfejsu
Aby dodać webhooka za pomocą interfejsu użytkownika:
- Otwórz stronę Webhooki.
- Kliknij + Webhook.
- Podaj te informacje (wszystkie pola są wymagane).
Pole Opis Nazwa Nazwa webhooka. URL Adres URL wywołania zwrotnego, które zostanie wywołane po aktywowaniu powiadomienia o zdarzeniu. Zobacz Konfigurowanie modułu obsługi wywołania zwrotnego. - Kliknij Zapisz.
Webhook zostanie dodany do listy i domyślnie włączony.
Edytowanie webhooka za pomocą interfejsu użytkownika
Aby edytować webhook za pomocą interfejsu:
- Otwórz stronę webhooków.
- Najedź kursorem na webhooka, który chcesz edytować, i kliknij w menu czynności.
- Zmodyfikuj pola webhooka zgodnie z wymaganiami.
- Kliknij Zaktualizuj webhook.
włączanie i wyłączanie webhooka za pomocą interfejsu użytkownika.
Aby włączyć lub wyłączyć webhooka za pomocą interfejsu użytkownika:
- Otwórz stronę Webhooki.
- Najedź kursorem na webhooka i włącz go lub wyłącz, przełączając przełącznik.
Usuwanie webhooka za pomocą interfejsu
Aby usunąć webhooka za pomocą UI:
- Otwórz stronę Webhooki.
- Najedź kursorem na webhooka, który chcesz usunąć, i kliknij .
Webhook zostanie usunięty z listy.
Zarządzanie webhookami za pomocą interfejsu API
Dodaj webhooki i zarządzaj nimi za pomocą interfejsu API w sposób opisany w sekcjach poniżej.
- Wyświetlanie wszystkich webhooków za pomocą interfejsu API
- Wyświetlanie webhooka za pomocą interfejsu API
- Dodawanie webhooka przy użyciu interfejsu API
- Edytowanie webhooka za pomocą interfejsu API
- Usuwanie webhooka za pomocą interfejsu API
Wyświetlanie wszystkich webhooków za pomocą interfejsu API
Aby wyświetlić wszystkie webhooki, wyślij żądanie GET do adresu /mint/organizations/{org_name}/webhooks
.
Na przykład:
curl -X GET "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/webhooks" \ -H "Content-Type: application/json " \ -u email:password
Poniżej podano przykład odpowiedzi:
{ "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" } ] }
Wyświetlanie webhooka za pomocą interfejsu API
Wyświetl pojedynczego webhooka, wysyłając żądanie GET do usługi /mint/organizations/{org_name}/webhooks/{webhook_id}
.
Na przykład:
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
Poniżej przedstawiamy przykład odpowiedzi:
{ "created": 1460162656342, "enabled": false, "id": "21844a37-d26d-476c-93ed-38f3a4b24691", "name": "webhook1", "postUrl": "http://mycompany.com/callbackhandler1", "updated": 1460162656342, "updatedBy": "joe@example.com" }
Dodawanie webhooka za pomocą interfejsu API
Aby dodać webhooka, wyślij żądanie POST do adresu /mint/organizations/{org_name}/webhooks
.
Musisz przekazać nazwę webhooka i adres URL wywołania zwrotnego, które zostanie wywołane po wywołaniu powiadomienia o zdarzeniu.
Poniższy przykład powoduje utworzenie webhooka o nazwie webhook3
i przypisanie do niego parametru 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
Poniżej przedstawiamy przykład odpowiedzi:
{ "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" }
Edytowanie webhooka za pomocą interfejsu API
Aby edytować webhooka, wyślij żądanie PUT do adresu /mint/organizations/{org_name}/webhooks/{webhook_id}
. Przekaż aktualizacje w treści żądania.
Na przykład ten kod aktualizuje moduł obsługi wywołania zwrotnego powiązany z elementem 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
Poniżej przedstawiamy przykład odpowiedzi:
{ "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" }
włączanie i wyłączanie webhooka za pomocą interfejsu API.
Włącz lub wyłącz webhooka, wysyłając żądanie POST do adresu /mint/organizations/{org_name}/webhooks/{webhook_id}
, tak jak podczas aktualizowania webhooka, i odpowiednio ustawiając w treści żądania atrybut enabled na wartość true lub false. Jeśli wyłączysz webhook, nie będzie on uruchamiany po wystąpieniu zdarzenia.
Na przykład: webhook3
:
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
Poniżej przedstawiamy przykład odpowiedzi:
{ "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" }
Usuwanie webhooka za pomocą interfejsu API
Aby usunąć webhooka, wyślij żądanie DELETE do adresu /mint/organizations/{org_name}/webhooks/{webhook_id}
.
Aby określić, czy chcesz wymuszać usunięcie webhooka w przypadku trwających procesów, ustaw parametr zapytania forceDelete
na true
lub false
. Parametr zapytania forceDelete
jest domyślnie włączony (true
).
Na przykład ta instrukcja usuwa webhook3
:
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
Konfigurowanie modułu obsługi wywołania zwrotnego
Poniżej przedstawiono format żądania JSON wysyłanego do wywołania zwrotnego określonego przez webhooka po wywołaniu powiadomienia o zdarzeniu. Musisz się upewnić, że moduł obsługi wywołań zwrotnych prawidłowo przetwarza żądanie.
{ "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}" }
Konfigurowanie powiadomień dla elastycznego planu cenowego
Skonfiguruj powiadomienia za pomocą webhooków w przypadku regulowanego planu cenowego, korzystając z interfejsu użytkownika lub interfejsu API.
Konfigurowanie powiadomień dla elastycznego planu cenowego za pomocą interfejsu
Aby skonfigurować powiadomienia za pomocą wywołań zwrotnych w przypadku planu cenowego z możliwością zmiany stawki, skorzystaj z interfejsu użytkownika w sposób opisany poniżej.
Otwieranie okna Powiadomienia w przypadku abonamentu z możliwością zmiany stawki
Otwórz okno Powiadomienia dla elastycznego planu cenowego, jak opisano poniżej.
Edge
Aby otworzyć okno powiadomień w interfejsie Edge:
- Utwórz i opublikuj plan stawek powiadomień z możliwością zmiany, zgodnie z opisem w artykule Określanie szczegółów planu powiadomień z możliwością zmiany.
- Aby otworzyć stronę cennika, na pasku nawigacyjnym po lewej stronie kliknij Opublikuj > Generowanie przychodu > Cennik.
- Aby wyświetlić działania, najedź kursorem na opublikowany plan częstotliwości powiadomień z możliwością dostosowania.
- Kliknij +Powiadom.
Pojawi się okno Powiadomienia.
Uwaga: aby możliwe było wyświetlenie działania +Powiadom, plan stawek musi zostać opublikowany.
Classic Edge (Private Cloud)
Aby uzyskać dostęp do strony Powiadomienia:
- Utwórz plan stawek powiadomień z możliwością zmiany, zgodnie z opisem w sekcji Określanie szczegółów planu stawek powiadomień z możliwością zmiany.
- Aby wyświetlić cenniki, wybierz Opublikuj > Pakiety.
- W kolumnie „Działania” w ramach planu cenowego kliknij +Powiadomienie.
Wyświetli się okno Powiadomienia.
Dodawanie powiadomień dotyczących planu dostosowywanych stawek za pomocą interfejsu użytkownika
Aby dodać powiadomienia dla elastycznego planu cenowego w interfejsie:
- Otwórz okno Powiadomienia.
- Ustaw warunek powiadomienia w sekcji Interwały powiadomień, podając procent docelowej liczby transakcji, po której chcesz, aby powiadomienie zostało uruchomione. Więcej szczegółów:
- Aby ustawić dokładny odsetek, wpisz go w polu W przypadku/Od %, a pole Do % pozostaw puste.
- Aby ustawić zakres procentowy, wpisz odpowiednio wartości początkową i końcową w polach W/Z % i Do % oraz wartość przyrostu w polu Krok %. Domyślnie powiadomienia są wysyłane co 10% w określonym zakresie.
Pole
Notify At
jest aktualizowane, aby odzwierciedlać odsetek docelowej liczby transakcji, które wywołają zdarzenie. - Aby ustawić dodatkowe warunki powiadomienia, kliknij +Dodaj i powtórz krok 4.
- Ustaw działanie powiadomienia w sekcji Webhooki, wybierając co najmniej 1 webhooka do zarządzania obsługą wywołań zwrotnych po aktywowaniu powiadomień.
- Kliknij Utwórz powiadomienie.
Edytowanie powiadomień dotyczących planu z możliwością dostosowania za pomocą interfejsu użytkownika
Aby edytować powiadomienia dla elastycznego planu cenowego w interfejsie:
- Otwórz okno Powiadomienia.
- W kolumnie „Działania” w ramach planu cenowego kliknij +Powiadomienie.
- Kliknij Edytuj.
- W razie potrzeby zmień wartości.
- Kliknij Zapisz powiadomienie.
Usuwanie powiadomień dotyczących elastycznego planu cenowego za pomocą interfejsu
Aby usunąć warunek i działanie powiadomienia:
- Otwórz okno Powiadomienia.
- W kolumnie „Działania” w ramach planu cenowego kliknij +Powiadomienie.
- Kliknij Usuń powiadomienie.
Konfigurowanie powiadomień dla regulowanego planu cenowego za pomocą interfejsu API
Aby skonfigurować powiadomienie o regulowanym planie stawek za pomocą interfejsu API, wykonaj czynności opisane w artykule Zarządzanie akcjami i warunkami powiadomień za pomocą interfejsu API, używając atrybutów opisanych w tej sekcji.
Aby skonfigurować warunek powiadomienia (notificationCondition
), użyj poniższych wartości atrybutów. Więcej informacji znajdziesz w artykule Właściwości konfiguracji warunków powiadomień.
Atrybut | Wartość |
---|---|
RATEPLAN |
Identyfikator abonamentu z możliwością zmiany częstotliwości wysyłania powiadomień. |
PUBLISHED |
TRUE wskazuje, że plan dotyczący dostosowanych stawek powiadomień musi zostać opublikowany. |
UsageTarget |
Odsetek docelowej liczby transakcji, kiedy ma być wyzwalane powiadomienie.
Ten atrybut umożliwia powiadomienie deweloperów, gdy zbliżają się do docelowej liczby transakcji w ramach zakupionego przez nich planu karty z regulowaną częstotliwością powiadomień lub gdy ją osiągną. Jeśli na przykład deweloper kupił plan z możliwością zmiany częstotliwości wysyłania powiadomień, a docelowa liczba transakcji została ustawiona na 1000, możesz wysłać powiadomienie, gdy deweloper osiągnie 800 transakcji (80% docelowej liczby transakcji), 1000 transakcji (100% docelowej liczby transakcji) lub 1500 transakcji (150% docelowej liczby transakcji).
|
Aby skonfigurować działanie powiadomienia, w sekcji actions
ustaw te wartości. Więcej informacji znajdziesz w artykule Właściwości konfiguracji działań związanych z powiadomieniami.
Atrybut | Wartość |
---|---|
actionAttribute |
WEBHOOK , aby wywołać webhook. |
value |
Identyfikator webhooka określonego w poprzedniej sekcji – Tworzenie webhooków przy użyciu interfejsu API. |
Poniżej znajdziesz przykładowy sposób tworzenia warunku powiadomienia, który uruchamia webhook, gdy odsetek docelowej liczby transakcji osiąga 80%, 90%, 100%, 110% lub 120%.
{ "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", }] }
Informacje o wyświetlaniu, aktualizowaniu i usuwaniu warunku oraz działania związanego z powiadomieniami znajdziesz w tych artykułach:
- Wyświetlanie warunku i działania powiadomienia za pomocą interfejsu API
- Edytowanie warunku powiadomień i działania za pomocą interfejsu API
- Usuwanie warunku i działania powiadomienia za pomocą interfejsu API
Kody odpowiedzi webhooka
Poniżej znajdziesz podsumowanie kodów odpowiedzi webhooka i sposób ich interpretacji przez system.
Kod odpowiedzi | Opis |
---|---|
2xx |
Sukces |
5xx |
Żądanie nie powiodło się. System będzie powtarzać próbę do 3 razy w odstępach 5-minutowych. Uwaga: czas oczekiwania na odczyt i na połączenie w przypadku żądań webhooka wynosi 3 sekundy, co może powodować niepowodzenia żądań. |
Other response |
Żądanie nie powiodło się. System nie będzie powtarzać próby. |