Challenge Overview
Challenge Objectives
-
In this challenge, we are looking to add new endpoints for device lookup.
Project Background
The lookup api aims to provide an api to be used across Topcoder’s front end apps that provide a consistent set of results for actions such as looking up countries, educational institutions, devices and others.
Technology Stack
-
Nodejs version 10
-
Dynamodb
-
Elasticsearch 7.1
Assets
Repo : https://github.com/topcoder-platform/lookups-api
Branch : develop
Note : Environment variables will be shared in the forum
Individual Requirement
Currently we have /v5/lookups/devices which returns the array of devices based on Device
Based on this model we need to add two endpoints as described below
1. Develop endpoint DeviceType which will return all device type in the form of array.
GET /v5/lookups/devices/types
Response : return unique list of device types as string
[ "Desktop",
"Laptop",
“Mobile”,
"Console”
]
2. Develop endpoint manufacturer which will take parameter deviceType, and based on the device type it will return all manufacturer .GET /v5/lookups/devices/manufacturers?type=<mobile>
[ "Acer",
"Apple",
“Samsung”,
"Console”
]
3. Update swagger and Postman for newly added endpoint accordingly.
4. Update the Unit and E2E test for for newly added endpoint accordingly and maintain the code coverage.Purposed UI : Please go through marvelapp
Important Notes
-
Follow existing coding conventions.
-
Ensure your app does not have any lint errors.
Final Submission Guidelines
-
Submit a git patch for the repo (develop branch).
-
A guide on how to apply patch