Terms of Use
1. OFFICE OF THE NATIONAL COORDINATOR FOR HEALTH INFORMATION TECHNOLOGY (“ONC”)
2. ACCEPTING THE TERMS
a. Legal Age
You represent and warrant that you are at least 18 years of age and that you possess the legal right and ability to agree to these Terms and to use the TRIMED FHIR API in accordance with these Terms.b. Entity Level Acceptance
If you are using the TRIMED FHIR API on behalf of an entity, you represent and warrant that you have authority to bind that entity to the Terms and by accepting the Terms, you are doing so on behalf of that entity (and all references to “you” in the Terms refer to that entity).3. CHANGES
a. Changes To TRIMED FHIR API
TRIMED may modify or update the TRIMED FHIR API from time to time. We will try to ensure, as far as possible, that future version(s) of the TRIMED FHIR API are backwards compatible with at least the most recent previous version, but cannot guarantee that this will always be possible. You should adapt your app to use the most up-to-date version of the TRIMED FHIR API promptly following release by TRIMED.b. Changes To TRIMED FHIR API Terms of Use
TRIMED may change and update these Terms from time to time, and will publish any changes on this page. Make sure to check this page for any updates. Your continued use of the API after any such changes constitutes your acceptance of the new terms. If you are unable to comply with any amended version of the Terms, you should stop use of the TRIMED FHIR API immediately.4. RESPONSIBILITIES AND REPRESENTATIONS
a. Compliance
You agree to comply with all applicable laws, rules and regulations relating to the use of the TRIMED FHIR API.b. Registeration
You agree to register your app with a PRACTICE that has implemented the TRIMED FHIR API. You represent and warrant that the registration information you provide to PRACTICE is accurate.c. Privacy Policy
You agree to provide and comply with a publicly accessible privacy policy.5. MEDICAL PRACTICE
6. TRIMED FHIR API RESTRICTIONS
a. Sell, lease or sublicense the TRIMED FHIR API or any data derived through the TRIMED FHIR API
b. Reverse engineer or attempt to extract the source code from any API or any related software, except to the extent that this restriction is expressly prohibited by applicable law.
c. Perform an Action with the intent of introducing to the TRIMED FHIR API any viruses, defects, malware, or any items of a destructive nature.
d. Interfere with or disrupt the TRIMED FHIR API or the servers or networks providing the TRIMED FHIR API.
7. TRIMED FHIR API LIMITATIONS
a. Rate limit or block apps that make a large number of calls to the TRIMED FHIR API
b. Disable, restrict or remove your app’s access to the TRIMED FHIR API
c. Change, suspend, or discontinue the availability of the TRIMED FHIR API at any time
d. Impose limits on certain features or restrict your access to parts or all of the TRIMED FHIR API
8. IP OWNERSHIP
9. INDEMNIFICATION
10. DISCLAIMERS
11. LIMITATION OF LIABILITY
12. THIRD PARTY CONTENT
13. TERM AND TERMINATION
14. PUBLICITY
15. APPLICABLE LAW
Authentication
Authentication Overview:
Key Security:
A secure authentication key contains a combination of four unique characteristics:
1. Practice: An authentication key is tied to a specific practice (EnterpriseID).Key Generation:
1. Developer requests key from Practice:
2. Practice generates key for Developer:
LookupPatientId
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<LookupPatientId xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<PatientLast>PARDUE</PatientLast>
<PatientFirst>JOSEPHINE</PatientFirst>
<PatientGender>F</PatientGender>
<PatientDOB>10/18/1974</PatientDOB>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</LookupPatientId>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
PatientLast | string | Yes | The patient’s last name |
PatientFirst | string | Yes | The Patient’s first name |
PatientGender | string | Yes | The patient’s sex M/F |
PatientDOB | date | Yes | The patient’s date of birth (mm/dd/yyyy) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
LookupPatientID | long | Returns Patient number for the given patient’s first name, last name, gender & date of birth. |
Sample Response
Underlying SQL (Internal Use Only)
SELECT
PatientId
FROM
PR1_View_Patient
WHERE
Last = 'PARDUE' AND First = 'JOSEPHINE'
AND Sex = 'M'
AND Birthdate = TO_DATE('10/18/1974', 'MM/DD/YYYY')
AND Enterprise_Id = 21
AND Company_Id = 1
GetPatientData
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientData xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<sRequestFrom>PatientAPI</sRequestFrom>
<bAllergies>true</bAllergies>
<bProbs>true</bProbs>
<bMeds>true</bMeds>
<bImmunizations>true</bImmunizations>
<bAdvDirectives>true</bAdvDirectives>
<bResults>true</bResults>
<bOnlyLast90DaysofResults>true</bOnlyLast90DaysofResults>
<bNoteData>true</bNoteData>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<lRelativeDays>100</lRelativeDays>
<bPatientName>true</bPatientName>
<bDOB>true</bDOB>
<bGender>true</bGender>
<bRace>true</bRace>
<bEthnicity>true</bEthnicity>
<bPreferredLang>true</bPreferredLang>
<bVitals>true</bVitals>
<bSmokingStatus>true</bSmokingStatus>
<bProcedure>true</bProcedure>
<bCareTeamMembers>true</bCareTeamMembers>
<bUDI>true</bUDI>
<bAssessmentPlan>true</bAssessmentPlan>
<bGoals>true</bGoals>
<bHealthConcerns>true</bHealthConcerns>
<bLimitPage>true</bLimitPage>
<bConfid>true</bConfid>
<bLabTests>true</bLabTests>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientData>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers | ||||||
IEnterpriseID | long | Yes | The practice enterprise ID | ||||||
ICompanyID | long | Yes | The practice company ID | ||||||
lPatientID | long | Yes | The patient’s unique ID number | ||||||
sRequestFrom | string | No | The developer application name which calls this method | ||||||
bAllergies | boolean | Yes | If this value is true then include patient allergies with response | ||||||
bProbs | boolean | Yes | If this value is true then include patient problem list with response | ||||||
bMeds | boolean | Yes | If this value is true then include patient medication with response | ||||||
bImmunizations | boolean | Yes | If this value is true then include patient immunizations with response | ||||||
bAdvDirectives | boolean | Yes | If this value is true then include patient directives with response | ||||||
bResults | boolean | Yes | If this value is true then include patient lab results with response | ||||||
bOnlyLast90DaysofResults | boolean | Yes | If this value is true, then pull last 90 days data only | ||||||
bNoteData | boolean | Yes | If this value is true then include patient note data with response | ||||||
bPatientName | boolean | Yes | If this value is true then include patient name with response | ||||||
bDOB | boolean | Yes | If this value is true then include patient’s date of birth with response | ||||||
bGender | boolean | No | If this value is true then include patient’s gender with response | ||||||
bRace | boolean | Yes | If this value is true then include patient’s race with response | ||||||
bEthnicity | boolean | Yes | If this value is true then include patient’s ethnicity with response | ||||||
bPreferredLang | boolean | No | If this value is true then include patient’s preferred language with response | ||||||
bVitals | boolean | Yes | If this value is true then include patient’s vitals with response | ||||||
bSmokingStatus | boolean | Yes | If this value is true then include patient’s smoking status with response | ||||||
bProcedure | boolean | No | If this value is true then include patient’s procedures with response | ||||||
bCareTeamMembers | boolean | Yes | If this value is true then include patient’s care team member with response | ||||||
bUDI | boolean | Yes | If this value is true then include UDI info with response | ||||||
bAssessmentPlan | boolean | No | If this value is true then include assessment plan info with response | ||||||
bGoals | boolean | Yes | If this value is true then include goals info with response | ||||||
bHealthConcerns | boolean | Yes | If this value is true then include patient’s health concerns with response | ||||||
bLabTests | boolean | Yes | If this value is true then include patient’s lab tests with response | ||||||
bLimitPage | boolean | Yes | If this value is true then include patients all the demographics value items with response | ||||||
bConfid | boolean | Yes | If this value is true then include patient confidential items with response | ||||||
ResponseCode | number | No | The response code | ||||||
Message | string | No | The message details from the webmethod if there is any | ||||||
lRelativeDays | long | No | A whole number of days to be subtracted from the current date (e.g. 90 days would return all chart items with a chart item date within the past 90 days) | ||||||
dStartDate | date | No |
Format = 'mm/dd/yyyy', e.g. 12/30/1990 Chart Item Start Dates outlined below. For Chart Items not listed below, items within that category will only appear if the patient has an encounter greater than or equal to the entered Start Date.
|
||||||
dEndDate | date | No |
Format = 'mm/dd/yyyy', e.g. 12/30/1990 Chart Item End Dates outlined below. For Chart Items not listed below, items within that category will only appear if the patient has an encounter less than or equal to the entered End Date.
|
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Encounters | |||
Encounter | string | Text description of encounter type (‘Established Patient Sick’, (‘18 Year Well Established’) | |
Performer-Care Team | string | FerrugioCare Provider Name (‘Dr. Adam Racoon’, ‘Dr. Rachel Warren’) | |
Location | string | Encounter Address (‘123 Main Street, High Point, NC 27265’) | |
Date | string | Encounter Date (‘mm/dd/yyyy’) | |
Encounter Diagnosis | string | Encounter Diagnosis (Snomed term) See this resource to reference Snomed terms | |
Allergies | |||
Allergy Name | string | Name of the allergy (e.g., ‘milk’, ‘amoxicillin’ ) | |
Reaction | string | Allergic reactions (e.g., ‘itching’, ‘hives’) | |
Severity | string | Text description of severity level (‘Normal’, ‘Severe’) | |
Timing Information | string | Allergy recorded datetime (date format = ‘mm/dd/yyyy’) | |
Concern Status | string | Allergy Status (e.g., ‘Current’, ‘Historic’) | |
Problem List | |||
Problem Name | string | Text description of patient problem | |
CodeDescription | string | Snomed term for patient problem See this resource to reference Snomed terms | |
Concern Status | string | Problem status (e.g., ‘Current’, ‘Historic’, ‘Resolved’, etc) | |
Timing Information | string | Onset Date (‘mm/dd/yyyy’) | |
Medications | |||
Medication | string | Text Description of Drug Name | |
Strength | string | Drug Strength (e.g., ‘5mg’, ‘200mg/5mL’) | |
Route | string | Dose Route (e.g., ‘Oral’, ‘Injection’) | |
Dose/Frequency | string | Dose Frequency (e.g., ‘Daily’, ‘3 times per day’) | |
Timing Information | string | Date Medication Prescribed (‘mm/dd/yyyy’) | |
Immunizations | |||
Vaccine | string | Text Description of Immunization | |
Date | string | Date Immunization Administered (‘mm/dd/yyyy’) | |
Status | string | Immunization administration status (e.g., ‘Given’, ‘Not Given’) | |
Manufacturer | string | Immunization manufacturer name | |
LotNum | string | Immunization lot number | |
Note | string | Comments on immunization administered status (e.g. ‘Not given due to patient allergy’) | |
Lab Results | |||
Test Code/LOINC | string | Test Code (LOINC code) See this resource to reference Loinc terms | |
Description | string | Text description of lab result (‘White Blood Cell Count (WBC)’, ‘Red Blood Cell Count (RBC)’ | |
Value | string | Result value for lab result (e.g., ‘6.9’,’6.5’) | |
Units | string | Result value for lab result (e.g. ‘K/mcL’, ‘g/dL’) | |
Flag | string | Result Value Flag (e.g. ‘High’, ‘Low’, ‘Normal’) | |
Range | string | Result Value Range (e.g. ‘4.8-10.8’, ‘14.0-18.0’) | |
Date Performed | string | Result Observation Date (‘mm/dd/yyyy’) | |
Vitals | |||
Vitals Name | string | Text description of vital measurement | |
Timing Information | string | Date of vital measurement | |
Value and Units | string | Value and units of vital measurement (‘60 inches’, ‘200 pounds’) |
Item Grouping
The following chart items are grouped together:
|
Sample Response
GetPatientAllergy
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientAllergy xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientAllergy>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | Allergies with a status date greater than or equal to the entered Start Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Allergies with a status date less than or equal to the entered End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Allergy Name | string | Name of the allergy (e.g., ‘milk’, ‘amoxicillin’ ) | |
Reaction | string | Allergic reactions (e.g., ‘itching’, ‘hives’) | |
Severity | string | Text description of severity level (‘Normal’, ‘Severe’) | |
Timing Information | string | Allergy recorded datetime (date format = ‘mm/dd/yyyy’) | |
Concern Status | string | Allergy Status (e.g., ‘Current’, ‘Historic’) |
Sample Response
Underlying SQL (Internal Use Only)
SELECT Nvl(A.allergy_id, 0) AS AllergyID,
Nvl(A.allergy, 'NA') AS AllergyName,
Nvl(A.reaction, 'NA') AS AllergyReaction
,
Nvl(To_char(A.start_date, 'MM/DD/YYYY'), '--/--/----') AS
AllergyDate,
Nvl(L.lookup_item, '') AS AllergyStatus,
Nvl(A.drug_allergy_cat_id, 0) AS allergycatid,
'' AS rxnorm,
severity_level,
A.start_date
FROM pr1_allergies A,
pr1_lookups L
WHERE A.status_id = L.lookup_id (+)
AND A.patientprofileid = 109393798
AND ( L.inc_check_flag != 0
OR Trunc(A.start_date) >= Trunc(To_date('01/01/2010', 'MM/DD/YYYY'
)) )
AND ( L.inc_check_flag != 0
OR Trunc(A.start_date) <= Trunc(To_date('09/05/2019', 'MM/DD/YYYY'
)) )
ORDER BY Upper(A.allergy)
GetPatientProblemList
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientProblemList xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientProblemList>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | Problem List entries where the Problem Resolved Date is not before the requested StartDate will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Problem List entries where the Problem list date is not after the requested End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Problem Name | string | Text description of patient problem | |
CodeDescription | string | Snomed term for patient problem See this resource to reference Snomed terms | |
Concern Status | string | Problem status (e.g., ‘Current’, ‘Historic’, ‘Resolved’, etc) | |
Timing Information | string | Onset Date (‘mm/dd/yyyy’) |
Sample Response
Underlying SQL (Internal Use Only)
SELECT Nvl(P.problem_list_id, 0) AS ProblemID,
Trim(Trim(Nvl(D.code, ''))
|| ' '
|| Trim(Nvl(D.description, ''))
|| ' - '
|| Trim(Nvl(P.problem_desc, ''))) AS
ProblemName,
Nvl(L.lookup_item, 'NA') AS
ProblemStatus,
Nvl(To_char(problem_datetime, 'MM/DD/YYYY'), '--/--/----') AS
ProblemDate,
problem_datetime,
D.code,
P.snomed,
P.snomedterm,
Nvl(To_char(resolved_datetime, 'MM/DD/YYYY'), '--/--/----') AS
ProblemResolvedDate,
L.inc_check_flag AS active,
P.resolved_datetime
FROM pr1_problem_list P,
pr1_lookups L,
pr1_view_all_diagnosis D
WHERE P.status_id = L.lookup_id (+)
AND P.diagnosisid = D.diagnosisid (+)
AND P.patientprofileid = 109393798
AND ( Nvl(L.lookup_item, '') = 'Current'
OR Trunc(problem_datetime) >= Trunc(
To_date('01/01/2010', 'MM/DD/YYYY'))
)
AND ( Nvl(L.lookup_item, '') = 'Current'
OR Trunc(problem_datetime) <= Trunc(
To_date('09/05/2019', 'MM/DD/YYYY'))
)
ORDER BY Upper(D.description)
GetPatientMedication
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientMedication xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<sRequestFrom>PatientAPI</sRequestFrom>
<bConfidential>true</bConfidential>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientMedication>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
sRequestFrom | string | No | The developer application name which calls this method |
bConfidential | boolean | Yes | If this value is true then include confidential items with response |
dStartDate | date | No | Medications with a prescribed date greater than or equal to the entered Start Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Medications with a prescribed date less than or equal to the entered End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Medication | string | Text Description of Drug Name | |
Strength | string | Drug Strength (e.g., ‘5mg’, ‘200mg/5mL’) | |
Route | string | Dose Route (e.g., ‘Oral’, ‘Injection’) | |
Dose/Frequency | string | Dose Frequency (e.g., ‘Daily’, ‘3 times per day’) | |
Timing Information | string | Date Medication Prescribed (‘mm/dd/yyyy’) |
Sample Response
Underlying SQL (Internal Use Only)
SELECT Nvl(D.patient_drug_id, 0) AS PatDrugID,
Nvl(D.drug_name, 'NA') AS DrugName,
Nvl(D.drug_strength, 'NA') AS
DrugStrength,
Nvl(D.frequency, 'NA') AS Sig,
Nvl(D.quantity, 'NA') AS Quantity,
Nvl(D.doseform, 'NA') AS DoseForm,
Nvl(D.route, 'NA') AS Route,
Nvl(To_char(D.start_date, 'MM/DD/YYYY'), '--/--/----') AS DrugDate,
Nvl(To_char(D.expiration_date, 'MM/DD/YYYY'), '--/--/----') AS ExpireDate
,
CASE
WHEN Nvl(D.current_med_flag, 0) != 0 THEN 'Active'
ELSE 'Historic'
END AS DrugStatus
,
D.start_date,
D.expiration_date,
D.mm_drug_id,
'' AS rxnorm
FROM pr1_patient_drug D
WHERE D.patientprofileid = 109393798
AND Trunc(D.start_date) >= Trunc(To_date('01/01/2010', 'MM/DD/YYYY'))
AND Trunc(D.start_date) <= Trunc(To_date('09/05/2019', 'MM/DD/YYYY'))
ORDER BY drugstatus,
start_date,
Upper(D.drug_name)
GetPatientImmunization
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientImmunization xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientImmunization>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | Immunizations with an administered date greater than or equal to the entered Start Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Immunizations with an administered date less than or equal to the entered End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Vaccine | string | Text Description of Immunization | |
Date | string | Date Immunization Administered (‘mm/dd/yyyy’) | |
Status | string | Immunization administration status (e.g., ‘Given’, ‘Not Given’) | |
Manufacturer | string | Immunization manufacturer name | |
LotNum | string | Immunization lot number | |
Note | string | Comments on immunization administered status (e.g. ‘Not given due to patient allergy’) |
Sample Response
Underlying SQL (Internal Use Only)
SELECT Nvl(patient_immunization_id, 0) AS ImmunID,
Nvl(immunization, 'NA') AS ImmunName,
Nvl(To_char(date_administered, 'MM/DD/YYYY'), '--/--/----') AS ImmunDate,
Nvl(vis_cvx, '') AS PROC_CVX,
Nvl(not_given_flag, 0) AS not_given,
Nvl(not_given_reason, 'NA') AS
not_given_reason,
lot_number,
manufacturer,
date_administered
FROM pr1_patient_immunization PI
WHERE patientprofileid = 109393798
AND Nvl(initials_administered, ' ') != ' '
AND PI.date_administered >= To_date('01/01/2010 12:00 AM',
'MM/DD/YYYY HH:MI AM'
)
AND PI.date_administered <= To_date('09/05/2019 11:59 PM',
'MM/DD/YYYY HH:MI AM')
ORDER BY Upper(immunization)
GetPatientLabResult
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientLabResult xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<bOnlyLast90DaysofResults>true</bOnlyLast90DaysofResults>
<bConfidential>true</bConfidential>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientLabResult>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
bOnlyLast90DaysofResults | boolean | Yes | If this value is true, then pull last 90 days data only |
bConfidential | boolean | Yes | If this value is true then include confidential items with response |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | Results with a created date greater than or equal to the entered Start Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Results with a created date less than or equal to the entered End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Test Code/LOINC | string | Test Code (LOINC code) See this resource to reference Loinc terms | |
Description | string | Text description of lab result (‘White Blood Cell Count (WBC)’, ‘Red Blood Cell Count (RBC)’ | |
Value | string | Result value for lab result (e.g., ‘6.9’,’6.5’) | |
Units | string | Result value for lab result (e.g. ‘K/mcL’, ‘g/dL’) | |
Flag | string | Result Value Flag (e.g. ‘High’, ‘Low’, ‘Normal’) | |
Range | string | Result Value Range (e.g. ‘4.8-10.8’, ‘14.0-18.0’) | |
Date Performed | string | Result Observation Date (‘mm/dd/yyyy’) |
Sample Response
Underlying SQL (Internal Use Only)
SELECT R.lab_result_req_id,
To_char(R.obr_obs_datetime, 'MM/DD/YYYY') AS result_date,
R.obr_order_codes,
I.result_desc,
V.result_units,
R.obr_obs_datetime,
I.result_code,
V.result_value,
V.lab_result_value_id,
V.result_abnormal,
V.result_range,
C.company_name,
C.address1,
C.city,
C.state,
C.zip_code,
Nvl(C.main_phone, '') AS CompanyPhone,
C.location_id
FROM pr1_lab_result_req R,
pr1_lab_result_set S,
pr1_lab_result_item I,
pr1_lab_result_value V,
pr1_lab_company_lookup C
WHERE R.patientprofileid = 109393798
AND R.lab_result_req_id = S.lab_result_req_id
AND S.lab_result_set_id = I.lab_result_set_id
AND I.lab_result_item_id = V.lab_result_item_id
AND R.lab_company_id = C.lab_company_id (+)
AND R.lab_hist_req_id = 0
AND S.lab_hist_req_id = 0
AND I.lab_hist_req_id = 0
AND V.lab_hist_req_id = 0
AND Nvl(I.result_desc, ' ') <> ' '
AND Nvl(V.result_format, '') <> 'NTE'
AND Nvl(R.confidential, 0) = 0
AND R.obr_obs_datetime >= To_date('01/01/2010 12:00 AM',
'MM/DD/YYYY HH:MI AM')
AND R.obr_obs_datetime <= To_date('09/05/2019 11:59 PM',
'MM/DD/YYYY HH:MI AM')
ORDER BY R.obr_obs_datetime DESC,
I.result_desc
GetPatientEncounter
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientEncounter xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<bOnlyLast90DaysofResults>true</bOnlyLast90DaysofResults>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientEncounter>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
bOnlyLast90DaysofResults | boolean | Yes | If this value is true, then pull last 90 days data only |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | Encounter Note with a created date greater than or equal to the entered Start Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Encounter Note with a created date less than or equal to the entered End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Encounter | string | Text description of encounter type (‘Established Patient Sick’, (‘18 Year Well Established’) | |
Performer-Care Team | string | FerrugioCare Provider Name (‘Dr. Adam Racoon’, ‘Dr. Rachel Warren’) | |
Location | string | Encounter Address (‘123 Main Street, High Point, NC 27265’) | |
Date | string | Encounter Date (‘mm/dd/yyyy’) | |
Encounter Diagnosis | string | Encounter Diagnosis (Snomed term) See this resource to reference Snomed terms |
Sample Response
Underlying SQL (Internal Use Only)
SELECT n.patient_note_id,
Nvl(Replace(D.listname, '"', '*'), '') AS Provider,
L.address1,
L.city,
L.state,
L.zip,
L.phone1,
n.note_datetime,
l.listname AS location,
T.template_name,
'' AS Diagnosis,
'' AS snomed,
'' AS snomedterm
FROM pr1_patient_note N,
pr1_view_doctor D,
pr1_view_department L,
pr1_template T
WHERE N.doctorid = D.doctorid
AND N.dept_id = L.departmentid
AND N.template_id = T.template_id
AND N.patientprofileid = 109393798
AND N.note_datetime >= To_date('01/01/2010 12:00 AM',
'MM/DD/YYYY HH:MI AM')
AND N.note_datetime <= To_date('09/05/2019 11:59 PM',
'MM/DD/YYYY HH:MI AM')
ORDER BY n.note_datetime DESC
GetPatientEncompassingEncounter
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientEncompassingEncounter xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<bOnlyLast90DaysofResults>true</bOnlyLast90DaysofResults>
<bConfidential>true</bConfidential>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriatel</Message>
</GetPatientEncompassingEncounter>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
bOnlyLast90DaysofResults | boolean | Yes | If this value is true, then pull last 90 days data only |
bConfidential | boolean | Yes | If this value is true then include confidential items with response |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | The patient’s encounters entered start date (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | The patient’s encounters entered end date (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Encounter | string | ||
Performer-Care Team | string | ||
Location | string | ||
Date | string | ||
Encounter Diagnosis | string |
Sample Response
Underlying SQL (Internal Use Only)
SELECT n.patient_note_id,
Nvl(Replace(D.listname, '"', '*'), '') AS Provider,
D.first,
D.last,
d.individual_npi AS npi,
L.address1,
L.city,
L.state,
L.zip,
L.phone1,
n.note_datetime,
l.listname AS location,
T.template_name,
'' AS Diagnosis,
'' AS snomed,
'' AS snomedterm
FROM pr1_patient_note N,
pr1_view_doctor D,
pr1_view_department L,
pr1_template T
WHERE N.doctorid = D.doctorid
AND N.dept_id = L.departmentid
AND N.template_id = T.template_id
AND N.patientprofileid = 109393798
AND n.note_datetime >= To_date('01/01/2010 12:00 AM',
'MM/DD/YYYY HH:MI AM')
AND n.note_datetime <= To_date('09/05/2019 11:59 PM',
'MM/DD/YYYY HH:MI AM')
ORDER BY n.note_datetime DESC
GetPatientVitals
Post
Sample Request
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetPatientVitals xmlns="http://tempuri.org/">
<sAuthKey>e4d46b5b-73cf-4c73-b3c4-053e9161fede</sAuthKey>
<lEnterpriseID>14</lEnterpriseID>
<lCompanyID>1</lCompanyID>
<lPatientID>58374</lPatientID>
<sRequestFrom>PatientAPI</sRequestFrom>
<dStartDate></dStartDate>
<dEndDate></dEndDate>
<ResponseCode>100</ResponseCode>
<Message>The request was processed appropriately</Message>
</GetPatientVitals>
</soap:Body>
</soap:Envelope>
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
sAuthKey | string | Yes | The secret key generated by the practice to give access to the developers |
IEnterpriseID | long | Yes | The practice enterprise ID |
ICompanyID | long | Yes | The practice company ID |
lPatientID | long | Yes | The patient’s unique ID number |
sRequestFrom | string | No | The developer application name which calls this method |
dStartDate | date | No | Vitals with a recorded date greater than or equal to the entered Start Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
dEndDate | date | No | Vitals with a recorded date less than or equal to the entered End Date will be returned (format = 'mm/dd/yyyy', e.g. 12/30/1990) |
ResponseCode | number | No | The response code |
Message | string | No | The message details from the webmethod if there is any |
Response Codes
Code | Meaning |
---|---|
100 | The request was processed appropriately |
101 | Authentication key expired |
102 | Authentication key invalid |
103 | Invalid parameters |
104 | Invalid date format |
Response Parameters
Parameter | Type | Description | |
---|---|---|---|
Vitals Name | string | Text description of vital measurement | |
Timing Information | string | Date of vital measurement | |
Value and Units | string | Value and units of vital measurement (‘60 inches’, ‘200 pounds’) |
Sample Response
Underlying SQL (Internal Use Only)
SELECT C1.data_value,
C1.icdcpt_flag,
N1.patient_note_id,
C1.patient_note_control_id,
N1.note_datetime,
TM.unit,
TM.unit_code
FROM pr1_patient_note_control C1,
pr1_patient_note N1,
pr1_template_field TM
WHERE N1.patient_note_id = C1.patient_note_id
AND N1.patientprofileid = 109393798
AND C1.template_field_id = 24
AND C1.template_field_id = TM.template_field_id(+)
AND N1.note_datetime >= To_date('01/01/2010 12:00 AM',
'MM/DD/YYYY HH:MI AM')
AND N1.note_datetime <= To_date('09/05/2019 11:59 PM',
'MM/DD/YYYY HH:MI AM')
ORDER BY N1.note_datetime DESC