Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X. Informacje
Opublikuj interfejsy API w portalu, aby udostępnić je deweloperom aplikacji, jak opisano w następnych sekcjach.
Omówienie publikowania interfejsu API
Proces publikowania interfejsów API w portalu składa się z 2 etapów:
- Wybierz usługę interfejsu API, którą chcesz opublikować na swoim portalu.
- Wygeneruj dokumentację referencyjną interfejsu API na podstawie dokumentu OpenAPI lub schematu GraphQL, aby umożliwić deweloperom aplikacji zapoznanie się z Twoimi interfejsami API. (więcej informacji o zrzutach znajdziesz w artykule Czym jest zrzut).
Co jest publikowane w portalu?
Gdy publikujesz interfejs API, w Twoim portalu automatycznie wprowadzane są te zmiany:
- dokumentacja API, Dostępny interfejs zależy od tego, czy publikujesz interfejs API za pomocą dokumentu OpenAPI czy schematu GraphQL. Zobacz:
- Na stronie interfejsów API dodano link do strony z informacjami o interfejsie API
Na stronie interfejsów API (dostępnej w próbnym portalu) znajduje się lista wszystkich interfejsów API opublikowanych w Twoim portalu. Lista jest uporządkowana alfabetycznie i zawiera linki do odpowiedniej dokumentacji referencyjnej interfejsu API, z której można uzyskać więcej informacji. Opcjonalnie możesz dostosować te opcje:
- Obraz wyświetlany na każdej karcie interfejsu API
- Kategorie używane do tagowania interfejsów API, aby umożliwić deweloperom znajdowanie powiązanych interfejsów API na stronie interfejsów API
SmartDocs (OpenAPI)
Gdy opublikujesz interfejs API za pomocą dokumentu OpenAPI, do Twojego portalu zostanie dodana dokumentacja referencyjna interfejsu API SmartDocs.
Deweloperzy mogą zapoznać się z dokumentacją interfejsu API SmartDocs i użyć panelu Wypróbuj ten interfejs API, aby wysłać żądanie do interfejsu API i obejrzeć wynik. Wypróbuj ten interfejs API działa z niezabezpieczonymi lub zabezpieczonymi punktami końcowymi przy użyciu uwierzytelniania podstawowego, klucza API lub OAuth w zależności od metody zabezpieczeń zdefiniowanej w dokumencie OpenAPI. W przypadku OAuth obsługiwane są te procesy: kod autoryzacji, hasło i dane logowania klienta.
Kliknij
Pełny ekran, aby rozwinąć panel Wypróbuj ten interfejs API. Rozwinięty panel umożliwia wyświetlanie wywołań curl
i przykładów kodu w różnych formatach, takich jak HTTP, Python czy Node.js, jak pokazano na poniższym rysunku.
Eksplorator GraphQL
Gdy opublikujesz interfejs API za pomocą schematu GraphQL, do Twojego portalu zostanie dodany eksplorator GraphQL. Narzędzie GraphQL Explorer to interaktywna platforma do testowania zapytań do interfejsu API. Narzędzie to opiera się na GraphiQL, czyli referencyjnej implementacji środowiska IDE GraphQL opracowanej przez Fundację GraphQL.
Za pomocą eksploratora GraphQL deweloperzy mogą przeglądać interaktywną dokumentację opartą na schemacie, tworzyć i uruchamiać zapytania, wyświetlać wyniki zapytań oraz pobierać schemat. Aby zabezpieczyć dostęp do interfejsu API, deweloperzy mogą przekazywać nagłówki autoryzacji w panelu Nagłówki żądania.
Więcej informacji o GraphQL znajdziesz na stronie graphql.org.
Co to jest snapshot?
Każdy dokument OpenAPI lub GraphQL jest źródłem informacji na temat całego cyklu życia interfejsu API. Ten sam dokument jest używany na każdym etapie cyklu życia interfejsu API, od tworzenia po publikowanie i monitorowanie. Podczas modyfikowania dokumentu musisz mieć na uwadze wpływ tych zmian na interfejs API w innych fazach cyklu życia, jak opisano w sekcji Co się stanie, jeśli zmodyfikuję dokument?.
Podczas publikowania interfejsu API tworzysz migawkę dokumentu OpenAPI lub GraphQL, aby wygenerować dokumentację referencyjną interfejsu API. Ta migawka reprezentuje konkretną wersję dokumentu. Jeśli zmodyfikujesz dokument, możesz zrobić kolejny zrzut ekranu, aby odzwierciedlić najnowsze zmiany w dokumentacji referencyjnej interfejsu API.
Adresy URL wywołania zwrotnego
Jeśli Twoje aplikacje wymagają adresu URL wywołania zwrotnego, na przykład w przypadku korzystania z typu autoryzacji za pomocą kodu OAuth 2.0 (często określanego jako trzyetapowy OAuth), możesz wymagać od deweloperów, aby podczas rejestrowania aplikacji podali adres URL wywołania zwrotnego. Adres URL wywołania zwrotnego zwykle określa adres URL aplikacji, która ma odbierać kod autoryzacji w imieniu aplikacji klienta. Więcej informacji znajdziesz w artykule Wdrażanie typu autoryzacji za pomocą kodu autoryzacji.
Podczas dodawania interfejsu API do portalu możesz skonfigurować, czy podczas rejestracji aplikacji ma być wymagany URL wywołania zwrotnego. Możesz zmienić to ustawienie w każdej chwili, zgodnie z instrukcjami podanymi w artykule Zarządzanie adresem URL wywołania zwrotnego interfejsu API.
Podczas rejestrowania aplikacji deweloperzy muszą wpisać adres URL wywołania zwrotnego dla wszystkich interfejsów API, które tego wymagają, zgodnie z opisem w artykule Rejestrowanie aplikacji.
Konfigurowanie serwera proxy interfejsu API na potrzeby funkcji „Wypróbuj ten interfejs API”
Zanim opublikujesz interfejsy API za pomocą dokumentu OpenAPI, musisz skonfigurować serwer proxy interfejsu API, aby umożliwić wysyłanie żądań w panelu Wypróbuj ten interfejs API w dokumentacji referencyjnej interfejsu API SmartDocs:
Dodaj obsługę CORS do swoich serwerów proxy API, aby wymuszać żądania między domenami po stronie klienta.
CORS to standardowy mechanizm, który umożliwia wywołania XMLHttpRequest (XHR) w JavaScriptie wykonywane na stronie internetowej, aby wchodzić w interakcje z zasobami z domen innych niż domena pochodzenia. CORS to powszechnie stosowane rozwiązanie problemu związanego z zasadami dotyczącymi tej samej domeny, które są egzekwowane przez wszystkie przeglądarki.
Zaktualizuj konfigurację proxy interfejsu API, jeśli używasz uwierzytelniania podstawowego lub OAuth 2
Poniższa tabela zawiera podsumowanie wymagań dotyczących konfiguracji serwera proxy API, które umożliwiają obsługę panelu Wypróbuj ten interfejs API w dokumentacji referencyjnej interfejsu API SmartDocs na podstawie dostępu do uwierzytelniania.
Dostęp do uwierzytelniania | Wymagania dotyczące konfiguracji zasad |
---|---|
Brak lub klucz interfejsu API | Dodaj obsługę CORS do serwera proxy interfejsu API. Dla wygody możesz użyć przykładowego rozwiązania CORS udostępnionego na GitHubie lub wykonać czynności opisane w artykule Dodawanie obsługi CORS do serwera proxy API. |
Podstawowe uwierzytelnianie | Wykonaj te czynności:
|
OAuth2 |
|
Zarządzaj interfejsami API
Zarządzaj interfejsami API w sposób opisany w sekcjach, które są wskazane poniżej.
Przeglądaj interfejsy API
Aby wyświetlić interfejsy API w portalu, użyj interfejsu użytkownika lub polecenia curl
.
Interfejs użytkownika
Aby wyświetlić katalog interfejsu API:
- Kliknij Opublikuj > Portale, a następnie wybierz swój portal.
- Na stronie głównej portalu kliknij Katalog interfejsów API. Możesz też wybrać Katalog interfejsów API w menu portalu na górnym pasku nawigacyjnym.
Na karcie Interfejsy API w katalogu interfejsów API znajduje się lista interfejsów API dodanych do portalu.
Jak widać na poprzednim rysunku, na karcie Interfejsy API możesz:
- Wyświetlanie szczegółów interfejsów API dostępnych na Twoim portalu
- Dodawanie interfejsu API do portalu
- Aby edytować interfejs API w portalu, wykonaj co najmniej 1 z tych czynności:
- Zarządzanie migawką dokumentu powiązanego z produktem interfejsu API w celu zaktualizowania dokumentacji referencyjnej interfejsu API
- Publikowanie i wycofywanie interfejsu API w portalu
- Zarządzanie widocznością interfejsu API w portalu:
- Zarządzanie adresem URL wywołania zwrotnego interfejsu API
- Zarządzanie obrazem na karcie interfejsu API
- Tagowanie interfejsu API za pomocą kategorii
- Edytowanie tytułu i opisu interfejsu API
- Usuwanie interfejsu API z portalu
- Zarządzanie kategoriami służącymi do znajdowania powiązanych interfejsów API
- Szybkie identyfikowanie specyfikacji, które są nieaktualne lub zostały usunięte ze sklepu ze specyfikacjami
- Szybko identyfikować osieroczone interfejsy API, których powiązana usługa API została usunięta z Apigee Edge, oraz ponownie tworzyć usługę API lub usuwać interfejs API z portalu.
curl
Aby wyświetlić listę interfejsów API:
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
Instrukcje dotyczące korzystania z podziału na strony w pliku odpowiedzi znajdziesz w sekcji Uwagi dotyczące podziału na strony.
Ładunek odpowiedzi:
{
"status": "success",
"message": "one page of apidocs returned",
"data": [
{
"id": 622759,
"siteId": "my-org-myportal",
"title": "Test",
"description": "",
"published": false,
"visibility": false,
"apiId": "apiproducttest18",
"apiProductName": "apiproduct_test18",
"edgeAPIProductName": "apiproduct_test18",
"specId": null,
"specContent": null,
"specTitle": null,
"snapshotExists": false,
"snapshotModified": null,
"modified": 1724144471000,
"anonAllowed": false,
"imageUrl": null,
"snapshotState": null,
"requireCallbackUrl": false,
"categoryIds": [],
"specFormat": null,
"specModified": null,
"snapshotOutdated": false,
"snapshotSourceMissing": false,
"graphqlSchema": null,
"graphqlEndpointUrl": null,
"graphqlSchemaDisplayName": null,
"grpcFileName": null,
"grpcZipContent": null
}
],
"code": null,
"request_id": "1452867334",
"error_code": null,
"next_page_token": ""
}
Gdzie:
-
modified
: czas ostatniej modyfikacji elementu w katalogu w milisekundach od początku epoki. Na przykład:1698165480000
. -
id
: identyfikator produktu w katalogu. Na przykład:399668
.
Uwagi dotyczące strony:
Rozmiar strony: użyj parametru
pageSize
, aby określić liczbę elementów listy, które mają zostać zwrócone na jednej stronie. Wartość domyślna to 25, a maksymalna – 100. Jeśli są dodatkowe strony,nextPageToken
jest wypełniany za pomocą tokena:curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs?pageSize=PAGE_SIZE" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp:
- PAGE_SIZE z liczbą elementów listy do zwrócenia na jednej stronie. Na przykład 10.
Ładunek odpowiedzi:
{ "status": "success", "message": "one page of apidocs returned", "data": [ { "id": 638007, "siteId": "tsnow-mint-liztest", "title": "Testing", "description": "", "published": false, "visibility": false, "apiId": "testcatalog", "apiProductName": "testcatalog", "edgeAPIProductName": "testcatalog", "specId": "Petstore", "specContent": null, "specTitle": null, "snapshotExists": true, "snapshotModified": 1726508367000, "modified": 1728582504000, "anonAllowed": false, "imageUrl": null, "snapshotState": "OK_SUBMITTED", "requireCallbackUrl": false, "categoryIds": [], "specFormat": "YAML", "specModified": null, "snapshotOutdated": false, "snapshotSourceMissing": false, "graphqlSchema": null, "graphqlEndpointUrl": null, "graphqlSchemaDisplayName": null, "grpcFileName": null, "grpcZipContent": null } ], "code": null, "request_id": "1068810934", "error_code": null, "next_page_token": "" }
Token strony: użyj parametru
pageToken
, aby pobrać kolejne strony, jeśli jest ich więcej niż 1:curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs?pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp:
- PAGE_SIZE z liczbą elementów listy do zwrócenia na jednej stronie. Na przykład 10.
-
PAGE_TOKEN z wartością
nextPageToken
. Na przykład:7zcqrin9l6xhi4nbrb9
.
Dodawanie interfejsu API
Aby dodać interfejsy API do portalu, użyj interfejsu użytkownika lub polecenia curl
:
Interfejs użytkownika
Aby dodać interfejs API do portalu:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
Kliknij + Dodaj.
Wyświetli się okno Dodaj produkt z interfejsem API do katalogu.
Wybierz usługę API, którą chcesz dodać do portalu.
Kliknij Dalej. Pojawi się strona Szczegóły interfejsu API.
Skonfiguruj zawartość dokumentacji na temat interfejsu API oraz jej widoczność w portalu:
Pole Opis Opublikowano Aby opublikować interfejs API w portalu, wybierz Opublikowano. Jeśli nie chcesz jeszcze publikować interfejsu API, odznacz to pole. Możesz zmienić to ustawienie później, zgodnie z instrukcjami podanymi w artykule Publikowanie interfejsu API lub wycofywanie go z użycia w portalu. Wyświetl tytuł Zaktualizuj tytuł interfejsu API wyświetlany w katalogu. Domyślnie używana jest nazwa usługi interfejsu API. Wyświetlany tytuł możesz zmienić później, zgodnie z instrukcjami podanymi w artykule Edytuj wyświetlany tytuł i opis. Wyświetl opis Zaktualizuj opis interfejsu API wyświetlany w katalogu. Domyślnie używany jest opis produktu z interfejsu API. Opis wyświetlania możesz zmienić później, zgodnie z instrukcjami podanymi w artykule Edytuj wyświetlany tytuł i opis. Wymagaj od programistów określania adresu URL wywołania zwrotnego Włącz, jeśli chcesz wymagać od programistów aplikacji określenia adresu URL wywołania zwrotnego. Adres URL wywołania zwrotnego możesz dodać lub zaktualizować w późniejszym czasie zgodnie z instrukcjami podanymi w artykule Zarządzanie adresem URL wywołania zwrotnego interfejsu API. Dokumentacja API Aby użyć dokumentu OpenAPI:
- Wybierz dokument OpenAPI.
- Kliknij Wybierz dokument.
- Wykonaj jedną z tych czynności:
- Kliknij kartę Moje specyfikacje i wybierz specyfikację ze sklepu ze specyfikacjami.
- Kliknij kartę Prześlij plik i prześlij plik.
- Kliknij kartę Importuj z adresu URL i zaimportuj specyfikację z adresu URL.
- Kliknij Wybierz.
Aby użyć schematu GraphQL:
- Wybierz Schemat GraphQL.
- Kliknij Wybierz dokument.
- Przejdź do schematu GraphQL i go wybierz.
- Kliknij Wybierz.
Możesz też wybrać Brak dokumentacji i dodać ją później, gdy interfejs API zostanie dodany, zgodnie z opisem w sekcji Zarządzanie migawką dokumentu.
Widoczność interfejsu API Jeśli nie masz zarejestrowanej wersji beta funkcji zarządzania odbiorcami, wybierz jedną z tych opcji:
- Anonimowi użytkownicy, aby umożliwić wszystkim użytkownikom wyświetlanie interfejsu API.
- Zarejestrowani użytkownicy, aby umożliwić wyświetlanie interfejsu API tylko zarejestrowanym użytkownikom.
Jeśli zapisałeś się do wersji beta funkcji zarządzania odbiorcami, wybierz jedną z tych opcji:
- Publiczna (widoczna dla każdego), aby umożliwić wszystkim użytkownikom wyświetlanie interfejsu API.
- Uwierzytelnieni użytkownicy, aby umożliwić wyświetlanie interfejsu API tylko zarejestrowanym użytkownikom.
- Wybrane listy odbiorców, aby wybrać konkretne listy odbiorców, które mają mieć dostęp do interfejsu API.
Później możesz zarządzać widocznością listy odbiorców w sposób opisany w artykule Zarządzanie widocznością interfejsu API w portalu.
Wyświetlany obrazy Aby wyświetlić obraz na karcie interfejsu API na stronie interfejsów API, kliknij Wybierz obraz. W oknie Wybierz obraz wybierz istniejący obraz, prześlij nowy obraz lub podaj adres URL zewnętrznego obrazu, a następnie kliknij Wybierz. Wyświetl miniaturę interfejsu API i kliknij Wybierz. Możesz dodać obraz później, zgodnie z instrukcjami podanymi w artykule Zarządzanie obrazem na karcie interfejsu API. Gdy określisz obraz za pomocą zewnętrznego adresu URL, nie zostanie on przesłany do Twoich zasobów. Dodatkowo wczytywanie obrazu w zintegrowanym portalu będzie zależeć od jego dostępności, która może zostać zablokowana lub ograniczona przez zasady bezpieczeństwa treści. Kategorie Dodaj kategorie, którymi zostanie oznaczony interfejs API, aby umożliwić deweloperom aplikacji znajdowanie powiązanych interfejsów API na stronie interfejsów API. Aby zidentyfikować kategorię:
- Wybierz kategorię z listy.
- Aby dodać nową kategorię, wpisz jej nazwę i naciśnij Enter. Nowa kategoria zostanie dodana do strony „Kategorie” i będzie dostępna podczas dodawania lub edytowania innych interfejsów API.
Kliknij Zapisz.
curl
Aby dodać interfejs API do portalu :
curl -X POST "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": "IMAGE_URL", "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE, "apiProductName": "API_PRODUCT" }'
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
-
TITLE z wyświetlanym tytułem. Na przykład:
Hello World 2
. -
DESCRIPTION z opisem wyświetlanym na ekranie. Na przykład:
Simple hello world example
. -
ANON_TRUE_OR_FALSE z
true
lubfalse
(domyślnie), gdzie:true
oznacza, że ten interfejs API jest publicznie widoczny i można go wyświetlać anonimowo; w przeciwnym razie tylko zarejestrowani użytkownicy mogą go wyświetlać. -
IMAGE_URL z adresem URL obrazu zewnętrznego używanego w przypadku produktu w katalogu lub ścieżką do pliku, na przykład plików obrazów przechowywanych na portalu,
/files/book-tree.jpg
. Gdy podajesz adres URL zewnętrznego obrazu, obraz ten nie zostanie przesłany do Twoich zasobów. Dodatkowo wczytywanie obrazu w zintegrowanym portalu będzie zależeć od jego dostępności, która może być zablokowana lub ograniczona przez zasady bezpieczeństwa treści. -
CALLBACK_TRUE_OR_FALSE z
true
lubfalse
(domyślnie), gdzietrue
wymaga od użytkownika portalu podania adresu URL podczas zarządzania aplikacją. -
CATEGORY_ID z identyfikatorem kategorii. Na przykład:
bf6505eb-2a0f-47af-a00a-ded40ac72960
. Kolejne identyfikatory kategorii oddziel przecinkami. Aby poznać identyfikator kategorii, użyj polecenia list API categories. -
PUBLISHED_TRUE_OR_FALSE z
true
lubfalse
(domyślnie), gdzietrue
oznacza, że interfejs API jest dostępny publicznie. Po opublikowaniu możesz zezwolić na dostęp wszystkim użytkownikom, uwierzytelnionym użytkownikom lub określonym użytkownikom. -
API_PRODUCT z nazwą produktu interfejsu API. Na przykład:
Hello World 2
.
Ładunek odpowiedzi:
{
"status": "success",
"message": "API created",
"data": {
"id": 662423,
"siteId": "my-org-myportal",
"title": "My Test Catalog 4",
"description": "",
"published": false,
"visibility": false,
"apiId": "uxb9wjua",
"apiProductName": "uXB9wJUa",
"edgeAPIProductName": "uXB9wJUa",
"specId": null,
"specContent": null,
"specTitle": null,
"snapshotExists": false,
"snapshotModified": null,
"modified": 1729635493000,
"anonAllowed": false,
"imageUrl": null,
"snapshotState": null,
"requireCallbackUrl": false,
"categoryIds": [],
"specFormat": null,
"specModified": null,
"snapshotOutdated": null,
"snapshotSourceMissing": false,
"graphqlSchema": null,
"graphqlEndpointUrl": null,
"graphqlSchemaDisplayName": null,
"grpcFileName": null,
"grpcZipContent": null
},
"code": null,
"request_id": "893346193",
"error_code": null
}
Gdzie:
-
modified
: czas ostatniej modyfikacji elementu w katalogu w milisekundach od początku epoki. Na przykład:1698165480000
. -
id
: identyfikator produktu w katalogu. Na przykład:399668
.
Edytowanie interfejsu API
Po dodaniu interfejsu API możesz wprowadzić zmiany za pomocą interfejsu użytkownika lub wywołania interfejsu API.
W tej sekcji znajdziesz szczegółowy przykład modyfikacji istniejącego interfejsu API w portalu.
Szczegółowe informacje o konkretnych ustawieniach modyfikacji znajdziesz w następnych sekcjach.
Interfejs użytkownika
Aby edytować interfejs API:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
- W sekcji Szczegóły interfejsu API wprowadź zmiany. Opcje te opisane są w sekcji Dodawanie interfejsu API.
- Kliknij Zapisz.
curl
Po dodaniu interfejsu API możesz wprowadzać zmiany za pomocą wywołania update.
W tym przykładzie pokażemy Ci, jak zmienić w portalu opublikowany stan interfejsu API z true
na false
. W razie potrzeby możesz zmienić więcej niż 1 ustawienie w 1 wywołaniu interfejsu API.
- Aby znaleźć wygenerowany identyfikator
id
, który jednoznacznie identyfikuje każdy interfejs API, pobierz listę interfejsów API w portalu zgodnie z opisem w artykule Znajdowanie interfejsów API. Zwracanie bieżących wartości dla konkretnego interfejsu API:
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
API_DOC z wygenerowanym
id
dokumentu. Na przykład:399668
. Aby znaleźć tę wartość, użyj polecenia list API docs. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
Ładunek odpowiedzi:
{ "status": "success", "message": "apidoc returned", "data": { "id": 662423, "siteId": "my-org-myportal", "title": "My Test Catalog 4", "description": "", "published": false, "visibility": false, "apiId": "uxb9wjua", "apiProductName": "uXB9wJUa", "edgeAPIProductName": "uXB9wJUa", "specId": null, "specContent": null, "specTitle": null, "snapshotExists": false, "snapshotModified": null, "modified": 1729635493000, "anonAllowed": false, "imageUrl": null, "snapshotState": null, "requireCallbackUrl": false, "categoryIds": [], "specFormat": null, "specModified": null, "snapshotOutdated": false, "snapshotSourceMissing": false, "graphqlSchema": null, "graphqlEndpointUrl": null, "graphqlSchemaDisplayName": null, "grpcFileName": null, "grpcZipContent": null }, "code": null, "request_id": "601210268", "error_code": null }
-
ORG_NAME nazwą organizacji. Na przykład:
Uwzględnij zmienne wartości, które chcesz zachować w wywołaniu update, i zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz wiersz, zostanie użyte ustawienie domyślne. W tym przykładzie zmień ustawienie opublikowania z
false
natrue
:curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "anonAllowed": true, "published": true }'
Zastąp następujące elementy:
-
TITLE z wyświetlanym tytułem. Na przykład:
Hello World 2
.
Ładunek odpowiedzi:
{ "status": "success", "message": "ApiDoc updated", "data": { "id": 662423, "siteId": "my-org-myportal", "title": "My Test Catalog 4", "description": "", "published": true, "visibility": true, "apiId": "uxb9wjua", "apiProductName": "uXB9wJUa", "edgeAPIProductName": "uXB9wJUa", "specId": null, "specContent": null, "specTitle": null, "snapshotExists": false, "snapshotModified": null, "modified": 1729989250000, "anonAllowed": true, "imageUrl": null, "snapshotState": null, "requireCallbackUrl": false, "categoryIds": [], "specFormat": null, "specModified": null, "snapshotOutdated": null, "snapshotSourceMissing": false, "graphqlSchema": null, "graphqlEndpointUrl": null, "graphqlSchemaDisplayName": null, "grpcFileName": null, "grpcZipContent": null }, "code": null, "request_id": "738172002", "error_code": null }
-
TITLE z wyświetlanym tytułem. Na przykład:
Zarządzanie zrzutem dokumentu
Po opublikowaniu interfejsu API możesz w dowolnym momencie wykonać nowy zrzut dokumentu OpenAPI lub GraphQL, aby zaktualizować opublikowaną w Twoim portalu dokumentację API.
Aby zarządzać zrzutem dokumentu:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Sprawdź stan zrzutu. Jeśli jest nieaktualny, wyświetli się ten komunikat:
- Kliknij .
- Wykonaj jedną z tych czynności:
- Aby odświeżyć nieaktualny zrzut dokumentu OpenAPI, kliknij Odśwież zrzut.
- Aby zmienić dokument używany do generowania dokumentacji interfejsu API, w sekcji Dokumentacja interfejsu API kliknij Wybierz dokument i wybierz nowy dokument.
- Kliknij Zapisz.
Publikowanie i cofanie publikacji interfejsu API w portalu
Publikowanie to proces udostępniania interfejsów API deweloperom aplikacji.
Aby opublikować lub wycofać publikację interfejsu API w portalu, użyj interfejsu użytkownika lub polecenia curl
.
Interfejs użytkownika
Aby opublikować lub wycofać publikację interfejsu API w portalu:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
- W sekcji Szczegóły interfejsu API zaznacz lub odznacz pole Opublikowano (wyświetlany w katalogu), aby odpowiednio opublikować lub wycofać interfejs API w portalu.
- Kliknij Zapisz.
curl
W wywołaniu update umieść jedną z tych opcji:
"published": true, # API is published to your portal "published": false, # API is not published in your portal
Aby edytować interfejs API:
-
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs" \ -H "Authorization: Bearer ACCESS_TOKEN"
Aby edytować interfejs API, użyj wywołania update. Uwzględnij wartości, które chcesz zmienić, i zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz zmienne ustawienie, zostanie ono zastąpione wartością domyślną.
curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": IMAGE_URL, "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE }
Szczegółowe informacje o krokach, zmiennych i zwracanych danych znajdziesz w artykule Zarządzanie wersją dokumentu.
Zarządzanie widocznością interfejsu API w portalu
Zarządzaj widocznością interfejsu API w portalu, przyznając dostęp do:
- Publiczna (widoczna dla każdego)
- Uwierzytelnieni użytkownicy
- wybrane listy odbiorców (jeśli uczestniczysz w testach beta funkcji zarządzania odbiorcami);
Aby zarządzać widocznością interfejsu API w portalu, użyj interfejsu użytkownika lub polecenia curl
:
Interfejs użytkownika
Aby zarządzać widocznością interfejsu API w portalu:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
Wybierz ustawienie widoczności. Jeśli zapisałeś się do wersji beta funkcji list odbiorców, wybierz jedną z tych opcji:
- Publiczna (widoczna dla wszystkich), aby umożliwić wszystkim użytkownikom wyświetlanie strony.
- Uwierzytelnieni użytkownicy, aby umożliwić wyświetlanie strony tylko zarejestrowanym użytkownikom.
- Wybrane listy odbiorców, aby wybrać konkretne listy odbiorców, które mają mieć możliwość wyświetlania strony. Zapoznaj się z artykułem Zarządzanie odbiorcami portalu.
- Anonimowi użytkownicy, aby umożliwić wszystkim użytkownikom wyświetlanie strony.
- Zarejestrowani użytkownicy, aby zezwolić na wyświetlanie strony tylko zarejestrowanym użytkownikom.
Kliknij Prześlij.
curl
Jeśli zapisałeś się do wersji beta funkcji zarządzania listami odbiorców, możesz zarządzać listami odbiorców za pomocą interfejsu użytkownika.
Jeśli nie korzystasz z funkcji zarządzania odbiorcami, widoczność jest zarządzana za pomocą anonAllowed
.
W wywołaniu update
uwzględnij jedną z tych opcji:
# When not enrolled in the beta release of the audience management feature: "anonAllowed": true, # Anonymous users can see the API "anonAllowed": false, # Only registered users can see the API
Aby edytować interfejs API:
-
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Aby edytować interfejs API, użyj wywołania update. Uwzględnij wartości, które chcesz zachować, a zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz zmienne ustawienie, zostanie użyta wartość domyślna.
curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": IMAGE_URL, "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE }'
Szczegółowe informacje o krokach, zmiennych i zwracanych danych znajdziesz w artykule Edytuj interfejs API.
Zarządzanie adresem URL wywołania zwrotnego interfejsu API
Zarządzanie adresem URL wywołania zwrotnego interfejsu API. Zobacz artykuł Informacje o adresach URL wywołań zwrotnych.
Aby zarządzać adresem URL wywołania zwrotnego interfejsu API, użyj interfejsu użytkownika lub polecenia curl
:
Interfejs użytkownika
Aby zarządzać adresem URL wywołania zwrotnego interfejsu API:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
- W sekcji Szczegóły interfejsu API zaznacz lub odznacz pole wyboru Wymagaj od programistów określania adresu URL wywołania zwrotnego.
- Kliknij Zapisz.
curl
W wywołaniu update
uwzględnij jedną z tych opcji:
"requireCallbackUrl": true, # Portal user is required to input a URL "requireCallbackUrl": false, # Portal user is not required to input a URL
Aby edytować interfejs API:
-
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Aby edytować interfejs API, użyj wywołania update. Uwzględnij wartości, które chcesz zachować, a zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz zmienne ustawienie, zostanie użyta wartość domyślna.
curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": IMAGE_URL, "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE }'
Szczegółowe informacje o krokach, zmiennych i zwracanych danych znajdziesz w artykule Edytuj interfejs API.
Zarządzanie obrazem karty interfejsu API
Zarządzaj obrazem, który pojawia się na karcie interfejsu API na stronie interfejsów API, dodając lub zmieniając obecny obraz.
Aby zarządzać obrazem karty interfejsu API, użyj interfejsu lub polecenia curl
:
Interfejs użytkownika
Aby zarządzać obrazem karty interfejsu API:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
W sekcji Szczegóły interfejsu API:
- Kliknij Wybierz obraz, aby wskazać lub przesłać obraz, jeśli żaden nie został wybrany.
- Aby wybrać lub przesłać inny obraz, kliknij Zmień obraz.
- Aby usunąć obraz, kliknij x.
Podczas wskazywania obrazu podaj albo obraz z zewnętrznym adresem URL używanym dla elementu katalogu, albo ścieżkę do pliku obrazu przechowywanego w portalu, np.
/files/book-tree.jpg
. Gdy określisz adres URL obrazu zewnętrznego, nie zostanie on przesłany do Twoich zasobów. Ponadto wczytywanie obrazu w zintegrowanym portalu będzie zależeć od jego dostępności, która może zostać zablokowana lub ograniczona przez zasady bezpieczeństwa treści.Kliknij Zapisz.
curl
W wywołaniu update
należy uwzględnić:
# Omit line for no image file "imageUrl": "IMAGE_URL" # URL of the external image or name of the image file
Aby edytować interfejs API:
-
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Aby edytować interfejs API, użyj wywołania update. Uwzględnij wartości, które chcesz zachować, a zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz zmienne ustawienie, zostanie użyta wartość domyślna.
curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": IMAGE_URL, "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE }'
Szczegółowe informacje o krokach, zmiennych i zwracanych danych znajdziesz w artykule Edytuj interfejs API.
Oznaczanie interfejsu API za pomocą kategorii
Dzięki kategoriom deweloperzy aplikacji mogą odkrywać powiązane interfejsy API. Zobacz też Zarządzanie kategoriami.
Możesz dodać tagi do interfejsu API za pomocą kategorii na jeden z tych sposobów:
- Podczas edytowania interfejsu API możesz zarządzać kategoriami, do których jest on przypisany.
- Zarządzaj interfejsami API otagowanymi w ramach danej kategorii podczas edytowania kategorii.
Aby oznaczyć interfejs API za pomocą kategorii, użyj interfejsu użytkownika lub polecenia curl
:
Interfejs użytkownika
Aby podczas edytowania interfejsu API dodać do niego tagi kategorii:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
- Kliknij pole Kategorie i wykonaj jedną z tych czynności:
- Wybierz kategorię z listy.
- Aby dodać nową kategorię, wpisz jej nazwę i naciśnij Enter. Nowa kategoria zostanie dodana do strony „Kategorie” i będzie dostępna podczas dodawania lub edytowania innych interfejsów API.
- Powtórz tę czynność, aby dodać tagi do interfejsu API w większej liczbie kategorii.
- Kliknij Zapisz.
curl
W wywołaniu update
należy uwzględnić:
# Omit line for no categories "categoryIds": [ "CATEGORY_ID1", # A category ID number "CATEGORY_ID2" # A category ID number ],
Aby uzyskać numery identyfikatorów kategorii, użyj polecenia list categories.
Aby edytować interfejs API:
-
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Aby edytować interfejs API, użyj wywołania update. Uwzględnij wartości, które chcesz zachować, a zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz zmienne ustawienie, zostanie użyta wartość domyślna.
curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": IMAGE_URL, "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE }'
Szczegółowe informacje o krokach, zmiennych i zwracanych danych znajdziesz w artykule Edytuj interfejs API.
Edytowanie wyświetlanego tytułu i opisu
Aby edytować wyświetlany tytuł i opis, użyj interfejsu lub polecenia curl
:
Interfejs użytkownika
Aby edytować wyświetlany tytuł i opis:
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
- W razie potrzeby zmień pola Wyświetlany tytuł i Wyświetlany opis.
- Kliknij Zapisz.
curl
W wywołaniu update
należy uwzględnić:
"title": "TITLE", # Display title "description": "DESCRIPTION", # Display description
Aby edytować interfejs API:
-
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Aby edytować interfejs API, użyj wywołania update. Uwzględnij wartości, które chcesz zachować, a zmodyfikuj wartości, które chcesz zmienić. Jeśli pominiesz zmienne ustawienie, zostanie użyta wartość domyślna.
curl -X PUT "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "TITLE", "description": "DESCRIPTION", "anonAllowed": ANON_TRUE_OR_FALSE, "imageUrl": IMAGE_URL, "requireCallbackUrl": CALLBACK_TRUE_OR_FALSE, "categoryIds": [ "CATEGORY_ID1", "CATEGORY_ID2" ], "published": PUBLISHED_TRUE_OR_FALSE }'
Szczegółowe informacje o krokach, zmiennych i zwracanych danych znajdziesz w artykule Edytuj interfejs API.
Usuwanie interfejsu API z portalu
Aby usunąć interfejs API z portalu, użyj interfejsu użytkownika lub polecenia curl
:
Interfejs użytkownika
Aby usunąć interfejs API z portalu:
- Uzyskaj dostęp do katalogu interfejsów API.
- Wybierz Interfejsy API (jeśli nie są już wybrane).
- Umieść kursor na interfejsie API na liście, aby wyświetlić menu działań.
- Kliknij Usuń.
curl
Aby usunąć interfejs API z portalu:
curl -X DELETE "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
API_DOC z wygenerowanym
id
dokumentu. Na przykład:399668
. Aby znaleźć tę wartość, użyj polecenia list API docs. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
Ładunek odpowiedzi:
{ "status": "success", "message": "Apidoc deleted", "data": { }, "code": null, "request_id": "1790036484", "error_code": null }
Zarządzanie dokumentacją interfejsu API
W następnych sekcjach opisano, jak aktualizować, pobierać i usuwać dokumentację interfejsu API.
Aktualizowanie dokumentacji interfejsu API
Aby przesłać inną wersję dokumentacji interfejsu API:
Interfejs użytkownika
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Sprawdź stan zrzutu. Jeśli jest nieaktualny, wyświetli się ten komunikat:
- Kliknij Edytuj.
- Wykonaj jedną z tych czynności:
- Aby odświeżyć nieaktualny zrzut dokumentu OpenAPI, kliknij Odśwież zrzut.
- Aby zmienić dokument używany do generowania dokumentacji interfejsu API, w sekcji Dokumentacja interfejsu API kliknij Wybierz dokument i wybierz nowy dokument.
- W panelu Dokumentacja interfejsu API wybierz jedną z tych opcji:
- Dokument OpenAPI
- Schemat GraphQL
- Kliknij Wybierz dokument i wybierz najnowszą wersję dokumentu.
- W przypadku GraphQL podaj adres URL punktu końcowego.
- Kliknij Zapisz.
Dokumentacja referencyjna interfejsu API jest renderowana z dokumentu i dodawana do strony referencyjnej interfejsu API. Stan zrzutu jest aktualizowany do bieżącego:
curl
Aby zaktualizować zawartość dokumentacji OpenAPI lub GraphQL:
OpenAPI
curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"oasDocumentation": { "spec":{ "displayName":"DISPLAY_NAME", "contents":"CONTENTS"} } }'
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
API_DOC z wygenerowanym
id
dokumentu. Na przykład:399668
. Aby znaleźć tę wartość, użyj polecenia list API docs. -
DISPLAY_NAME z wyświetlaną nazwą dokumentacji interfejsu API. Na przykład:
Hello World 2
. - CONTENTS z zakodowanym w formacie base64 ciągiem znaków z dokumentacją interfejsu API. Większość środowisk programistycznych zawiera narzędzie do konwersji base64 lub istnieje wiele narzędzi do konwersji online.
Ładunek odpowiedzi:
{ "status":"success", "message":"Api documentation updated", "requestId":"645138278" "data": { "oasDocumentation": { "spec": { "displayName": "Hello World 2" }, "Format": "YAML" } } }
GraphQL
curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"graphqlDocumentation": { "schema":{"displayName":"DISPLAY_NAME", "contents":"CONTENTS"}, "endpointUri": "ENDPOINT_URI" } }'
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
API_DOC z wygenerowanym
id
dokumentu. Na przykład:399668
. Aby znaleźć tę wartość, użyj polecenia list API docs. -
DISPLAY_NAME z wyświetlaną nazwą dokumentacji interfejsu API. Na przykład:
Hello World 2
. -
ENDPOINT_URI nazwą domeny identyfikatora URI punktu końcowego. Na przykład:
https://demo.google.com/graphql
. - CONTENTS z zakodowanym w formacie base64 ciągiem znaków z dokumentacją interfejsu API. Większość środowisk programistycznych zawiera narzędzie do konwersji base64 lub istnieje wiele narzędzi do konwersji online.
Ładunek odpowiedzi:
{ "status": "success", "message": "ApiDocDocumentation updated", "data": { "oasDocumentation": null, "graphqlDocumentation": { "schema": { "displayName": "schema.docs.graphql", "contents": "" }, "endpointUri": "https://demo.google.com/graphql" } }, "code": null, "request_id": "640336173", "error_code": null }
Dokumentacja referencyjna interfejsu API jest renderowana z dokumentu i dodawana do strony interfejsów API w portalu.
Pobieranie dokumentacji interfejsu API
Aby pobrać dokumentację interfejsu API:
Interfejs użytkownika
curl
Aby pobrać dokumentację interfejsu API za pomocą funkcji get documentation:
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. API_DOC z wygenerowanym
id
dokumentu. Na przykład:399668
. Aby znaleźć tę wartość, użyj polecenia list API docs.Ładunek odpowiedzi:
{ "status": "success", "message": "ApiDocDocumentation returned", "data": { "oasDocumentation": { "spec": { "displayName": "mock", "contents": "b3BlbmFwaTogMy4wLjAKaW5mbzoKICBkZXNjcmlw ..." }, "format": "YAML" }, "graphqlDocumentation": null }, "code": null, "request_id": "269996898", "error_code": null }
Gdzie:
contents
: zakodowany w formacie base64 ciąg znaków z dokumentacją interfejsu API.
Usuwanie dokumentacji interfejsu API
Aby usunąć dokumentację interfejsu API:
Interfejs użytkownika
- Uzyskaj dostęp do katalogu interfejsów API.
- Kliknij kartę Interfejsy API, jeśli nie jest jeszcze wybrana.
- Kliknij wiersz interfejsu API, który chcesz edytować.
- Kliknij Edytuj.
- W panelu Dokumentacja interfejsu API wybierz Brak dokumentacji.
- Kliknij Zapisz.
curl
Aby usunąć istniejące treści, użyj interfejsu update API:
curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apidocs/API_DOC/documentation" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{}'
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
API_DOC z wygenerowanym
id
dokumentu. Na przykład:399668
. Aby znaleźć tę wartość, użyj polecenia list API docs.
Ładunek odpowiedzi:
{ "status": "success", "message": "ApiDocDocumentation updated", "data": { "oasDocumentation": null, "graphqlDocumentation": null }, "code": null, "request_id": "304329676", "error_code": null }
Zarządzanie kategoriami służącymi do znajdowania powiązanych interfejsów API
Otaguj interfejs API za pomocą kategorii, aby umożliwić deweloperom aplikacji odkrywanie powiązanych interfejsów API na stronie interfejsów API w portalu na żywo. Dodawaj kategorie i zarządzaj nimi zgodnie z opisem w kolejnych sekcjach.
Odkrywaj kategorie
Aby wyświetlić interfejsy API w portalu, użyj interfejsu użytkownika lub polecenia curl
.
Interfejs użytkownika
Aby wyświetlić stronę Kategorie:
- Kliknij Opublikuj > Portale, a następnie wybierz swój portal.
- Na stronie głównej portalu kliknij Katalog interfejsów API.
Możesz też wybrać Katalog interfejsów API w menu portalu w górnym pasku nawigacji.
- Kliknij kartę Kategorie.
Karta Kategorie w katalogu interfejsu API zawiera listę kategorii zdefiniowanych dla Twojego portalu.
Jak widać na poprzednim rysunku, na stronie Interfejsy API możesz:
- Wyświetlanie kategorii i interfejsów API, do których zostały one przypisane
- Dodaj kategorię
- Edytowanie kategorii
- Usuwanie kategorii
- zarządzać interfejsami API opublikowanymi w Twoim portalu; Zapoznaj się z katalogiem interfejsów API
curl
Aby wyświetlić kategorie:
curl -X GET "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories" \ -H "Authorization: Bearer ACCESS_TOKEN"
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
Ładunek odpowiedzi:
{ "status": "success", "message": "all ApiCategory items returned", "data": [ { "id": "e0518597-ece2-4d7d-ba7c-d1793df0f8db", "siteId": "my-org-myportal", "name": "My Category" }, { "id": "61c1014c-89c9-40e6-be3c-69cca3505620", "siteId": "my-org-myportal", "name": "test2" } ], "code": null, "request_id": "1263510680", "error_code": null }
Gdzie:
-
id
: identyfikator elementu kategorii. Na przykład:61c1014c-89c9-40e6-be3c-69cca3505620
.
Dodawanie kategorii
Dodaj kategorię na jeden z tych sposobów:
- Podczas dodawania interfejsu API do portalu wpisz nazwę kategorii.
- Ręczne dodawanie kategorii w sposób opisany poniżej
Nowa kategoria zostanie dodana do strony Kategorie i będzie dostępna podczas dodawania lub edytowania innych interfejsów API.
Aby dodać kategorię, użyj interfejsu lub polecenia curl
:
Interfejs użytkownika
Aby ręcznie dodać kategorię:
- Otwórz stronę Kategorie.
- Kliknij + Dodaj.
- Wpisz nazwę nowej kategorii.
- Opcjonalnie wybierz co najmniej 1 interfejs API, który chcesz dodać do tej kategorii.
- Kliknij Utwórz.
curl
Aby dodać kategorię:
curl -X POST "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"name": "CATEGORY_NAME" }'
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
-
CATEGORY_NAME z nazwą kategorii. Na przykład:
demo-backend
.
Ładunek odpowiedzi:
{ "status": "success", "message": "API category created", "data": { "id": "61de810e-b48b-4cc1-8f22-959038aadcce", "siteId": "my-org-myportal", "name": "demo-backend" }, "code": null, "request_id": "363146927", "error_code": null }
Edytowanie kategorii
Aby edytować kategorię, użyj interfejsu lub polecenia curl
:
Interfejs użytkownika
Aby edytować kategorię:
- Otwórz stronę Kategorie.
- Kliknij Edytuj.
- Zmień nazwę kategorii.
- Dodawanie i usuwanie tagów API.
- Kliknij Zapisz.
curl
curl -X PATCH "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories/CATEGORY_ID" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"name": "CATEGORY_NAME" }'
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
CATEGORY_ID z identyfikatorem kategorii. Na przykład:
bf6505eb-2a0f-47af-a00a-ded40ac72960
. Kolejne identyfikatory kategorii oddziel przecinkami. Aby poznać identyfikator kategorii, użyj polecenia list API categories. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
-
CATEGORY_NAME z nazwą kategorii. Na przykład:
demo-backend
.
Ładunek odpowiedzi:
{ "status": "success", "message": "ApiCategory updated", "data": { "id": "61de810e-b48b-4cc1-8f22-959038aadcce", "siteId": "my-org-myportal", "name": "demo-backend-test" }, "code": null, "request_id": "1976875617", "error_code": null }
Usuwanie kategorii
Gdy usuniesz kategorię, zostaną też usunięte wszystkie tagi interfejsu API powiązane z nią.
Aby usunąć kategorię, użyj interfejsu lub polecenia curl
:
Interfejs użytkownika
Aby usunąć kategorię:
- Otwórz stronę Kategorie.
- Umieść kursor nad kategorią, którą chcesz edytować, aby wyświetlić menu działań.
- Kliknij Usuń.
- Kliknij Usuń, aby potwierdzić.
curl
curl -X DELETE "https://api.enterprise.apigee.com/v1/organizations/ORG_NAME/sites/SITE_ID/apicategories/CATEGORY_ID" \ -H "Authorization: Bearer ACCESS_TOKEN" \ -H "Content-Type: application/json"
Zastąp następujące elementy:
-
ORG_NAME nazwą organizacji. Na przykład:
my-org
. -
SITE_ID z nazwą portalu w formacie
ORG_NAME-PORTAL_NAME, gdzie ORG_NAME to nazwa organizacji, a PORTAL_NAME to nazwa portalu w postaci wyłącznie małych liter bez spacji i myślników. Na przykład:
my-org-myportal
. -
CATEGORY_ID z identyfikatorem kategorii. Na przykład:
bf6505eb-2a0f-47af-a00a-ded40ac72960
. Aby poznać identyfikator kategorii, użyj polecenia list API categories. - ACCESS_TOKEN z tokenem uwierzytelniania używanym do uzyskiwania dostępu do interfejsu Apigee Edge API. Więcej informacji o uwierzytelnianiu i tokenach znajdziesz w artykule Uwierzytelnianie dostępu do interfejsu Edge API.
Ładunek odpowiedzi:
{ "status": "success", "message": "ApiCategory deleted", "data": { }, "code": null, "request_id": "2032819627", "error_code": null }
Rozwiązywanie problemów z opublikowanymi interfejsami API
W następnych sekcjach znajdziesz informacje, które pomogą Ci rozwiązać konkretne problemy z naszych opublikowanych interfejsów API.
Błąd: nie udało się pobrać błędu zwróconego podczas korzystania z interfejsu API Try this
Jeśli podczas korzystania z narzędzia Wypróbuj ten interfejs API zostanie zwrócony błąd TypeError: Failed to fetch
, sprawdź te możliwe przyczyny i rozwiązania:
W przypadku błędów związanych z mieszanymi treściami może być on spowodowany znanym problemem z interfejsem swagger-ui. Jednym z możliwych obejść jest określenie protokołu HTTPS przed HTTP w definicji
schemes
w dokumencie OpenAPI. Na przykład:schemes: - https - http
W przypadku błędów związanych z ograniczeniami współdzielenia zasobów pomiędzy serwerami z różnych domen (CORS) sprawdź, czy CORS jest obsługiwany przez Twoje serwery proxy API. CORS to standardowy mechanizm umożliwiający żądania z innych źródeł po stronie klienta. Zapoznaj się z artykułem Konfigurowanie serwera proxy interfejsu API na potrzeby usługi Wypróbuj ten interfejs API.
Błąd: nagłówek „Access-Control-Allow-Origin” zawiera wiele wartości „*, *”, ale dozwolona jest tylko jedna
Jeśli nagłówek Access-Control-Allow-Origin
już istnieje, podczas korzystania z funkcji Wypróbuj ten interfejs API możesz zobaczyć taki komunikat o błędzie:
The Access-Control-Allow-Origin header contains multiple values '*, *', but only one is allowed.
Aby naprawić ten błąd, zmodyfikuj zasadę AssignMessage, aby używała funkcji <Set>
do ustawiania nagłówków CORS zamiast funkcji <Add>
, jak pokazano w wycinekcie poniżej.
Więcej informacji znajdziesz w sekcji Błąd CORS : nagłówek zawiera kilka wartości „*, *”, ale dozwolona jest tylko jedna.
<AssignMessage async="false" continueOnError="false" enabled="true" name="add-cors"> <DisplayName>Add CORS</DisplayName> <FaultRules/> <Properties/> <Set> <Headers> <Header name="Access-Control-Allow-Origin">{request.header.origin}</Header> <Header name="Access-Control-Allow-Headers">origin, x-requested-with, accept, content-type, authorization</Header> <Header name="Access-Control-Max-Age">3628800</Header> <Header name="Access-Control-Allow-Methods">GET, PUT, POST, DELETE</Header> </Headers> </Set> <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables> <AssignTo createNew="false" transport="http" type="response"/> </AssignMessage>
Błąd: niedozwolone pole nagłówka żądania
Jeśli podczas korzystania z testowania interfejsu API pojawi się błąd Request header field not allowed
podobny do tego poniżej, może być konieczne zaktualizowanie nagłówków obsługiwanych przez zasady CORS. Na przykład:
Access to XMLHttpRequest ... has been blocked by CORS policy: Request header field content-type is not allowed by Access-Control-Allow-Headers in preflight response
W tym przykładzie musisz dodać nagłówek content-type
do sekcji Access-Control-Allow-Headers
w zasadzie CORS przypisywania wiadomości, zgodnie z opisem w artykule
Dołączanie zasady dodawania CORS do nowego interfejsu API.
Błąd: odmowa dostępu podczas wywoływania serwera proxy interfejsu API przy użyciu OAuth2
Polityka OAuthV2 Apigee zwraca odpowiedź tokena, która zawiera pewne właściwości niezgodne z RFC. Na przykład zamiast wartości zgodnej z RFC, czyli Bearer
, polityka zwróci token o wartości BearerToken
.
Ta nieprawidłowa odpowiedź token_type
może spowodować błąd Access denied
podczas korzystania z Testowania interfejsu API.
Aby rozwiązać ten problem, możesz utworzyć zasadę JavaScript lub AssignMessage, aby przekształcić dane wyjściowe zasady w zgodny format. Więcej informacji znajdziesz w artykule zachowanie niezgodne z RFC.