Challenge Overview
Welcome to “Poseidon Backend Mock API Challenge”. In this challenge, we would like to create tooling that generates mocked versions of the APIs based on Swagger or WSDL files.
Project Overview
The project objective is to build an SDK for the Loyalty Payment Card(LPC) for our client. This SDK will be used by LPC’s clients to build the LPC mobile app.
So the SDK will provide all required functionalities from authentication to payment processing, reward management, etc.
Since we need to interact with multiple vendors and also provide our APIs to multiple partners we need a easy way to generate and host mock APIs based on API definitions.
Technology Stack:
-
Node.js 12+
-
SOAP (WSDL)
-
Swagger
-
Docker
Individual Requirements:
-
The tooling we want to develop should look at a set of swagger or WSDL files and generate mock service code for each of them. On each update of the swagger/WSDL file, it should recreate the services.
-
Create a docker-compose file for each of the services code generated that will start a backend service that will use the updated swagger file and create a mocked version of the APIs that are defined in the swagger/WSDL.
-
It should be generic enough to handle different formats of WSDL files
-
Authorization token can be ignored in mocked version
-
-
Docker container should be as generic as possible, which means that if the swagger file or WSDL gets updated the mocked backend should be updated.
-
The sample swagger file of our current code and another sample WSDL file will be provided in the forum.
Final Submission Guidelines
-
Detailed documentation on how to setup the code
-
Source code