...
Method | Path | Description |
---|---|---|
GET | /v5/studies/{studyId}/consents/signatures | Get all signatures for this study |
GET | /v5/studies/{studyId}/consents/{guid}/signature | Get the signature for a specific consent (is this needed though?) |
POST | /v5/studies/{studyId}/consents/{guid}/signature | Sign this consent. If this is the required consent, enroll caller in study |
DELETE | /v5/studies/{studyId}/consents/{guid}/signature | Withdraw consent. If this is the required consent, withdraw the user from the study (delete enrollment record). |
POST | /v5/studies/{studyId}/consents/{guid}/signature/send | Send a copy of the consent to the caller via email or SMS. We propose to disable sending by default, as it is now rarely used. |
DELETE | /v5/studies/{studyId}/consents/signatures | Withdraw this caller entirely from the study, deleting the enrollment record |
Sign-In Workflow
This would be the new workflow around signing in to a Bridge app:
Once authenticated, we would load enrollment records. If there is an enrollment record, the user is signed in with no further steps needed (session v2 is constructed and returned with a status of 200);
If there are no enrollment records, we look at the apps consent version. In v1 we proceed as before. In v2, we return the same session as in step #1, but with a v1 session and a 412 response);
The client should know what study the user should be enrolled in, but if they don’t, there is a list of studies API that can be used to present options to the user;
The user goes through the consent for a study, and signs its required consent, adding an enrollment record to that user’s session;
Calls to participant-facing endpoints no longer return 412 (consented == enrollments.length > 0).
Enrollments
Rather than loading and examining consent signatures to determine active enrollees in a study, there will be an enrollment record when an account is actively enrolled in a study. When consent is withdrawn, the enrollment record will be set a flag and behave like a logically deleted record. These records allow us to quickly determine the participant’s status, and they answer two questions for governance: how many people have we enrolled in the study, and how many have been withdrawn from the study? (Note that the questions I received from Vanessa also include “how many people have you removed from the study” which we’ll need to consider.)
...