Inbound PCR Push / ImageTrend Integration
AngelTrack can accept automatic push of PCR data directly into AngelTrack's billing system, from ImageTrend or other PCR
To receive PCR data directly from a third-party PCR via its PCR-push or state-uploader feature, read this guide.
URL
Your AngelTrack server's trauma registry webservice URL is /Nemsis3WS.asmx. Its complete URL, therefore, has this form:
https://app.angeltrack.com/Nemsis3WS.asmx
It supports the three functions needed by a PCR push:
- SubmitReport, the standard interface for pushing trip data, which immediately imports each submission while-u-wait, using AngelTrack's very tolerant NEMSIS importer, returning an error only if the submission is a malformed SOAP request or if the NEMSIS payload is missing critical fields;
- QueryLimit, which returns the maximum payload size accepted by SubmitReport; and
- RetrieveStatus, which always returns "1" (success) because any import errors will already have been reported to you during SubmitReport().
*The emulation conforms to the NEMSIS 3 Webservice WSDL.
API Key
The initiating PCR application will need a credential to make use of this webservice. Issue an AngelTrack API key with CAD/NEMSIS privileges. The PCR software will have an uploader configuration page where you can input this information:
Webservice URL: Input your AngelTrack server's complete URL as shown above
Username: [anything / doesn't matter]
Password: Your API key goes in this field
Additional info: You can also send your API key in this field, if you prefer
To learn more, please visit the API Key Guide.
XSD + Schematron Validation
AngelTrack does not perform XSD or schematron validation on the uploaded trips, as that is the responsibility of the PCR. Payloads are scraped for all importable NEMSIS data, so it supports incomplete and invalid XML, as well as XML fragments, as long as the overall XML structure is shaped like a NEMSIS 3 document.
Other Limitations
This API accepts any NEMSIS 3.x version. Only a few XML nodes are mandatory; for a complete list of critical nodes with explanations, please visit the CAD Nemsis API Guide.
Trips arriving on this API go straight to Billing Office, bypassing the QA review workflow. You could then manually push the trips backwards to the QA workflow, but there is no mechanism to push any QA objections back to the originating PCR, so all QA should be completed within the originating PCR before pushing the trip to AngelTrack for billing.
This API performs automatic de-duplication, to gracefully tolerate reuploads of the same call.
This API does not accept DEM payloads. Any attempt to upload a DEM document will receive a "success" code (numeric value 1) but will be otherwise ignored.
There is a DOS-protection throttle on this API, which limits inbound requests to six per minute per agency. Any requests in excess of this limit will receive a "Server is too busy" reply (numeric value -50), which is a NEMSIS standard reply that any originating PCR should understand.
Facility State Codes / Facility Record Auto-Match
Facility record match-ups are permanent hassle in the world of EMS data... especially because many PCRs do not strictly enforce state facility lists, and thus may submit charts where the claimed facility code does not match the claimed facility name or street address. When such records arrive in AngelTrack, it would try to attach a facility record by its code, thus causing an address mis-match.
To prevent that, this API does not trust the facility codes claimed by the originating PCR. Instead, AngelTrack performs a name+address match, and does its best to attach the correct facility record. This process is not guaranteed, and so could cause schematron validation problems later in states which enforce facility code requirements. This is another reason why the originating PCR should be responsible for state trauma registry uploads; this is discussed below.
In any case, if your PCR enforces its facility codes perfectly and you would like AngelTrack to trust it, then add a parameter to the upload URL used by the PCR to push charts to AngelTrack:
/Nemsis3WS.asmx?TrustFacilityCodes=1
Crew Match
By default, this API will import the submitted NEMSIS payload even if it cannot match to a vehicle (by callsign) and to at least one crew member (by patch number, name, or provider-issued ID).
AngelTrack will auto-create vehicle records as necessary for this purpose.
AngelTrack will also auto-create employee records as necessary, if the submitted chart includes crew member first and last names in the quasi-standard ImageTrend format (itCrew.01/itCrew.02), then AngelTrack will auto-create employee records for them. Otherwise, AngelTrack will import the call but leave it marked 'unassigned'.
If you would like AngelTrack to reject any submitted chart whose claimed vehicle and crew members are not already on file, rather than auto-creating records for them, then add a parameter to the upload URL used by the PCR to push charts to AngelTrack:
/Nemsis3WS.asmx?ProceedIfNoCrewMatch=0
State Trauma Registry Upload
Whether AngelTrack later performs the legally required upload of the trips to your state trauma registry, or whether the PCR does that, is your decision. As a general rule it is the responsibility of the originating PCR to do that, in case a validation error occurs requiring edits to the chart and a reupload. Thus you would disable AngelTrack's state upload requirement for all EMS service levels by visiting the Service Levels Configuration guide, and then you would enable an additional upload URL (for your state) in the PCR software.
To learn more about AngelTrack's state uploader, visit the State Uploads Guide.
Retrieving the requestHandle from SubmitReport()
In the reply from the SubmitReport() call, requestHandle will always contain the dispatch ID of the imported (or reimported) trip.
That identifier can later be resubmitted to RetrieveStatus(), as some PCRs will automatically do, even though there is no need for this because AngelTrack immediately processes every payload during SubmitReport(). Therefore, RetrieveStatus() always returns a "success" code (numeric value 1).
Further Reading
There are many other caveats to consider when importing NEMSIS data from a third-party PCR, arising from the limitations of the NEMSIS spec. To learn more, please visit the NEMSIS XML Import Guide.