...
URI | Method | Request Parameters | Request Body | Response Body | Authorization | Notes |
---|---|---|---|---|---|---|
/challenge | POST | -- | Challenge | Challenge | CREATE permission required in referenced project | |
/entity/{projectId}/challenge | GET | -- | -- | Challenge | READ permission required in project | |
/challenge | GET | participantId | -- | PaginatedList<ChallengeSummary> | PUBLIC | returns the projects/challenges for which 'participantId' is registered. |
/challenge/{id} | PUT | -- | Challenge | -- | UPDATE permission required in referenced project | |
/challenge/{id} | DELETE | -- | -- | -- | DELETE permission required in referenced project | |
/challenge/{id}/participant | GET | limit, offset, affiliated | PaginatedList<UserGroupHeader> | Return challenge participants. If affiliated=true, return just participants affiliated with some registered Team. If false, return those affiliated with no Team. If missing return all participants. | ||
/challenge/{id}/challengeTeam | POST | -- | ChallengeTeam | ChallengeTeam | Must be a member of the Participant Team and be an admin on the referenced Challenge Team. | |
/evaluation/{id}/challengeTeam | POST | -- | ChallengeTeam | ChallengeTeam | Must be a member of the Participant Team and be an admin on the referenced Challenge Team. | The service 'looks up' the Challenge associated with the given evaluation and then associates the Team with that challenge. Does nothing if there is no Challenge or if the Team is already registered. |
/challenge/{id}/challengeTeam/{challTeamId} | GET | -- | -- | ChallengeTeam | Must have READ permission in the Challenge Project. | We defer implementation of this since there is no immediate use case. |
/challenge/{id}/challengeTeam | GET | limit, offset | -- | PaginatedList<ChallengeTeam> | Must have READ permission in the Challenge Project. | |
/challenge/{id}/registratableTeam | GET | limit, offset | -- | PaginatedList<Team> | Must have READ permission in the Challenge Project. | Returns the Teams which are NOT registered for the challenge and on which is current user is an ADMIN. |
/challenge/{id}/challengeTeam/{challTeamId} | PUT | -- | ChallengeTeam | ChallengeTeam | Must be a member of the Participant Team and be an admin on the referenced Challenge Team. | |
/challenge/{id}/challengeTeam/{challTeamId} | DELETE | -- | -- | -- | Must be an admin on the referenced Challenge Team. | |
/challenge/{id}/submissionTeams | GET | principalId, limit, offset | -- | PaginatedList<SubmissionTeam> | Must be the user specified by 'principalId' or be a Synapse Admin | Returns a list of Teams either (1) on whose behalf the user is eligible to submit or (2) on whose behalf the user WOULD be eligible to submit if the Team has been registered for the Challenge, and which the User CAN register for the Challenge. |
/evaluation/submission | POST | etag, teamId, teamStateHash | Submission | Submission | Must have SUBMIT permission in the Evaluation referenced in the Submission. | If teamId is included then a TeamState object is created for the Submission. If 'contributer' list is not empty then teamId is required and Submission is rejected if submitter or any specified contributers is not on the given team. If teamStateHash is included then teamId must also be included and submission will be rejected if computed TeamState does not match hash. Notifications sent to all contributers except for submitter, with instructions for opting out. |
evaluation/submission/{id}/contributor/{principalId} | POST | -- | -- | Administrative Service | Adds the given user as a contributor to the Submission. | |
/evaluation/submission/{id}/optOut | PUT | userId | -- | -- | userId must be the one making the request .(or be a Synapse Administrator) | Sets 'optOut' field for given userId in the Submission. userId must be a contributer in the Submission (not the submitter himself) and Submission must not be in one of the Evaluation's 'optOutDisallowed' states. |
/evaluation/{evaluationId}/teamState/{teamId} | GET | -- | -- | TeamState | user making the request must have SUBMIT permission in the Evaluation and must be eligible to submit on behalf of the specified Team. | |
/user/{id}/team | GET | limit, offset, isAdmin | -- | PaginatedResults<Team> | PUBLIC | Add 'isAdmin' query parameter to the existing query to get the teams a user is on. This optional filter reduces the results to just those teams on which the user is an administrator. |