Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Previously, we have implemented the initial version of Update Challenge Endpoint (PUT /v3/challenges/{id}). But in order to use this API, you need to provide the same set of input as Create Challenge API, which means you have to provide a lot of information, even they are not changed.

For this challenge, we'd like to improve the Update Challenge API to make most input optional, so we only need to provide the information that needs to be changed. For example, when trying to update a F2F challenge, it requires a milestone id, but F2F challenge is not required to set the milestone.

The idea way for update is it should first retrieve the data from database, then update the needed part, and save again to database.

General Requirements

1. Properly Update the logic for Update Challenge API to do Delta-Update
2. Update the swagger.yaml to describe the input as optional to reflect your changes.
3. Update the Postman Script to cover the functional testing of Update Challenge API

About Local Setup

1. Please following https://github.com/appirio-tech/tc-common-tutorials/tree/master/docker/direct-app to setup the local environment, run `docker-compose up tc-direct-with-volume run-online-review all-challenges-es-feeder`
2. Update the local/run.sh to run the challenge service

Final Submission Guidelines

- Code Changes
- Verification Steps

ELIGIBLE EVENTS:

2017 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30058109