Wyświetlasz dokumentację Apigee Edge.
Przejdź do
dokumentacji Apigee X. info
W tej sekcji opisujemy, jak za pomocą interfejsu API kupić opublikowany plan taryfowy oraz w razie potrzeby anulować lub wycofać zakupiony plan taryfowy.
Kupowanie opublikowanego planu taryfowego za pomocą interfejsu API
Gdy plan taryfowy zostanie opublikowany, deweloper lub firma może go kupić (lub "zaakceptować"), wysyłając żądanie POST do /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans, gdzie {org_name} to nazwa organizacji, a {developer_or_company_id} to identyfikator dewelopera lub firmy.
Aby zrezygnować z opłat konfiguracyjnych podczas kupowania planu taryfowego, ustaw parametr zapytania waivefees na true. Ta flaga jest przydatna podczas przenoszenia deweloperów do zarabiania, jak
opisano w Przenoszenie deweloperów do
zarabiania.
W tabeli poniżej znajdziesz podsumowanie właściwości konfiguracyjnych, które możesz określić w treści żądania, ich wartości domyślne oraz informacje o tym, czy są wymagane.
| Nazwa | Opis | Domyślny | Wymagany? |
|---|---|---|---|
startDate |
Data rozpoczęcia planu taryfowego. Na przykład: 2017-03-24. |
Nie dotyczy | Tak |
endDate |
Data zakończenia planu taryfowego. Na przykład: 2017-09-24. Plan taryfowy będzie obowiązywać do końca dnia w podanej dacie. Jeśli na przykład chcesz, aby plan taryfowy wygasł 1 grudnia 2017 r., ustaw wartość endDate na 2017-11-30. W takim przypadku plan taryfowy wygaśnie o północy 30 listopada 2017 r., a wszystkie żądania z 1 grudnia 2017 r. zostaną zablokowane. |
Nie dotyczy | Nie |
developer |
Właściwość |
Nie dotyczy | Tak |
quotaTarget |
Docelowa liczba transakcji dozwolonych dla dewelopera aplikacji. Możesz skonfigurować, czy i kiedy mają być wysyłane powiadomienia na podstawie tego, jaki procent docelowej liczby został osiągnięty, np. 90%, 100% lub 150%. Po osiągnięciu docelowej liczby dodatkowe transakcje nie są blokowane. Aby wyłączyć powiadomienia dla dewelopera aplikacji, ustaw tę wartość na dodatnią liczbę całkowitą lub 0. |
0 |
Nie |
ratePlan |
Właściwość Identyfikator planu taryfowego różni się od nazwy wyświetlanej. Aby wyświetlić szczegóły planu taryfowego w tym jego identyfikator, zobacz Przeglądanie strony planów taryfowych. |
Nie dotyczy | Tak |
suppressWarning |
Flaga określająca, czy należy pominąć błąd, jeśli deweloper próbuje kupić plan taryfowy, który pokrywa się z innym zakupionym planem taryfowym. Wartość może być jedną z tych:
|
Nie dotyczy | Nie |
waveTerminationCharge |
Flaga określająca, czy opłaty za rozwiązanie umowy są pomijane, gdy aktywny plan taryfowy jest rozwiązywany w ramach aktywacji nowego planu taryfowego. Wartość może być jedną z tych:
|
Nie dotyczy | Nie |
Na przykład to żądanie kupuje plan taryfowy location_&_messaging
dla określonego dewelopera:
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"startDate":"2017-08-30",
"ratePlan":{
"id":"location_&_messaging"
},
"suppressWarning":false
}'
W tym przykładzie właściwość suppressWarning jest ustawiona na false. W
takim przypadku w razie konfliktu zostanie zgłoszony błąd. Jeśli na przykład deweloper
spróbuje kupić plan taryfowy, który pokrywa się z innym zakupionym planem taryfowym, zostanie zgłoszony błąd. Umożliwia to
aplikacji, która udostępnia interfejs użytkownika do zarabiania, przechwycenie błędu i
wyświetlenie deweloperowi sprzecznych produktów w celu potwierdzenia (w razie potrzeby). Jeśli
suppressWarning jest ustawiona na true, zarabianie kończy wszystkie zakupione
plany taryfowe, które deweloper ma w pakietach interfejsów API zawierających sprzeczne produkty. Następnie
kupuje dla dewelopera nowy pakiet interfejsów API.
To żądanie kupuje plan taryfowy z regulowanymi powiadomieniami i ustawia docelową liczbę transakcji na 4000.
curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
-X POST \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"developer":{
"id":"5cTWgdUvdr6JW3xU"
},
"ratePlan":{
"id":"adjustable-notification-plan"
},
"startDate": "2017-03-24",
"quotaTarget": 4000,
"suppressWarning":false
}'
Jeśli w którymkolwiek z powyższych przykładów zostanie zwrócony ten komunikat o błędzie:
Developer legal name not specified.
Musisz ustawić atrybuty zarabiania MINT_DEVELOPER_ADDRESS i
MINT_DEVELOPER_LEGAL_NAME, a następnie powtórzyć wywołanie interfejsu API.
Wycofywanie planu taryfowego kupionego przez dewelopera za pomocą interfejsu API
Aby wycofać (lub anulować) plan taryfowy kupiony przez dewelopera, zaktualizuj szczegóły zakupionego
planu taryfowego i określ właściwość endDate w treści żądania PUT do zasobu /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}.
Plan taryfowy będzie obowiązywać do końca dnia w podanej dacie zakończenia. Jeśli na przykład chcesz, aby plan taryfowy wygasł 1 grudnia 2017 r., powinieneś ustawić wartość endDate na 2017-11-30. W takim przypadku plan taryfowy wygaśnie o północy 30 listopada 2017 r., a wszystkie żądania z 1 grudnia 2017 r. zostaną zablokowane.
W odpowiedzi na zakup
opublikowanego planu taryfowego zwracany jest identyfikator {developer_rateplan_id}.
Na przykład:
{
"created": "2017-03-31 18:59:54",
"developer": {
...
},
"id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
"quotaTarget": 3000,
"ratePlan": {
...
},
"startDate": "2017-03-31 00:00:00",
"updated": "2017-03-31 18:59:54",
"waiveTerminationCharge": false
}
Możesz też uzyskać {developer-rateplan-id} dla
planu taryfowego dewelopera, wysyłając żądanie GET
do /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans,
gdzie {developer_id} to adres e-mail dewelopera. Więcej
informacji znajdziesz w artykule Wyświetlanie
wszystkich planów taryfowych kupionych przez dewelopera.
To żądanie aktualizuje datę zakończenia na 1 grudnia 2017 r. Oznacza to, że plan taryfowy wygaśnie o północy 30 listopada 2017 r., a wszystkie żądania z 1 grudnia 2017 r. zostaną zablokowane.
curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
-X PUT \
-H "Content-Type:application/json" \
-u email:password \
-d '{
"id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
"developer":{
"id":"dev@mycompany.com"
},
"ratePlan":{
"id":"p1_adjustable-notification-plan"
},
"startDate": "2017-04-15 00:00:00",
"endDate": "2017-11-30",
"quotaTarget": 3000,
"suppressWarning":false
}'