Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: since we haven't planned on how any user find a ResearchProject, let's leave out changing its ownership.

...

ResearchProject
String id
String accessRequirementId
String institution
String projectLead
String intendedDataUseStatement
String ownerId
String createdBy
Long createdOn
String modifiedBy
Long modifiedOn

...

After a ResearchProject is created, only the owner creator can make changes to a ResearchProject. The owner can also change the ownership of a ResearchProject by changing the ownerId value to another userId that has been granted access to the dataset under the same ResearchProject. After taking over the ResearchProject, a user would have the same permissions with the DataAccessRequest's creator.

DataAccessRequest implements DataAccessRequestInterface
String id
String accessRequirementId
String createdBy
Long createdOn
String researchProjectId
List<String> accessors
String ducFileHandleId
String irbFileHandleId
List<String> attachments
String modifiedBy
Long modifiedOn

...


ActionIntended UserURIMethodRequest ParamsRequest BodyResponse Body
1create a ResearchProjectSynapse User/researchProjectPOST
ResearchProjectResearchProject
2retrieve a ResearchProjectownercreator/accessRequirement/{id}/researchProjectGET

ResearchProject
3update a ResearchProjectownercreator/researchProject/{id}PUT
ResearchProjectResearchProject
4transfer ownership of a ResearchProjectownercreator, ACT/researchProject/{id}/updateOwnerPUT
ChangeOwnershipRequestResearchProject
5create a DataAccessRequestSynapse User/dataAccessRequestPOST
DataAccessRequestDataAccessRequest
6retrieve the current DataAccessRequestcreator, ResearchProject's owner/accessRequirement/{id}/dataAccessRequestGET

DataAccessRequestInterface
7asking the server for a suitable request object to start withSynapseUser/accessRequirement/{id}/dataAccessRequestForUpdateGET

DataAccessRequestInterface
8update a DataAccessRequestcreator, ResearchProject's owner/dataAccessRequest/{id}PUT
DataAccessRequestInterfaceDataAccessRequestInterface
9submit a DataAccessRequestcreator, ResearchProject's owner/dataAccessSubmissionPOST
DataAccessRequestInterfaceSubmissionStatus
10retrieve the latest DataAccessSubmission's statusrequestor, ResearchProject's owner, accessors/accessRequirement/{id}/submissionStatusGET

SubmissionStatus
11cancel a DataAccessSubmissionrequestor, ResearchProject's owner/dataAccessSubmission/{id}/cancelPUT

SubmissionStatus
12update a DataAccessSubmissionACT/dataAccessSubmission/{id}PUT
SubmissionStatusChangeRequestDataAccessSubmission
13retrieve a list of DataAccessSubmissionACT/accessRequirement/{id}/listSubmissionGETnextPageToken, order, filter (by status)
DataAccessSubmissionPage
14retrieve a list of Approval Status for a given list of AccessRequirementSynapseUser/accessApproval/statusPOST
AccessApprovalStatusRequestAccessApprovalStatusResults

...