Last modified by Erik Bakker on 2024/09/02 16:11

From version 21.1
edited by Erik Bakker
on 2022/06/13 13:38
Change comment: Deleted image "fundamental-api-gateway-introduction-3.png"
To version 11.1
edited by eMagiz
on 2022/06/13 09:33
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,0 @@
1 -eMagiz API Gateway
Parent
... ... @@ -1,1 +1,0 @@
1 -WebHome
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ebakker
1 +XWiki.marijn
Content
... ... @@ -1,19 +1,33 @@
1 -{{container}}{{container layoutStyle="columns"}}(((
1 +{{html wiki="true"}}
2 +<div class="ez-academy">
3 + <div class="ez-academy_body">
4 +<div class="doc">
5 +
6 +
7 +
8 += eMagiz API Gateway =
9 +
2 2  In this microlearning, we will introduce the essential concepts of the eMagiz API Gateway. The focus will be to address the fundamental concepts of this pattern. Please refer to other Fundamentals to learn more about related items and look at the relevant microlearnings available to learn how to configure an API Gateway in eMagiz.
3 3  
4 4  Should you have any questions, please get in touch with academy@emagiz.com.
5 5  
14 +* Last update: November 10th, 2021
15 +* Required reading time: 10 minutes
16 +
6 6  == 1. Prerequisites ==
7 7  * Some context on API Management will be helpful.
8 8  
20 +
9 9  == 2. Key concepts ==
10 10  All concepts are discussed in the section below.
11 11  
24 +
25 +
12 12  == 3. Introducing API Gateway ==
13 13  
14 14  The eMagiz API Gateway is the pattern in which a specific entry point is made available for external applications (users). These external applications can connect to this entry point via a series of operations. These operations are listed in a manner that allows this application user to retrieve data or provide data. Users & Roles are managed on a central level to control access to the various data sources.
15 15  
16 -[[image:Main.Images.Fundamental.WebHome@fundamental-api-gateway-introduction-1.png]]
30 +<p align="center">[[image:fundamental-api-gateway-introduction-1.png||]]</p>
17 17  
18 18  === 3.1 Entry point for application users ===
19 19  The entry point is a REST/JSON-based web service publicly accessible via the eMagiz Cloud for external application users. There is no other type of web service possible, and all the operations inside this web service are all REST/JSON based. In eMagiz, this concept translates into an All Entry flow type.
... ... @@ -21,16 +21,16 @@
21 21  === 3.2 Operations ===
22 22  An operation is defined as an entry point in the API Gateway that allows a specific type of interaction with the data exposed. For instance, a user wants to get the data for a particular order or create an order via this entry point. In this example, there will be a GET Order and a POST Order operation. The traditional HTTP operations, such as GET, POST, and PUT, are possible * see the below figure for the complete list.
23 23  
24 -[[image:Main.Images.Fundamental.WebHome@fundamental-api-gateway-introduction-2.png]]
38 +<p align="center">[[image:fundamental-api-gateway-introduction-2.png||]]</p>
25 25  
26 26  === 3.3 API Providers & Transformation ===
27 27  There is a specific system connected to the operation for every operation, which gets the data or processes the data. That system, application, or service is geared towards that specific piece of data and may have its connectivity requirements, security requirement, or data structure. eMagiz will create a particular Exit Gate Flow type so that all these requirements can be appropriately handled. The figure below the Control Tower, Exact, AFAS, and Address validator are the API providers.
28 28  
29 -[[image:Main.Images.Fundamental.WebHome@fundamental-api-gateway-introduction-4.png]]
43 +<p align="center">[[image:fundamental-api-gateway-introduction-4.png||]]</p>
30 30  
31 31  Each operation can have a Gateway Message and a System message for the specific API. In this way, standard eMagiz transformation tooling is made available to handle content and format transformations in the API Gateway.
32 32  
33 -[[image:Main.Images.Fundamental.WebHome@fundamental-api-gateway-introduction-5.png]]
47 +<p align="center">[[image:fundamental-api-gateway-introduction-5.png||]]</p>
34 34  
35 35  === 3.4 Interaction type & error handling ===
36 36  The API Gateway follows a synchronous pattern which means there is always a request being made to the web service, and that same web service will always provide you with a response. The web service will wait until the backend system delivering the response is ready to send that response.
... ... @@ -45,14 +45,17 @@
45 45  === 3.6 API Disovery ===
46 46  External application users can discover the operations via an online Portal * the SwaggerUI technology is used for that purpose. In that online section, the user can see all the published operations. For operation, all the required information is displayed to understand how to connect to the API correctly. That includes the request and response definitions, parameters, naming, response codes, and many more. Once the credentials have been provided, the application user can try out the operation.
47 47  
48 -[[image:Main.Images.Fundamental.WebHome@fundamental-api-gateway-introduction-3.png]]
62 +<p align="center">[[image:fundamental-api-gateway-introduction-3.png||]]</p>
49 49  
64 +
50 50  === 3.6 Architectural components ===
51 51  
52 52  A simplified picture below illustrates the overall architecture of API Gateway in the eMagiz Cloud.
53 53  
54 -[[image:Main.Images.Fundamental.WebHome@fundamental-api-gateway-introduction-6.png]]
69 +<p align="center">[[image:fundamental-api-gateway-introduction-6.png||]]</p>
55 55  
71 +===== Practice =====
72 +
56 56  == 4. Key takeaways ==
57 57  
58 58  * API Gateway can serve as a single entry point for all external or intern application users
... ... @@ -60,17 +60,24 @@
60 60  * API Gateway is a synchronous pattern by default
61 61  * API Gateway leverages the standard capability of eMagiz around deployment, transformation, and business owner interaction
62 62  
80 +
81 +
63 63  == 5. Suggested Additional Readings ==
64 64  
65 -* [[API Gateway Introduction>>https://www.emagiz.com/en/api-gateway-en/||target="blank"]]
66 -* [[Crashcourse API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Crash Course.Crash Course API Gateway.WebHome||target="blank"]]
67 -* [[API Management>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.API Management.WebHome||target="blank"]]
68 -* [[Transformations in API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Configuring the API Gateway.WebHome||target="blank"]]
69 -* [[Testing the API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Intermediate Level.Testing API Gateway.WebHome||target="blank"]]
70 -* [[Advanced config API Gateway>>doc:Main.eMagiz Academy.Microlearnings.Advanced Level.API Management.WebHome||target="blank"]]
84 +* [API Gateway Introduction](https://www.emagiz.com/en/api-gateway-en/)
85 +* [Crashcourse API Gateway](../microlearning/crashcourse-api-gateway-index.md)
86 +* [API Management](../microlearning/intermediate-api-management-index.md)
87 +* [Transformations in API Gateway](../microlearning/intermediate-configuring-the-api-gateway-index.md)
88 +* [Testing the API Gateway](../microlearning/intermediate-testing-emagiz-api-gateway-index.md)
89 +* [Advanced config API Gateway](../microlearning/advanced-api-management-index.md)
71 71  
91 +
72 72  == 6. Silent demonstration video ==
73 73  
74 -{{video attachment="fundamental-api-gateway-introduction.mp4" reference="Main.Videos.Fundamental.WebHome"/}}
94 +<iframe width="1280" height="720" src="../../vid/fundamental/APIGW_Fundamental.mp4" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
75 75  
76 -)))((({{toc/}}))){{/container}}{{/container}}
96 +
97 +</div>
98 +</div>
99 +</div>
100 +{{/html}}
fundamental-api-gateway-introduction-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.ebakker
Size
... ... @@ -1,1 +1,0 @@
1 -13.3 KB
Content
fundamental-api-gateway-introduction-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.marijn
Size
... ... @@ -1,0 +1,1 @@
1 +131.4 KB
Content
fundamental-api-gateway-introduction-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.marijn
Size
... ... @@ -1,0 +1,1 @@
1 +21.2 KB
Content
fundamental-api-gateway-introduction-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.marijn
Size
... ... @@ -1,0 +1,1 @@
1 +125.9 KB
Content