Web API routing to another endpoint

thomasm1948
thomasm1948 used Ask the Experts™
on
Is there a way to route an API post to another external API endpoint.

I work for a franchisor and our franchisees opt in to utilizes the different tools and services to run their franchise.

 I have a situation where we have an exclusive API access to one of our vendors web applications (its very similar to a CRM but it also has employees scheduling, etc).  This API grants us access to all of our franchisees data.

We have another vendor that offers drip marketing to our franchisees.  They do not work with all of our franchisees.  

I need to give the drip marketing vendor access to the CRM API but only for the franchisees that they work with.  The only way that IU can think of doing this is to:

 - Create a database that contains a list of franchisees that they have access to
 - Create different Queuing Tables for the different POST request.
 - Create a custom app process the POST request (run every minute to see if their are new request) .
 - For GET request.  The CRM vendor gave us access to an AWS Athena database and we are able to download all of the required data to our SQL Server.  The data is 24 hours old

I have setup a WebAPI (Microsoft WebAPI) for the Get request and everything works well.  I have also created the above and custom app.  But I think I am going down the wrong path by creating the Queuing tables being that I would also have to create a separate log to report on the errors.  The Marketing vendor will not know if there are errors on our end while trying send their request to the CRM vendor.

So this is why I am wondering if there is a way that I get API request from the vendor, validate the franchise number and then just send it to the CRM vendor API.  From their pass all API responses back to the Marketing vendor
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Yes, there is a way.
You have to use an API gateway for this issue. There are several solutions out there, including APIGee, Kong and more.
I suggest using the AWS API Gateway service.
AAG allows you to define different endpoints for different paths and verbs, as well as having a custom user validation hook.
The endpoints can be AWS Lambda functions, or any servers in or out of AWS.
I love the integration with serverless lambdas. In fact, that's exactly how our company's partner API works.

Author

Commented:
Thank you for all of your help.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial