Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

DescriptionRestrictionsIntended User / AuthorizationNotification sent toURIMethodRequest ParametersRequest BodyResponse Body

Request verification.

 

Can only request if there isn't already a pending submitted or approved request.

Content must match user profile, emails, ORCID in system at the time the request is made.

Rejected if required fields are blank.

any authorized userACT/verificationSubmissionPOST--VerificationSubmissionVerificationSubmission
Get a list of verification submissions. ACT--/verificationSubmissionGETlimit, offset, userId, state--VerificationSubmissionPaginatedResults
Delete verification request creatoruser who requested verification/verificationSubmission/{id}DELETEreason----
Approve verification Change submission

 

(Must be in 'submitted' state.)

There cannot already be an approved V.S.

ACTuser who requested verification/verificationSubmission/{id}/approvalPUT------

Reject verification submission

 

(Must be in 'submitted' state.)stateAllowed state transitions shown in diagram above.ACTuser who requested verification/verificationSubmission/{id}/rejectionPUT------

Suspend verification submission

 

(Must be in approved state.)ACTuser who requested verification/verificationSubmission/{id}/suspensionPUT   POSTreasonVerificationStateVerificationState

Get UserBundle

If not self or ACT then private fields are cleared.

 Public--/user/{id}/userBundleGET----UserBundle
Link the user ID given by an oauth2 provider to a Synapse account. any authorized user--/oauth2/aliasPOST--

OAuthValidationRequest

PrincipalAlias
Download attachment from verification submission. ACT--

/file/{id}

GET

fileAssociateType *(required)

fileAssociateId (required)

redirect (optional)

*Note we introduce a new fileAssociateType, "VerificationSubmission". 
 download URL
Update UserProfileIf user is verified or there's a submitted verification request then if this request changes the verified fields this will nullify the verification submission.user who owns the profileuser who owns profile/userProfile/{id}PUT--UserProfileUserProfile

...

  • id
  • userId
  • createdOn
  • first name
  • last name
  • organization
  • location
  • ORCID
  • email list
  • attachments (fileHandleIds)
  • state (one of submitted, approved, rejected, suspended)
  • approval (instance of AuditRecord)
  • rejection (instance of AuditRecord)
  • suspension (instance of AuditRecord)

AuditRecord:

  • stateHistory

VerificationState

  • createdBy (only returned if user is in the ACT)
  • createdOn
  • reason (e.g. UserProfile changed wrt V.S., OR ACT initiated the state change)

...

  • hasSignedTOU
  • isACTMember
  • isAdmin
  • userProfile (public fields for public, private fields for owner)
  • ORCID
  • verificationSubmission* ( shown the sole submitted or approved submission, if any.  Shown only for owner or ACT)

'* This is complicated as we have to consider multiple verification submissions to determine the state.