Wyświetlasz dokumentację Apigee Edge.
Zapoznaj się z dokumentacją Apigee X. Informacje
Ta sekcja zawiera informacje o tym, jak za pomocą interfejsu API kupić opublikowany plan stawek oraz w razie potrzeby wygasić lub anulować zakupiony abonament.
Kupowanie opublikowanego planu cenowego za pomocą interfejsu API
Po opublikowaniu planu stawek deweloper lub firma może go kupić (albo „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 za konfigurację podczas zakupu abonamentu, ustaw parametr zapytania waivefees
na true
. Ten parametr jest przydatny podczas migracji deweloperów do generowania przychodu, jak opisano w artykule Migrating developers to monetization (w języku angielskim).
W tabeli poniżej znajdziesz podsumowanie właściwości konfiguracji, 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 abonamentu. Przykład: 2017-03-24. |
Nie dotyczy | Tak |
endDate |
Data zakończenia obowiązywania planu cenowego. Na przykład: 2017-09-24. Plan stawek będzie obowiązywać do końca dnia wskazanego w dacie. Jeśli chcesz, aby ważność planu cenowego wygasła np. 1 grudnia 2017 r., ustaw wartość parametru endDate na 2017-11-30. W tym przypadku abonament wygaśnie 30 listopada 2017 r. Wszystkie prośby 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 procentu wartości docelowej, np. 90%, 100% lub 150%. Po osiągnięciu liczby docelowej dodatkowe transakcje nie są blokowane. Ustaw tę wartość na dodatnią liczbę całkowitą lub 0, aby wyłączyć powiadomienia dla dewelopera aplikacji. |
0 |
Nie |
ratePlan |
Właściwość Identyfikator abonamentu jest inny niż wyświetlana nazwa. Aby wyświetlić szczegóły abonamentu, w tym jego identyfikator, zapoznaj się z artykułem Eksplorowanie strony abonamentów. |
Nie dotyczy | Tak |
suppressWarning |
Flaga określająca, czy chcesz wyeliminować błąd, jeśli deweloper próbuje kupić abonament, który pokrywa się z innym kupionym abonamentem. Wartość może być jedną z tych:
|
Nie dotyczy | Nie |
waveTerminationCharge |
Flaga określająca, czy opłaty za rozwiązanie są zwolnione, gdy aktywny abonament zostanie zakończony w ramach aktywacji nowego abonamentu. Wartość może być jedną z tych:
|
Nie dotyczy | Nie |
Na przykład to żądanie kupuje abonament 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 przypadku konfliktu wystąpi błąd. Jeśli na przykład deweloper spróbuje kupić abonament, który pokrywa się z innym kupionym abonamentem, wystąpi błąd. Umożliwia to aplikacji, która udostępnia interfejs do generowania przychodu, przechwycenie błędu i wyświetlenie deweloperowi produktów, które się ze sobą wykluczają, w celu potwierdzenia (w odpowiednich przypadkach). Jeśli opcja suppressWarning
jest ustawiona na true
, zarabianie kończy się w przypadku wszystkich zakupionych przez dewelopera abonamentów pakietów interfejsu API, które zawierają usługi wchodzące w sprzeczność. Następnie kupuje nowy pakiet interfejsu API dla dewelopera.
W tym żądaniu kupowany jest plan z regulowaną częstotliwością powiadomień, a docelowa liczba transakcji jest ustawiana 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 }'
W każdym z tych przykładów, jeśli zwrócony zostanie ten komunikat o błędzie:
Developer legal name not specified.
Następnie musisz ustawić atrybuty zarabiania MINT_DEVELOPER_ADDRESS
i MINT_DEVELOPER_LEGAL_NAME
, a następnie powtórzyć wywołanie interfejsu API.
Wygaśnięcie abonamentu zakupionego przez dewelopera za pomocą interfejsu API
Aby wygasić (lub anulować) abonament zakupiony przez dewelopera, zaktualizuj szczegóły zakupionego abonamentu i wskaż właściwość endDate
w ciele żądania w zaproszeniu PUT do zasobu /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}
.
Plan stawek będzie obowiązywać do końca dnia podanego w dacie zakończenia. Jeśli na przykład chcesz wygasnąć 1 grudnia 2017 r., ustaw wartość endDate na 2017-11-30. W tym przypadku abonament wygaśnie 30 listopada 2017 r. Wszystkie prośby z 1 grudnia 2017 r. zostaną zablokowane.
Gdy kupisz opublikowany plan stawek, wartość {developer_rateplan_id}
jest zwracana w odpowiedzi.
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 stawek dla deweloperów, wysyłając żądanie GET do usługi /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 stawek zakupionych przez dewelopera.
Ta prośba zmienia datę końcową na 1 grudnia 2017 roku. Oznacza to, że abonament wygaśnie 30 listopada 2017 r. Wszystkie prośby 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 }'