0

I am creating an application that needs to obtain information from multiple APIs and I want to create a standard API that allows me to have access to all the others. just changing from a url to direct me to other APIs.enter image description here

It is something like that, in reality there are more than 500 APIs, but it is an application that I treat that consumes almost 100 at the same time, but since there are many servers that are being asked for information, I think it would be more advisable with an API gateway , to control from a single link

Community
  • 1
  • 1
  • It is not really clear what do you want to achieve. What do you mean under the term *standard API* ? Each API resource at the end is just an url endpoint. And the application can use a single access token to call all API resources it is subscribed to – gusto2 Nov 03 '20 at 20:27
  • Yes, exactly, I mean, I try to make an application that will have access to multiple APIs, but it would be very heavy to incorporate all the URLs of all the APIs, what I try, is how to combine them into one, I was looking and I think that WSO2 does that, But I do not know how to do it. – joseluis villarreal Nov 03 '20 at 20:38
  • Yes, an api gateway is doing that - having a single gateway service with unified authentication and authorization. Your question is still very broad. With WSO2 APIM you should configure separate api definition for each backend service. What is not clear beyond the wso2 [documentation](https://wso2.com/library/articles/introducing-wso2-api-manager-3.2/)? – gusto2 Nov 03 '20 at 21:01
  • mmm if I understand you, that is, from the api manager, I add all the apis to use and from there you can create a URL, which will be able to manage them all, that is, have access to it, from the URL that WSO2 creates for me? – joseluis villarreal Nov 03 '20 at 21:09
  • `have access to it, from the URL that WSO2 creates for me` yes, that's the idea. The APIM works as a smarter proxy. However it is not clear what is your question, what are you struggling with. "how do I do that" is very abstract to answer, you haveto do it yourself and then ask more specific question – gusto2 Nov 04 '20 at 10:26

1 Answers1

1

From what you have explained, it seems like there are two main use-cases here

  1. Have a single proxy to multiple backend services

Even though only the APIM is enough, the ideal approach here is to have a separate integration layer which is WSO2 EI. Inside WSO2 EI, you can use clone mediator to clone a single request and send it to multiple backends and then when all the requests are completed the aggregate mediator can be used to combine all the responses and send back to the client.

  1. Use dynamic backend URLs

Dynamic Endpoints can be configured on WSO2 APIM and with that approach, APIM has the capability to decide the backend endpoint, on the runtime.

In case, the use-cases which have on your mind are a bit different to what I have explained here, similarly, you can achieve that by a mediation sequence but whether you want to have a separate integration layer or just an APIM layer is enough have to be decided by closely analyzing the use-cases.

rnavagamuwa
  • 310
  • 2
  • 11