Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację
Apigee X. info
W sekcjach poniżej dowiesz się, jak połączyć co najmniej jedną usługę API w jeden kontener generujący przychody, nazywany pakietem usług API.
Co to jest pakiet usług API?
Pakiet usług API to zbiór usług API, które są prezentowane deweloperom jako grupa i zwykle powiązane z co najmniej 1 planem taryfowym służącym do zarabiania. Możesz utworzyć wiele pakietów usług API i w każdym z nich umieścić co najmniej 1 usługę API. Tę samą usługę API lub te same usługi API możesz umieścić w różnych pakietach i powiązać je z różnymi (lub tymi samymi) planami taryfowymi.
Deweloperzy mogą rejestrować swoje aplikacje, aby korzystać z pakietu usług API, tylko wtedy, gdy kupią jeden z obecnie obowiązujących planów taryfowych. Pakiet usług API nie jest widoczny dla programistów, dopóki nie dodasz i nie opublikujesz (jako publicznego) planu taryfowego dla tego pakietu (z datą rozpoczęcia równą bieżącej lub przyszłej), jak opisano w sekcji Zarządzanie planami taryfowymi. Gdy dodasz i opublikujesz plan taryfowy, programiści logujący się do Twojego portalu dla programistów będą mogli wybrać pakiet usług API i plan taryfowy. Możesz też zaakceptować plan taryfowy dla dewelopera za pomocą interfejsu API zarządzania. Więcej informacji znajdziesz w artykule Kupowanie opublikowanych planów taryfowych za pomocą interfejsu API.
Po dodaniu usługi API do pakietu usług API może być konieczne skonfigurowanie punktów cenowych dla tej usługi. Musisz to zrobić tylko wtedy, gdy spełnione są wszystkie te warunki:
- Skonfigurujesz plan taryfowy z podziałem przychodów dla usługi API.
- Deweloperzy pobierają opłaty od osób trzecich za korzystanie z zasobów w usłudze API.
- Istnieje minimalne lub maksymalne ograniczenie kwoty, jaką deweloperzy mogą pobierać, i chcesz poinformować ich o tym ograniczeniu.
Ceny minimalne i maksymalne są wyświetlane w szczegółach pakietu usług API.
Przeglądanie strony Pakiety usług
Otwórz stronę Pakiety usług w sposób opisany poniżej.
Edge
Aby otworzyć stronę pakietów usług API w interfejsie Edge, w panelu nawigacji po lewej stronie kliknij Publikowanie > Zarabianie > Pakiety usług.

Jak widać na ilustracji powyżej, strona Pakiety usług umożliwia:
- wyświetlanie podsumowanych informacji o wszystkich pakietach usług, w tym nazwy pakietu i listy usług API, które zawiera;
- dodawanie pakietu usług;
- edytowanie pakietu usług;
- wyszukiwanie na liście pakietów usług w dowolnym widocznym polu.
Usługami API w pakiecie usług możesz zarządzać lub usunąć pakiet usług (jeśli nie są zdefiniowane żadne plany taryfowe) tylko za pomocą interfejsu API.
Klasyczny interfejs Edge (Private Cloud)
Aby otworzyć stronę pakietów API w klasycznym interfejsie Edge, na górnym pasku nawigacyjnym kliknij Publikowanie > Pakiety.
Strona Pakiety API umożliwia:
- wyświetlanie podsumowanych informacji o wszystkich pakietach API, w tym usług API, które zawierają, oraz powiązanych planów taryfowych;
- dodawanie pakietu API;
- edytowanie pakietu API;
- dodawanie planów taryfowych i zarządzanie nimi;
- przełączanie ustawienia dostępu do planu taryfowego (publiczny/prywatny);
- filtrowanie listy pakietów.
Usługami API w pakiecie API możesz zarządzać lub usunąć pakiet API (jeśli nie są zdefiniowane żadne plany taryfowe) tylko za pomocą interfejsu API.
Dodawanie pakietu usług
Aby dodać pakiet usług API:
- Na stronie Pakiety usług kliknij + Pakiet usług API.
- Wpisz nazwę pakietu usług API.
W polu Dodaj usługę wpisz nazwę usługi API.
Podczas wpisywania nazwy usługi API na liście rozwijanej wyświetla się lista usług API zawierających ten ciąg znaków. Kliknij nazwę usługi API, aby dodać ją do pakietu. Powtórz te czynności, aby dodać kolejne usługi API.
- Powtórz krok 3, aby dodać nazwy kolejnych usług API.
- W przypadku każdej dodawanej usługi API skonfiguruj zasady rejestrowania transakcji.
- Kliknij Zapisz pakiet usług.
Edytowanie pakietu usług
Aby edytować pakiet usług:
Na stronie Pakiety usług kliknij w wierszu pakietu usług, który chcesz edytować.
Wyświetli się panel pakietu usług.
W razie potrzeby edytuj pola pakietu usług.
Więcej informacji znajdziesz w artykule Konfigurowanie zasad rejestrowania transakcji.
- Kliknij Zaktualizuj pakiet usług.
Zarządzanie pakietami usług API za pomocą interfejsu API
W sekcjach poniżej dowiesz się, jak zarządzać pakietami usług API za pomocą interfejsu API.
Tworzenie pakietu usług API za pomocą interfejsu API
Aby utworzyć pakiet usług API, wyślij żądanie POST do adresu
/organizations/{org_name}/monetization-packages. Gdy wysyłasz żądanie, musisz:
- określić usługi API, które mają być uwzględnione w pakiecie usług API;
- podać nazwę i opis pakietu usług API;
- ustawić wskaźnik stanu pakietu usług API. Wskaźnik stanu może mieć jedną z tych wartości: CREATED, ACTIVE, INACTIVE. Obecnie określona wartość wskaźnika stanu jest zachowywana w pakiecie usług API, ale nie jest używana do żadnych celów.
Opcjonalnie możesz określić organizację.
Listę opcji udostępnianych przez interfejs API znajdziesz w sekcji Właściwości konfiguracji pakietu usług API.
Na przykład:
$ curl -H "Content-Type:application/json" -X POST -d \
'{
"description": "payment messaging package",
"displayName": "Payment Messaging Package",
"name": "Payment Messaging Package",
"organization": { "id": "{org_name}" },
"product": [
{ "id": "messaging" },
{ "id": "payment" }
],
"status": "CREATED"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \
-u email:password
Oto przykład odpowiedzi:
{ "description" : "payment messaging package", "displayName" : "Payment Messaging Package", "id" : "payment_messaging_package", "name" : "Payment Messaging Package", "organization" : { "id" : "{org_name}", "separateInvoiceForFees" : false }, "product" : [ { "customAtt1Name" : "user", "description" : "Messaging", "displayName" : "Messaging", "id" : "messaging", "name" : "messaging", "organization" : { "id" : "{org_name}", "separateInvoiceForFees" : false }, "status" : "CREATED" }, { "customAtt1Name" : "user", "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "payment", "organization" : { "id" : "{org_name}", "separateInvoiceForFees" : false }, "status" : "CREATED" }], "status" : "CREATED" }
Zwróć uwagę, że odpowiedź zawiera dodatkowe informacje o usługach API i wszelkich atrybutach niestandardowych określonych dla tych usług. (Atrybuty niestandardowe są określane podczas tworzenia usługi API ). Atrybuty niestandardowe usługi API można uwzględnić w różnych planach taryfowych. Jeśli na przykład skonfigurujesz plan taryfowy, w którym pobierasz opłatę od dewelopera za każdą transakcję, możesz ustawić stawkę dla tego planu na podstawie atrybutu niestandardowego, takiego jak liczba bajtów przesłanych w transakcji.
Zarządzanie usługami API w pakiecie usług API za pomocą interfejsu API
Za pomocą interfejsu API możesz dodawać i usuwać usługi API z pakietu usług API w sposób opisany w sekcjach poniżej.
Dodawanie usługi API do pakietu usług API
Aby dodać usługę API do pakietu usług API, wyślij żądanie POST do
organizations/{org_name}/monetization-packages/{package_id}/products/{product_id},
gdzie {org_name} to nazwa Twojej organizacji, {package_id}
to nazwa pakietu usług API, a {product_id} to identyfikator usługi API.
Na przykład:
$ curl -H "Accept:application/json" -X POST -d \
'{}'\
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \
-u email:password
Dodawanie usługi API do pakietu usług API z planami taryfowymi dotyczącymi konkretnej usługi API
Aby dodać usługę API do pakietu usług API, który ma zdefiniowany co najmniej 1 plan taryfowy dotyczący konkretnej usługi API (taryfa lub podział przychodów), wyślij żądanie POST do
organizations/{org_name}/monetization-packages/{package_id}/products/{product_id},
gdzie {org_name} to nazwa Twojej organizacji, {package_id}
to nazwa pakietu usług API, a {product_id} to identyfikator usługi API.
W treści żądania musisz przekazać szczegóły planu taryfowego dla nowej usługi API. Z wyjątkiem
tablicy ratePlanRates wartości planu taryfowego muszą być zgodne z wartościami określonymi dla wszystkich
innych usług API. Więcej informacji o atrybutach planu taryfowego, które można zdefiniować, znajdziesz w sekcji
Właściwości konfiguracji
planów taryfowych.
Na przykład:
$ curl -H "Content-Type:application/json" -X POST -d \
'{
"ratePlan": [
{
"id": "mypackage_rateplan1",
"ratePlanDetails": [
{
"currency": {
"id": "usd"
},
"duration": 1,
"durationType": "MONTH",
"meteringType": "UNIT",
"organization" : {
"id": "{org_name}",
"paymentDueDays": "30",
"ratePlanRates": [
{
"rate": "1.99",
"startUnit": "0",
"type": "RATECARD"
}
],
"ratingParameter": "VOLUME",
"type": "RATECARD"
}
]
}
]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \
-u email:password
Usuwanie usługi API z pakietu usług API
Aby usunąć usługę API z pakietu usług API, wyślij żądanie DELETE do adresu organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}, gdzie {org_name} to nazwa Twojej organizacji, {package_id} to nazwa pakietu usług API, a {product_id} to identyfikator usługi API.
Na przykład:
$ curl -H "Accept:application/json" -X DELETE \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \
-u email:password
Wyświetlanie pakietów usług API za pomocą interfejsu API
Możesz pobrać konkretny pakiet usług API lub wszystkie pakiety usług API w organizacji. Możesz też pobrać pakiety usług API, które mają transakcje w danym przedziale dat, czyli tylko te pakiety, w przypadku których użytkownicy wywołują aplikacje, które mają dostęp do interfejsów API w tych pakietach w określonej dacie rozpoczęcia i zakończenia.
Wyświetlanie konkretnego pakietu usług API: aby pobrać konkretny pakiet usług API, wyślij żądanie GET
do /organizations/{org_name}/monetization-packages/{package_id}, gdzie
{package_id} to identyfikator pakietu usług API (identyfikator jest zwracany w
odpowiedzi podczas tworzenia pakietu usług API). Na przykład:
$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/payment_messaging_package" \
-u email:password
Wyświetlanie wszystkich pakietów usług API: aby pobrać wszystkie pakiety usług API w organizacji, wyślij żądanie GET
do adresu /organizations/{org_name}/monetization-packages. Na przykład:
$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \
-u email:password
Aby filtrować wyniki, możesz przekazać te parametry zapytania:
| Parametr zapytania | Opis |
|---|---|
all |
Flaga określająca, czy mają być zwracane wszystkie pakiety usług API. Jeśli ustawisz wartość false, liczba pakietów usług API zwracanych na stronie jest
określana przez parametr zapytania size. Wartość domyślna to false. |
size |
Liczba pakietów usług API zwracanych na stronie. Wartość domyślna to 20. Jeśli parametr zapytania all ma wartość true, ten parametr jest ignorowany. |
page |
Numer strony, którą chcesz zwrócić (jeśli treść jest podzielona na strony). Jeśli
parametr zapytania all ma wartość true, ten
parametr jest ignorowany. |
Odpowiedź na żądanie wyświetlenia wszystkich pakietów usług API w organizacji powinna wyglądać tak (pokazana jest tylko część odpowiedzi):
{ "monetizationPackage" : [ { "description" : "payment messaging package", "displayName" : "Payment Messaging Package", "id" : "payment_messaging_package", "name" : "Payment Messaging Package", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "description" : "Messaging", "displayName" : "Messaging", "id" : "messaging", "name" : "messaging", "organization" : { ... }, "status" : "CREATED" }, { "customAtt1Name" : "user", "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "payment", "organization" : { ... }, "status" : "CREATED" } ], "status" : "CREATED" }, { "description" : "Communications", "displayName" : "Communications", "id" : "communications", "name" : "Communications", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "description" : "Location", "displayName" : "Location", "id" : "location", "name" : "location", "organization" : { ... }, "status" : "CREATED" }, { "customAtt1Name" : "user", "description" : "Messaging", "displayName" : "Messaging", "id" : "messaging", "name" : "messaging", "organization" : { ... }, "status" : "CREATED" } ], "status" : "CREATED" }, { "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "Payment", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "payment", "organization" : { ... }, "status" : "CREATED" } ], "status" : "CREATED" } ], "totalRecords" : 3 }
Wyświetlanie pakietów usług API z transakcjami: aby pobrać pakiety usług API z transakcjami w danym przedziale dat, wyślij żądanie GET do adresu /organizations/{org_name}/packages-with-transactions. Gdy wysyłasz żądanie,
musisz określić jako parametry zapytania datę rozpoczęcia i zakończenia przedziału dat. Na
przykład to żądanie pobiera pakiety usług API z transakcjami w sierpniu
2013 r.
$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/packages-with-transactions?START_DATE=2013-08-01&END_DATE=2013-08-31" \
-u email:password
Odpowiedź powinna wyglądać mniej więcej tak (pokazana jest tylko część odpowiedzi):
{ "monetizationPackage" : [ { "description" : "Payment Package", "displayName" : "Payment Package", "id" : "payment_package", "name" : "Payment Package", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "customAtt2Name" : "response size", "customAtt3Name" : "content-length", "description" : "payment api product", "displayName" : "payment", "id" : "payment", "name" : "payment", "organization" : { ... }, "status" : "CREATED", "transactionSuccessCriteria" : "status == 'SUCCESS'" } ], "status" : "CREATED" }, { "description" : "messaging package", "displayName" : "Messaging Package", "id" : "messaging_package", "name" : "Messaging Package", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "customAtt2Name" : "response size", "customAtt3Name" : "content-length", "description" : "messaging api product", "displayName" : "messaging", "id" : "messaging", "name" : "messaging", "organization" : { ... }, "status" : "CREATED", "transactionSuccessCriteria" : "status == 'SUCCESS'" } ], "status" : "CREATED" }, ... } ] }
Wyświetlanie pakietów usług API zaakceptowanych przez dewelopera lub firmę za pomocą interfejsu API
Aby wyświetlić pakiety usług API zaakceptowane przez konkretnego dewelopera lub firmę, wyślij żądanie GET odpowiednio do tych interfejsów API:
/organizations/{org_name}/developers/{developer_id}/monetization-packages, gdzie {developer_id} to identyfikator (adres e-mail) dewelopera./organizations/{org_name}/companies/{company_id}/monetization-packages, gdzie {company_id} to identyfikator firmy.
Gdy wysyłasz żądanie, możesz opcjonalnie określić te parametry zapytania:
| Parametr zapytania | Opis | Wartość domyślna |
|---|---|---|
current |
Flaga określająca, czy mają być pobierane tylko aktywne pakiety usług API (current=true), czy wszystkie
pakiety (current=false). Wszystkie plany taryfowe w aktywnym pakiecie są uznawane za
dostępne. |
current=false |
allAvailable |
Flaga określająca, czy mają być pobierane wszystkie dostępne pakiety usług API (allAvailable=true), czy
tylko pakiety usług API dostępne konkretnie dla dewelopera lub firmy (allAvailable=false).
Wszystkie dostępne pakiety usług API to te, które są dostępne dla określonego dewelopera lub firmy, a także dla
innych deweloperów lub firm. Pakiety usług API dostępne konkretnie dla firmy lub dewelopera zawierają tylko plany taryfowe
które są dostępne wyłącznie dla tej firmy lub dewelopera. |
allAvailable=true |
Na przykład to żądanie pobiera wszystkie pakiety usług API zaakceptowane przez konkretnego dewelopera:
$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/dev1@myorg.com/monetization-packages" \
-u email:password
To żądanie pobiera tylko aktywne pakiety API zaakceptowane przez konkretną firmę:
$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/companies/myCompany/monetization-packages?current=true" \
-u email:password
Usuwanie pakietu usług API za pomocą interfejsu API
Pakiet usług API możesz usunąć tylko wtedy, gdy nie ma zdefiniowanych żadnych planów taryfowych.
Aby usunąć pakiet usług API, który nie ma zdefiniowanych żadnych planów taryfowych, wyślij żądanie DELETE
do organizations/{org_name}/monetization-packages/{package_id},
gdzie {org_name} to nazwa Twojej organizacji
i {package_id} to nazwa pakietu usług API.
Na przykład:
$ curl -H "Accept:application/json" -X DELETE \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}" \
-u email:password
Właściwości konfiguracji pakietu usług API dla interfejsu API
Te opcje konfiguracji pakietu usług API są udostępniane przez interfejs API:
| Nazwa | Opis | Wartość domyślna | Wymagany? |
|---|---|---|---|
description |
Opis pakietu usług API. |
Nie dotyczy | Tak |
displayName |
Nazwa wyświetlana pakietu usług API (np. w katalogu pakietów API ). |
Nie dotyczy | Tak |
name |
Nazwa pakietu usług API. |
Nie dotyczy | Tak |
organization |
Organizacja, która zawiera pakiet usług API. |
Nie dotyczy | Nie |
product |
Tablica zawierająca co najmniej 1 usługę w pakiecie usług API. |
Nie dotyczy | Nie |
status |
Wskaźnik stanu pakietu usług API. Wskaźnik stanu może mieć jedną z tych wartości: CREATED, ACTIVE, INACTIVE. |
Nie dotyczy | Tak |