SAMS - programmatic access (API)

Integrate SAMS as an iframe

The SAMS search interface can be readily integrated into hospital information systems as an HTML5 iframe and will return a Phenopacket. No data is stored on our server. Simply include the following code:

<iframe src="https://www.genecascade.org/sams-cgi/enter_phenotype.cgi"
 style="position: fixed; top: 0px; bottom: 0px; right: 0px; width: 100%; border: none;
	margin: 0; padding: 0; overflow: hidden; z-index: 999999; height: 100%;">
</iframe>

When saving data to SAMS's database, SAMS will post messages with the uploaded data encoded 1) in SAMS format and 2) as GA4GH Phenopacket.
The following code in the website embedding the iframe will capture SAMS's output:

HTML
<div id="sams-data">Placeholder for data from SAMS.</div><br>
<div id="sams-phenopacket">Placeholder for Phenopacket from SAMS.</div>
JavaScript
<script>
function addSAMS_data (evt) {
	if (evt.data) {
		let sams_data=document.getElementById("sams-data");
		let phenopacket=document.getElementById("sams-phenopacket");
		if (sams_data) sams_data.innerHTML=evt.data[0];
		if (phenopacket) phenopacket.innerHTML=evt.data[1];
	}
}
window.addEventListener("message", addSAMS_data, false);
</script>
			

See an example implementation on this page. The style parametes can be adjusted to fit your needs.

Programmatic access to SAMS

Linking to SAMS from external systems

Please note that you have to be logged into SAMS in your browser to access your patient data.
In the examples below, replace myPatID, the patient ID (parameter: external_id), with the pseudonomised ID you have given to your patient.

Record and edit a visit

Link to the interface for recording a visit for a specific patient. You may also provide the visit date and details about the patient.
If a patient with the given external ID does not yet exist, it will be created.
If a visit for the given date already exists, you may edit this visit.

Call entry.cgi with mode=visit and your chosen parameters for external_id, sex, consanguinity and visit_date.

Parameters:

Example link:
https://www.genecascade.org/sams-cgi/entry.cgi?external_id=myPatID&sex=m&consanguinity=true&visit_date=2023-07-12&mode=visit

Show patient overview

Link to the overview of all previous visits of a specific patient.

Call entry.cgi with mode=show and your external_id.

Example link:
https://www.genecascade.org/sams-cgi/entry.cgi?external_id=myPatID&mode=show

Export patient record as Phenopacket

Export all recorded visits of a specific patient as a GA4GH Phenopacket in JSON format.

Call export_phenopacket.cgi with your external_id.

Example link:
https://www.genecascade.org/sams-cgi/export_phenopacket.cgi?external_id=myPatID

Integrating SAMS into your sytems

If you are interested in syncing the SAMS patient management functionality with a local patient management system, please contact us at dominik.seelow (at) bih-charite.de, janina.schoenberger (at) bih-charite.de or robin.steinhaus (at) bih-charite.de.