Über generische OpenAPI Dokument können verschiedene REST Client automitisiert erstellt werden, z.B. JavaScript, Java oder C#. Das OpenAPI Dokumet ist ein JSON Dokument und beschreibt die API formal.
Um auf das OpenAPI Dokument der AMPAREX Api zuzugreifen dient folgender Link:
https://<host>/amparex/webaxapi/v2/api-docs
oder
http://<host>:8080/amparex/webaxapi/v2/api-docs
Je nach Server muss <host> durch den Server (z.B. preview1) ersetzt werden. Das Ergebnis ist ein JSON Dokument das aus dem Browser kopiert werden muss:
Bitte beachten Sie, dass der Zugriff auf das Open-API Dokument nur auf Testservern funktioniert. |
Dieses JSON Dokument ist die Beschreibung der AMPAREX API und kann z.B. für SwaggerHub verwendet werden.
Nun benötigt man noch das Swagger Tool Swagger-UI um die API zu visualisieren. Dazu sind folgende Schritte nötig:
Eine Test Main Klasse zeigt die Verwendung des Rest Java Clients:
import io.swagger.client.api.ArticlesApi; import io.swagger.client.api.LoginApi; import io.swagger.client.model.*; import java.util.List; public class Main { public static void main(String[] args) throws Exception { // Configuration LoginApi loginApi = new LoginApi(); ApiClient apiClient = loginApi.getApiClient(); apiClient.setBasePath("https://preview8.amparex.net/amparex/webaxapi"); // base path, set hosthere apiClient.setConnectTimeout(3 * 1000); // 3 seconds apiClient.setReadTimeout(30 * 1000); // 30 seconds apiClient.setWriteTimeout(10 * 1000); // 10 seconds // use your user, password and alias here // login and get security token (Bearer token) SecToken secTokenWrap = loginApi.getSecTokenUsingPOST("tester", "tester!8X", "pa-a-ffh6ioqxzje-ceabuy_dtzdvp_h0hwjitjvyls="); String secToken = secTokenWrap.getValue(); // create search query for articles ArticleSearchQuery articleSearchQuery = new ArticleSearchQuery(); articleSearchQuery.setName("Ace"); SearchQueryMetaData searchQueryMetaData = new SearchQueryMetaData(); searchQueryMetaData.setLimit(10); searchQueryMetaData.setPage(1); articleSearchQuery.setMetaData(searchQueryMetaData); // search articles ArticlesApi articlesApi = new ArticlesApi(); apiClient.setApiKey("Bearer " + secToken); ListResultWrapperArticleOverview listResultWrapperArticleOverview = articlesApi.searchArticlesUsingPOST("pa-a-ffh6ioqxzje-ceabuy_dtzdvp_h0hwjitjvyls=",articleSearchQuery); List<ArticleOverview> list = listResultWrapperArticleOverview.getResult(); for (ArticleOverview articleOverview : list) { System.out.println(articleOverview); } } } |