-
Notifications
You must be signed in to change notification settings - Fork 5
Patients
The Patients API accesses and modifies data about patients. The current API has this functionality spread over various endpoints corresponding loosely to who may access this data. In a future version of the API, the endpoints will be standardized according to their function under the "patients" resource.
- v2/admin/patient/{patientId}/dependent
- v2/admin/patient/{patientId}/dependent/{dependentId}/relationship
- v2/admin/patients
- v2/admin/patients/{id}
- v2/admin/patients/onboardEmailSetting
- v2/emails/cousers/invitations
- v2/familygroups/couser
- v2/familygroups/dependents
- v2/patients/{patientId}/familygroup/adults
- v2/patients/{patientId}/familyprofiles/dependents
- v2/patients/couser-tokens/{token}/patient-profile
- v2/patients/familygroup/{patientId}/relationship
- v2/patients/familygroup/adults
- v2/patients/familyprofiles/dependents
- v2/patients/mail/resetPassword
- v2/patients/medicalhistory/{patientId}
- v2/patients/medicalprofile
- v2/patients/medicalprofile/{patientId}
- v2/patients/payments
- v2/patients/profile
- v2/patients/profile/{patientId}
- v2/patients/updateuserprofile
- v2/patients/userprofile
- v2.1/patients/{patientId}/details
- v2.1/patients/authorized-patients
- v2.1/patients/cousers/{patientId}
- v2.1/patients/details
- v2.1/patients/favorite-clinicians
- v2.1/patients/favorite-clinicians/{targetId}
The following endpoints can be considered part of the "Account Management and SSO" category, as well as the "Patients" category. See the "Account Management and SSO" category for how to use these endpoints.
- v2/patients
- v2/patients/couser-tokens/{token}/email
- v2/patients/cousers
- v2/patients/profiles/{patientId}
- v2/patients/single-trip-registration
- v2/patients/single-trip-registration/resend-onboarding-email
Any endpoints that handle administrative functions are also listed under the "Administrative Functions" page.
Use GET v2/admin/patients to determine if a user exists in the system. This endpoint requires physician or administrative permissions to run properly.
Use POST on the following endpoints to create a patient, dependent, or co-user. The administrative functions require physician or administrative permissions to run properly, but patients can add co-users to their profiles themselves.
- Create Patient: POST v2/admin/patients
- Create Dependent: POST v2/admin/patient/{patientId}/dependent
- Create Co-User: POST v2/patients/cousers
Use the following sequence of endpoint calls to handle co-users.
- Use POST v2/familygroups/couser to invite a new co-user to the system.
- Use POST v2/emails/cousers/invitations to send or resend a co-user's invitation email to the system.
- Use POST v2/patients/couser-tokens/{token}/patient-profile to save a co-user's profile.
- Use DELETE v2.1/patients/cousers/{patientId} to deactivate a co-user.
Patients can be authorized to see other patients' information (such as dependents), but not be co-users of their accounts. In those cases, use GET v2.1/patients/authorized-patients to get the authorized people.
Use DELETE v2/admin/patients/{id} to deactivate a patient. This does not remove the patient from the SnapMD system, but it sets its status to "Inactive." This endpoint requires administrative privileges.
- Use POST v2/familygroups/dependents to create a dependent.
- Use PUT v2/patients/familygroup/{patientId}/relationship to update the relationship between a dependent and guardian.
A patient's family group includes family members and dependents, who may also be patients, but may not be.
Use GET on any of the following endpoints to get the adults contained in a patient's family group. The endpoints are not strict aliases, and return information in slightly different ways.
- v2/patients/{patientId}/familygroup/adults
- v2/patients/familygroup/adults
Use GET on any of the following endpoints to get the dependents contained in a patient's family group. The endpoints are not strict aliases, and return information in slightly different ways.
- v2/patients/{patientId}/familyprofiles/dependents
- v2/patients/familyprofiles/dependents
- Use GET or POST v2.1/patients/favorite-clinicians to get or update a patient's preferred physicians.
- Use DELETE v2.1/patients/favorite-clinicians/{targetId} to delete a patient's preferred physician(s).
Use GET v2/patients/medicalhistory/{patientId} to get a patient's medical history.
The following endpoints can create new patient profiles. They are aliases and can do the exact same things, so it is best to use the most recent version, v2.1, for maintenance purposes.
- v2/patients/profile
- v2.1/patients/details
The following endpoints can also access patient profiles, but return a slightly different version of the profile than the endpoints above. The endpoints below are aliases, except for the fact that the v2 endpoint has the ability to delete profiles when called with DELETE, and the v2.1 endpoint does not.
- v2/patients/profile/{patientId}
- v2.1/patients/{patientId}/details
Patient user profiles can be manipulated with the following endpoints. Note that user profiles are not the same as medical profiles.
- Use PUT v2/patients/updateuserprofile to edit a user profile.
- Use GET v2/patients/userprofile to get a user profile.
Patient medical profiles are similar to patient profiles, but hold slightly different information. Use the following endpoints to manipulate them.
- Use POST v2/patients/medicalprofile to create a patient's medical profile.
- Use GET or PUT v2/patients/medicalprofile/{patientId} to access or edit a patient's medical profile.
Use GET or POST v2/patients/payments to get or create a patient's payment profile.
Use POST v2/patients/mail/resetPassword to send and email to a patient to reset their password.