Register
Submit a solution
The challenge is finished.

Challenge Overview

We'd like to add a new endpoint in the member service that allows suggestion by handle, like http://api.topcoder.com/v3/members/_suggest/magra, where "magra" is the token to search.

In order to achieve this, we need to do as following

Update Logstash Config

We have a logstash config that imports member data into Elasticsearch,  Please update the logstash config (ap-member-microservice/local/conf/members-es-conf.j2) to include a suggest by handle when indexing the data: https://www.elastic.co/guide/en/elasticsearch/reference/current/search-suggesters.html

This index already exists in production, please describe steps required to update the existing index. We would rather not have to delete the existing index as it would cause downtime.

Add Support To Access Elasticsearch

Currently member service does not use Elasticsearch, please use jest http client (https://github.com/searchbox-io/Jest) instead of Elasticsearch Java API (transport protocol) to access Elasticsearch. This is important because we will use AWS elastic search, and the Java API is not supported.

Create An Endpoint to Suggest Member Handles

- GET /v3/members/_suggest/{term}
- The result should be a json array of strings wrapped around an ApiResponse object, containing member details returned by the "suggest" search on elasticsearch.
-- Following fields should be returned as part of the response: id, handle, photoURL, firstName, lastName, maxRating
-- Suggest response should contain at most 20 matched members
-- Response metadata should include totalCount

About Local Environment

The related source code and local environment setup guide will be provided in forum for development of this challenge. Please check the forum for detail, and raise earlier if you meet any problem.
 

 

 

 



Final Submission Guidelines

- Code Changes For the new endpoint
- Deployment Guide for updating existing index
- Verification Steps For local environment

ELIGIBLE EVENTS:

2016 TopCoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30054906