This work fixes a bug that caused tasks assigned to care team roles added via automations to fail to commit using the new commands.
Release Notes
Check out the latest features and fixes for Canvas. This page covers releases beginning in December of 2023.
The rendering provider drop down on the claim form now includes all schedulable staff.
We have introduced improved error handling when installing plugins, including a new error for duplicated plugins. You will need to update your CLI to the latest version, otherwise you may not be able to reinstall existing plugins without uninstalling them first.
You can now commit the SDK HPI command using the Commands API.
All fields within the newly added coding gap command will now wrap.
This work fixes a bug that prevented users from adding the SDK diagnose command using the + button from patient summary
Users can now search “Team” or “Role” to filter assignee results within the SDK task command.
Users will no longer be able to enter in error a diagnose or assess coding gap command if the condition has been assessed at a later date. The option will be removed from the triple dot menu if so.
We have added the ability to move uncommitted commands from one open note to another. Please reach out to product@canvasmedical.com if you would like to test this feature.
Remove pharmacies from the preferred pharmacy search in the profile using the PATIENT_PROFILE__ADD_PHARMACY__POST_SEARCH event and PATIENT_PROFILE__ADD_PHARMACY__POST_SEARCH_RESULTS effect.
This work fixes a bug that prevented the occurrence date added via FHIR Immunization Create from displaying in the command
Rearrange and hide sections of the patient profile using plugins. Read more.
HPI commands can now be committed. Commands added prior to this update will continue to show as committed in the data model and uncommitted in the notes. Commands added after this release will only show as committed after the command is recorded.
Only the diagnosis fields within the assess coding gap command will show in print templates
Commands fields that are tied to ICD-10 or CPT codes (Diagnose, Past Medical History, Coding Gaps, Immunize, etc) will now continue to display the associated codes upon commit
Updated all knowledge center links from Zendesk to Pylon, ensuring they point to our new resource for improved accessibility and accuracy.
When a note is locked via the Note API, a PDF documenting the note state change is now automatically generated, aligning with the UI functionality. The PDF is also accessible through the DocumentReference FHIR endpoint.
Fixed a bug that prevented ID cards added through Canvas Remote from being deleted or updated from the patient profile.
We have extended the ability to see cancelled and rescheduled appointments to the week view.
The FHIR spec does not allow expiring pre-signed URLs for resource attachments. Going forward, HTTP clients that request resource attachment files will need to provide a bearer token in the request. The affected resources are Consent, DocumentReference, DiagnosticReport, Media, Patient, and Practitioner. Unless otherwise specified, the responses for these requests will be a temporary redirect to the pre-signed URLs. We have added a temporary extension to the Attachment attribute in each resource that includes the pre-signed URLs to support the transition. Stay up to date on breaking changes.
We’ve added the ability to print a combined educational material resource from the note triple dot menu, using the updated command.
We’ve fixed a bug that prevented users from faxing the new imaging order command.
Replaced “Appointment Type” with “Event Type” in Admin for clarity when configuring event types that do not have an associated note.
Implemented CRUS (Create, Read, Update, Search) support for the FHIR DetectedIssue resource, enabling identification of patient-specific clinical concerns such as potential drug interactions, inappropriate therapies, duplicate treatments, and missing conditions. Read More.
Resolved a recently introduced bug that prevented updated questionnaires from displaying in automations and caused unintended values to surface in automations with questionnaires and prescribe commands
Users can now configure their calendars to see cancelled and rescheduled appointments. A checkbox has been added to the configuration modal. The cancelled appointments will now appear grayed out on the calendar. Hyperlinks to the rescheduled appointments are visible in the appointment card.
The FHIR task search interaction nows support filtering by due dates (today or overdue) and last modified date (including comments) Read more.
Lab results received via Health Gorilla now have a preliminary tag to help differentiate between preliminary and final results in both the panel view and chart.
Committed new commands (private notes & clipboard) were not correctly flagged as committed in the billing footer validation. This has been corrected.
Automations will now include content within the private notes command when saved.
The SDK physical exam command is now available for beta testing. Read more.
Plugins can now use the Data Module in the SDK to compute on lab order and imaging report data.
When implementing plugins, the ClinicalQualityMeasures base class is what determines what gets registered in the protocols, protocoluploads, protocoluploadversions, and protocolsused tables. We added a new attribute that can be set when using this class that allows developers to indicate that a protocol contains predictive decision support interventions.
Fixes an issue where coverages created via FHIR were always displaying the claim coverage type as commercial in revenue.
We are excited to announce the new feature that allows users to create compound medications and electronically send prescriptions to pharmacies partnered with Surescripts. This feature supports both controlled and non-controlled substances, enhancing your prescribing capabilities. This new functionality requires our Prescribe and Refill SDK command to be enabled. Please reach out to Canvas Support if you’d like to utilize this new feature.
Users now have the ability to create custom labels for claims. This feature supports multiple workflows represented across various customers and allows for sorting and filtering by label within revenue queues.
Fixes an issue where deleted or inactive ICD-10 codes could be referenced in the billing footer, which inadvertently associated them with CPT codes and prevented modifications.
Plugins can now use the Data Module in the SDK to compute on Command and Observation data.
Fixes an issue that caused imaging orders to show with today’s date, rather than the date ordered, when linking to results.
We added validation to the quantity field in the new prescribe and refill commands to prevent trailing zeros. Automations created with trailing zeros were causing errors. This update ensures that these errors no longer occur.
Our patient portal was previously optimized for mobile use. We have updated it to be responsive to screen size.
Plugins can now leverage the following events:
- CARE_TEAM_MEMBERSHIP_CREATED
- CARE_TEAM_MEMBERSHIP_UPDATED
- CARE_TEAM_MEMBERSHIP_DELETED
- NOTE_STATE_CHANGE_EVENT_CREATED
- NOTE_STATE_CHANGE_EVENT_UPDATED
- PATIENT_ADDRESS_CREATED
- PATIENT_ADDRESS_UPDATED
- PATIENT_ADDRESS_DELETED
- PATIENT_CONTACT_PERSON_CREATED
- PATIENT_CONTACT_PERSON_UPDATED
- PATIENT_CONTACT_PERSON_DELETED
- PATIENT_CONTACT_POINT_CREATED
- PATIENT_CONTACT_POINT_UPDATED
- PATIENT_CONTACT_POINT_DELETED
- PROTOCOL_OVERRIDE_CREATED
- PROTOCOL_OVERRIDE_UPDATED
- PROTOCOL_OVERRIDE_DELETED
- TASK_COMMENT_UPDATED
- TASK_COMMENT_DELETED
Users can now link image results to orders from the panel view, or from within the chart.
Plugins can now use the Data Module in the SDK to compute on Questionnaire data.
Health Gorilla may send preliminary results, which are versioned in Canvas as updates are received. We previously displayed all versions when attaching lab reports to letters. We now will only show the latest, ensuring the user can easily find and attach the most recent version.
The SDK review of systems and structured assessment commands are now available for beta testing. Read more.
We removed the validation preventing users from adding a duplicate condition via the diagnose command and added a warning in its place.
This work fixes a bug that prevented developers from working with patient authored commands (added via FHIR) in the commands API.
We’ve added the ability to originate the following SDK commands via plugins:
- Perform
- Instruct
- Lab Order
- Family History
- Allergy
- Remove Allergy
- Surgical History
- Medical History
- Task
- Prescribe
- Refill
- Vitals
- Change Diagnosis
- Close Goal
This work fixes a bug that caused batched claim queue movements to not respect filters. Snoozed claims will also not be moved.
The SDK immunize and immunization statement commands are now available for beta testing. Read more.
The SDK Snooze Protocol and Image commands are now available for beta testing. Read more.
We’ve added new pre/post search and lifecycle events for all SDK commands. These new events allow plugin authors to extend and customize workflows by reacting to search activities and command lifecycles within Canvas.
The audit modal associated with migrated commands will now show all edits for committed commands. The revert option will only be availble for uncommitted commands.
The SDK allergy, remove allergy, family history, surgical history medical history, close goal, and educational material commands have been released to all customers (GA). Current status of commands can be found here.
The Canvas Note API now fully supports actions for checking in and locking notes.
Check-In Action: Transition a note from BKD (Booked), NSW (No-showed), or RVT (Reverted) to CVD (Converted), mirroring the note check-in process in the UI.
Lock Action: When transitioning a note to LKD (Locked) all associated actions related to the encounter and claim now behave as they do when locking a note through the UI
This update introduces the ability to create and read comments/notes through the Immunization endpoint in our FHIR API.
You can now mark task labels as inactive. Doing so will prevent users from adding the label to newly created tasks. Existing tasks will still show the inactive labels and you will still be able to filter based on inactive labels, if they are present.
We have updated the populations module to allow users to filter patients based on care team membership. We’ve also moved Campaigns to a standalone page. Please reach out to support if you would like the populations module enabled in your environment.
We’ve added a new event CLAIM__CONDITIONS
and a new effect ANNOTATE_CLAIM_CONDITION_RESULTS
. This combination can be used to add tags to conditions within the claim.
You can now indicate mark that a note was a no show by setting the stateChange to NSW
. Read More.
The SDK diagnose command was updated to exclude inactive codes based on the date of service of the note.
The calculated BMI will now appear in the SDK vitals command within the note, after commit.
The SDK Educational Material is now available for beta testing. Read more.
The reference command (used to add lab results from the diagnostic theater to the note) will now follow the same command insertion logic as other commands. This will allow users to better specify which note the results should be added to.
Updates made via the Note API can now be reflected in the timeline without refreshing the page. Users will see newly added notes appear if they are within their view and note state change events will result in the note collapsing (ULK” → “LKD) or expanding (LKD” → “ULK). Please reach out to product@canvasmedical.com if you would like to enable this feature.
We’ve added a new event PATIENT_CHART__CONDITIONS and a new effect ANNOTATE_PATIENT_CHART_CONDITION_RESULTS. This combination can be used to add tags to conditions within the patient summary.
This release includes performance improvements for the Vitals and Questionnaire commands. Saving individual vital signs now takes about a third of the time it used to. Originating questionnaires when many exist within the system is faster, as is saving responses for very large questionnaires.
We’ve created logic within automations to update commands based on patient details. If an automation that includes diagnose
is used on a patient who has been previously diagnosed with the same condition, it will automatically update to assess
instead. Please reach out to product@canvasmedical.com if you are interested in testing this new automation logic.
We’ve fixed a bug that caused some users to see the following error when processing documents classified as Patient Administrative Intake
: “Some values might be missing or incomplete”.
After scheduling appointments via the follow up
command workflow, the reason for visit would be duplicated in the note. We now only add two commands if the note is updated in the scheduling workflow.
We’ve created a new command called the clipboard
command. If enabled, pasting text within the note body will automatically generate a command to house the pasted text. This will enable plugins to respond to the creation of the command and ultimately use the content to trigger various effects. Please reach out to support to enable this command in your instances.
The audit modal associated with migrated commands will now show all edits. Users can also revert to previous versions of the commmand prior to being committed. Each line item in the history can be expanded to view the edits made in the saved version and selecting revert will update the command to that previous version. The view of questionnaire edits is currently limited to the user and timestamp. Future work will ensure details are present for all commands.
Our FHIR Appointment Create interaction will now trigger the creation of the associated claim when an appointment is added. Previously the claim would generate at check-in.
The Claim page in admin has been updated for improved usability.
We have created a new command to capture private notes. The contents of this command are only visible to the creator of the command. It is an internal
command and therefore not represented in our print templates. Please reach out to product@canvasmedical.com if you are interested in enabling the command in your instance.
Commands are currently classified and color coded based on their placmenent within a SOAP note (subjective, objective, assessment, plan, procedures, history). We have added a new category for internal
commands. These commands are red and will not be visible in printed notes.
There is a new admin section: Command type settings
that allows admins and super users to enable or disable commands in order to contol which commands are available to users when charting. Permissions must be assigned in order to access this setting. Please reach out to support to have the permission added to the appropriate users or role in your instance.
We have added scoring logic with recommendations for the following questionnaires:
- Geriatric Depression Scale
- Columbia Suicide Severity Risk Screener
- Short IQCODE
Reach out to Canvas support if you’d like to utilize these questionnaires with scoring in your EMR.
We have added an extension to the FHIR PaymentNotice endpoint that references the claim to which the payment is or should be applied. When using this reference in the create interaction, you can now bring a balance below zero, supporting prepayment workflows such as copays and coinsurance. Without a reference to a specific claim, the paymentnotice amount cannot exceed the patient’s account balance. Read more.
Procedure codes and charges can be linked to the following commands:
- Perform
- Immunize
- Questionnaires (Questionnaire, Structured Assessment, ROS, PE)
Modifiers included in the fee schedule or linked to the CPT in the questionnaire loader will now be added to the billing footer and associated claim. Use the following format to ensure the modifier is recognized:99215-25
Eligibility requests currently use your organization’s details (name and npi); however, eligibility and benefits may be tied to regional or provider specific enrollment data. You can now set patient defaults that will be used for eligibility purposes from both the patient profile or using the API. Read more.
- Eligibility requests will use the organization’s information by default
- If a default location is set, the request will use the location’s information
- Some payers require the provider’s NPI be sent. You can now update the insurer in admin to use the default provider’s information. If the insurer has this setting enabled, and a default provider is not set, you will receive an error when trying to run the eligibility request.
Surescripts messages for new prescriptions (NEWRX) now include the default supervising provider, if specified in the prescriber’s staff profile.
Tasks within a patient chart are, by default, sorted by due date in ascending order. To help users navigate both open and closed tasks more easily, we have added the ability to change the sorting order and sort by either the creation date or the last modified date. The ‘last modified’ option currently applies only to updates made to the task model, which does not reflect changes to task comments.
The timestamp of the last lock event is now included with the date on the note print template.
We’ve added insertion logic to prevent conflicts when adding commands through the API.
You can now add commands to appointment notes using the Commands API.
You can now write historical vaccines to patient charts using the FHIR immunization create interaction. Vaccines can be added by CPT or CVX code and will appear in the record as an immunization statement. Read more.
The following updates have been made to the FHIR DocumentReference Create interaction:
- Added support for the Uncategorized Clinical Document
type
(34109-9). - Added logic to default the priority extenstion to false, if not explicitly set.
- Fixed a bug that caused the review workflow to not be triggered in Canvas when review mode was set to review required (
rr
).
The SDK Close Goal and Change Diagnosis commands are now available for beta testing. Read more.
The condition modal previously grouped assessments by diagnosis. If the change diagnosis command was used to update a condition, the assessments associated with the new code would fall to the bottom of the timeline. We have made an update to sort all assessments by date (newest to oldest) in order to better track the progression of the problem.
ProtocolSetting.value
previously had a character limit of 1,000. We have updated this field to a TextField
to support more characters.
We have added pharmacyName
, pharmacyAddress
, pharmacyPhoneNumber
, and pharmacyFaxNumber
to the preferred-pharmacy
extension on the patient resource.
When writing or updating patients via FHIR, we were previously setting a patient’s country to United States, which did not map to the dropdown in the patient’s registration. We have changed the behavior to default to US to match our UI.
When using the Commands API, there is validation to ensure that commands are only added to unlocked notes. We fixed a bug that caused the incorrect state to be returned when multiple note state change events had occured (locking & unlocking).
The SDK Task, Refill, and Vitals commands are now available for beta testing. Read more.
We recently introduced a tooltip that displays the full content of command fields that are truncated. We fixed a bug that caused the tooltip to stay present as users scolled through a note.
The recent update to the Apryse webveiwer (used for annotating documents) resulted in intermittent errors that prevented users from leveraging the feature. We have reverted this update.
Historically, our integration with gCal required us to pull from Google,loading availability every time the page loaded. To improve reliablity and load times, we are transitioning to storing availability from Google directly in Canvas. The Google API does expect some failures with their notifications, resulting in events in Google not being represented in Canvas. When this occurs, Canvas Support can now manually sync calendars in admin to capture any missed events.
The SDK Medical History and Surgical History commands are now available for beta testing. Read more.
We recently introduced a tooltip that displays the full content of command fields that are truncated. We have added a slight delay on the hover interaction to prevent it from populating as users navigate through the note.
You can now write PDF documents to Canvas using the FHIR DocumentReference create endpoint. The endpoint supports writing clinical and administrative documents. Developers can select from a list of supported document types (mapped to unique LOINC codes) and set whether the document needs review. Once added, documents can also be reclassified within Canvas if necessary. Read more.
The author of activity log line items on claims will now show as Canvas Bot when updated using the FHIR API. We were previously displaying the creator of the claim.
We have added a constance config that allows admin to restrict free text within notes, forcing all documentation to exist within commands. Users will be able to search for commands and automations and must select from them. Please reach out to our Customer Experience team if you would like to enable this restriction.
This release fixes a bug that caused background not to pull forward within the assess command.
We leverage the Apryse library for document annnotations. This work updates the Apryse WebViewer to 10.10.1.
There is a now a prompt in notes to make adding commands and automations more intuitive. Start typing or press / for commands space for automations
. Pressing /
or space
will pull up the full library of commands or automations for users to browse through and select from.
When viewing claims for patients with many coverage eligibility responses, the user may experience a delay. We have optimized the claim scrubber to load faster for patients with many coverage eligibility responses.
- The ordering provider dropdown is now searchable
- The compendium will not load until a lab is selected
- Autocomplete fields within command headers of SDK commands (instruct, immunization statement, etc.) now have a character limit of 1000. The limit is enforced when adding free text without causing an error.
Comment
within the instruct command now has a character limit of 4000 characters.Medication
andSig
within medication statement has been limited to 255 characters to prevent downstream errors in refills.
Administrators can now set a default supervising provider on the staff page. These providers will only be members that have a prescribing role.
Responses to single select questions are no longer truncated.
Any observations created from a custom questionnaire score will have a coding associated with it to meet required FHIR standards.
The Note page in admin has been updated for improved usability.
When using the QuestionnaireResponse Create endpoint, the command will be inserted into the Patient’s note based on what the use case in charting of the questionnaire is: Questionnaire, Physical Exam, Structured Assessments, Review of Systems
When inserting a command into a billable encounter, if the questionnaire responses include the selection of an answer that has a cpt code included in the Fee schedule, the code will appear in the Note’s billing footer
We addressed a bug where the task card in the patient chart incorrectly displayed the last comment date.
We’ve update the FHIR Provenance resounce to allow for the ability to search provenance records by the patient associated to the record and the agent who made the provenance record.
We addressed an issue to allow a prefix or suffix to be added the the FHIR Patient.name
attribute.
If an active condition is created via FHIR Condition Create endpoint, an assessment will be associated to the condition. If the diagnosis command is inserted into a billable note, the ICD-10 codes will appear in the note’s billing footer.
We updated how diagnoses are ordered on the claim and note footer to ensure the claim matches the order the commands are entered into the associated note.
- The goal command now requires a start date.
- The previously recorded dates and priority pull forward in the update goal command.
The SDK Allergy, Remove Allergy, and Family History commands are now available for beta testing. Read more.
Resolves error when a protocol card inserts a command on a questionnaire that is not enabled.
FHIR DocumentReference search by date accepts a datetime format.
Includes provider credentials after signature when printing a note.
Resolves error on Goal Priority, now when a Goal is closed the priority will remain the same from initial input.
Includes the date of when a user was Assigned to
a clinical review document.
The SDK Lab Order Command is now available for beta testing. Read more.
This release implements the following changes outlined here and previously communicated via email:
- For DiagnosticReport read/search, the FHIR API previously returned
entered_in_error
for status. Per the FHIR spec, we now returnentered-in-error
. - The FHIR API previously returned the string
null
in the response body for successful create and update interactions. Create and update endpoints now return empty response bodies on successful interactions. - The FHIR API previously included the version number in the location header of create interaction responses. The version number should only be included by servers that support versioning, which our API does not.The location header now only includes the base URL, the resource type, and the identifier, i.e.
[base]/[type]/[id]
. The/_history/[vid]
suffix on the location header value is no longer included.
Allows users to update Clinical Review Document(s) attributes such as report name, link order, requires signature, date, comment, and priority. These attributes can be updated on lab, imaging, consult, and uncategorized clinical reports from each specific panel view or on patient chart.
Prevents admin users from adding same responsibilities to more than one team within settings.
Resolves issue to correctly display letter template variable .
Improves Admin experience on the following pages: Patient Consent Codings, Patient Consent Rejecting Codings, Groups, Teams, Patient Groups, Patient Group Members, and Patient Group Member Exclusions.
Fixes display issue in FHIR when updating team staff members in Settings.
Updates Appointment note title to standardize indication of no-show in note header.
Enhances PDF Annotation functionality by allowing users to delete or split specific pages to multiple document types within Data Integration intake workflow.
The Letter API endpoint allows customers to post letters to the patient timeline. You can stage the letter to the timeline, setting the provider, location and content. HTML and CSS are supported within the body of the letter. Read more.
The default search results order for FHIR DiagnosticReport is now based on date.
The SDK medication statement, stop medication, instruct, and perform commands have been released to all customers (GA). Current status of commands can be found here.
An in-network
indicator of n
within a 271 response will now correctly map to out of network
in our FHIR EligibilityResponse endpoint.
The diagnose command has been migrated and is available for beta testing.
The billing footer now updates as soon as an SDK command (e.g. assess) is committed. There was previously a dependency on saving the note.
The audit modal will now show the correct information when the patient is added as the author of a questionnaire through the FHIR API.
Ensures all billing line items have the appropriate POS based on the configuration set within appointment and note types.
CategoryCoding objects for diagnostic reports were being created on every save, causing duplication apparent within the FHIR DiagnosticReport search interaction. This has been fixed.
The following admin pages were updated for improved usability:
- Organizations
- Roles
- Care Team Memberships
The instruct and perform commands are migrated and available for beta testing.
This work fixes a bug that prevents individual task commands from being printed.
Requests within the chart related to Conditions, Interviews, Diagnostic Views, and PatientDocuments have been optimized. Usage of these endpoints should now be faster.
This work addresses an issue that delayed and/or sporadically prevented the creation of a documentreference resource when adding lab reports via Data Integration beginning in April. We will backfill the missing documents over the next week to ensure all lab reports are available via the FHIR API.
Our saving indicator, currently shown in the note header, no longer updates when content within SDK commands is updated. To address this, we include a saving indicator within the migrated SDK commands to notify users that their changes are saved.
Resolves error that prevented users from exiting or cancelling Undo
action within Data Integration when editing a submitted a document.
The following admin pages were updated for improved usability:
- Vaccine
- Fee Schedule
- Insurer
- Payor Specific Charges
We’ve made some performance enhancements to the way lab results and notes load within the application. These changes will speed up the initial load time for lab results and notes, allowing users to review labs and start charting faster.
We’ve update how commands load within notes on the timeline. Rather than preloading commands for all open and visible notes, we now load them as the user scrolls through the timeline. This speeds up initial chart load and allows users to start charting much faster. Malformed commands will also now show an error in the note body, whereas they previously were presented as loading gray boxes.
You can now manage staff profiles using the FHIR Practitioner Create and Update endpoints. You can also fully automate account creation using the send-reset-password-email
operation. Read more.
Resolves bug that incorrectly ranked ICD-10 codes on claims. ICD-10 codes are now ranked on claim based on time of insertion within a note or claim, newer codes will be ranked below previously placed codes to reflect the correct order for accurate billing.
This release fixes a bug that caused patient messages to fail to send via text or email when initiating them through the lab review modal and using Canvas’ messaging capabilities.
Updates user Password Reset Email subject and content.
Adds FHIR MedicationRequest Search Parameter for Requester.
Adds status
parameter to FHIR Coverage Search for filtering by active or cancelled coverages.
Enhances our Claim.MD integration allowing for more frequent payer list updates to instances.
The SDK Prescribe Command is now available for beta testing. Read more.
Required fields within SDK commands will now be red on command origination, ensuring that users know which fields need to be completed before recording the command.
Resolves 500 Error on PDF generation within patient chart when attempting to print, preview, or fax documents.
Fixes FHIR Practitioner Search param typo to be include-non-schedulable-practitioners
.
Enables ability to Read and Update CareTeam Lead through an extension, and allows for switching CareTeam member roles via API.
You can now search for FHIR DocumentReference by date.
We have added a temporary extension to the Attachment attributes for the following resources: Consent, DocumentReference, DiagnosticReport, Media, Patient, and Practitioner. The url
attribute on Attachments will require bearer authentication in the near future. The temporary extension is meant to support the transition. We encourage you to update your workflow to use the temporary extension as soon as possible. We will then release the change to the existing attribute and give a window of time to move off of the temporary extension. Read more
The PDF view functionality on a patient’s chart has been reinstated, for which a new tab opens for viewing labs, imaging, specialist consult, and uncategorized clinical documents. The Review
and View
buttons have been added for seamless review of these documents as a pop-up on the patient chart.
Appointments will now reference co-scheduled appointment IDs via API, to easily identify which appointments were scheduled together.
This work fixes a bug that caused certain fields to not show in the collapsed view of committed SDK commands.
You can now see access an audit history of SDK commands in the command triple dot menu. We have chosen to move away from the existing tooltip (available on hover) for SDK commands in order to have more space to display additional data. We have added timestamps for some actions now and have plans to continue to expand on the level of detail within the audit trail in the future.
The default appointment note type set in admin now automatically populates the scheduling modal.
Administrators now have visibility as to which Note Type is the default Appointment Type within each Note Type configuration page. We’ve also added validation to prevent users from setting a none schedulable Note Type as the default Appointment Type.
FHIR Medication Request Search/Read will now exclude prescription records without a patient. These are created via Surecripts as refill requests for patients who are not registered.
We’ve made the following changes to the FHIR Observation resource.
- Observations are now created for all questionnaire responses that have been coded with LOINC or SNOMED as the code system. This includes all responses across all questionnaire types (questionnaires, ROS, PE, structured assessments) We previoulsy only created observations if
Use in Social Determinants
was set to true for responses of questionnaires. Derived-from
was added as a search param.- Additional display names were added to various attributes.
- All vitals signs are now supported in FHIR V2. Read More.
We have resolved an issue in our logic that would update appointmentType and RFV to the associated instance’s default values if these values were omitted from the FHIR update payload. Now, if appointmentType or RFV is omitted from the FHIR Update payload, they are ignored in the message consumer to keep the appointment values as is.
An issue has been resolved that displayed incorrect error of CCD - Patient not matched despite a patient match.
Within Data Integration, users can now Forward by Fax
documents that have been annotated and saved.
Fixes a bug that caused automations to load with old questionnaire versions due to caching.
Our carry forward logic pulls in the most recent committed response. Since the HPI command is never committed, carry forward cannot be used. We removed the option from the triple dot menu.
We’ve optimized our notes query by splitting it into two separate queries: one for retrieving static command schema data and another for dynamic commands. This enhancement allows us to cache the static data, resulting in faster load times.
Resolved issue that added 15 blank text lines above API inserted commands.
The internal comment on tasks will automatically be truncated, users can expand internal comments to view the full text.
The Staff Admin Contact Point data now matches the corresponding information within the associated input fields.
The SDK reason for visit, assess, goal, and update goal commands have been released to all customers (GA). Current status of commands can be found here.
Users can now scroll on the providers list within calendar configuration modal.
We have resolved an issue that prevented certain automated tasks from being created when there was a lab error from Health Gorilla. Lab error responses from Health Gorilla will now create a task with further information on the error.
We have made updates to several SDK commands to address various bugs. The fixes include:
Questionnaire
- The most recent version of the questionnaire will now be used in automations.
- Keyboard navigation improvements.
- Values entered in the questionnaire loader are now accurately represented in the command upon origination.
- Blank free text responses will no longer print with the question name (i.e ~TXT~).
- The click target on multiline single select and free text responses has been expanded.
- Automations created before the carry forward setting is enabled now respect the setting after its enabled.
Reason for Visit
- The SDK Reason for Visit Command is now compatible with FHIR Appointment Create/Update.
Assess
- The background field will carry forward as it should when originating the assess command within a note.
Document titles can now be accessed through the FHIR DocumentReference endpoint under the ‘description’ attribute. Additionally, document comments are accessible via an extension.
Users can now access review documents from a patient’s chart as a pop-up modal with the associated review command. Review documents can also be annotated by users within this modal and placed directly on a patient’s chart. These documents include Lab, Imaging, Specialist Consult, and any Uncategorized Clinical Document Reports. To learn more about enabling PDF Annotation functionality, please email product@canvasmedical.com.
Users can now filter tasks from a patient’s chart or the task panel based on task due date.
We have made changes to make searching for patients and loading charts faster, especially for patients with many appointments and encounters.
Resolved Load More
issue on task lists from patient chart and task panel.
Resolved Business Line error that prevented users, based on permissions, from accessing feature from admin settings.
Users can filter a patient’s timeline by Inactive staff.
We have improved performance for contact search within the faxing modal.
- We have added an extension (active-health-benefit-plan-coverage-description) to FHIR CoverageEligibilityResponse that pulls the plan name from the parsed X12 response.
- The status of eligibility checks that have failed in ClaimMD with a 400+ error will now be accurately reflected in the UI and API. The outcome in the FHIR CoverageEligibilityRepsponse endpoint will now return
error
. - We have implemented improved handling when processing eligibility responses from ClaimMD that contain empty quantity fields.
An issue has been fixed on tasks where selecting or unselecting filtering checkboxes did not result in the expected behavior. Now users should expect task filtering actions to display appropriate results.
Users can now utilize the Select All
option on the task labels filter dropdown.
Users can now utilize the Clinicians
checkbox option on the schedule view configuration modal to select or unselect all listed providers at once.
We have resolved an issue that resulted in duplicative conditions on a patient’s summary when a claim was created with an associated ICD-10 code via API. Now, we will only include the ICD-10 code in the patient’s condition list if the code is not already listed within the condition list as “active”.
We’ve made changes to make the FHIR Patient read and search endpoints faster.
Fixes a bug that blocked users from configuring an authenticator app for Multi-Factor Authentication (MFA).
The fields endpoint surfaces the specific schema fields associated with each command, including autocomplete fields that are necessary to know what values are valid (e.g. active conditions that can be assessed).
This release fixes a bug that prevented scheduling appointments via the FHIR API when the new reason for visit command was enabled.
The SDK HPI and questionnaire commands have been released to all customers (GA). Current status of commands can be found here.
This work fixes a bug that prevented developers from updating claims that had no coverage associated.
SDK commands have the option to carry forward past responses using the triple dot menu. Questionnaires can also be set to carry forward responses automatically using the carry forward all encounters setting. We are deprecating the carry forward same encounter functionality. The setting will no longer be honored.
We have added the ability to add lab reports and associated values via our FHIR DiagnosticReport endpoint. This functionality is being beta tested. Documentation will be updated soon.
We have added create and update interactions, support for new search filters, and new attributes to read and search for FHIR Practitioner. This new functionality is currently being beta tested. Documentation will be updated soon.
We have made changes to FHIR Task Search to improve performance
We fixed a bug that prevented the patient summary from updating in real time when adding goal and update goal commands to a note.
Medication statement, goal, and update goal have been migrated and are availble for beta testing.
An issue has been resolved that was impacted Unassigned review reports (lab, imaging, special consult, and uncategorized clinical documents) when attempting to access through the Unassigned filter functionality. This issue was impacting reports that became unassigned when an assigned staff member was marked as inactive.
Resolved issue when activating or inactivating a Staff in the Action dropdown in Admin to ensure the Canvas User’s status is also synced.
The ImagingRecommendation Type in SDK protocols now allows the context object to pass a priority
that can be set to either Routine
or Urgent
. This value will be autofilled on the Image Command in the patient’s chart. Read more.
We have improved the usabilty of the medication history functionality within admin settings.
The SDK questionnaire command is currently in beta. We fixed an issue with this command where free-text responses in the questionnaire were not being wrapped.
A previous update inadvertently caused the plan command only to display the first line of text when it was committed and in collapsed form. Now users will always be able to see the entire narrative of the plan command.
We have made an update to the cache_google_calendar_events
by clearing cache keys before re-fetching google calendars, so that calendar events can update within Canvas scheduling.
When ENABLE_REQUIRES_SIGNATURE constance configuration is enabled, the Requires Signature
label will automatically be removed once a document (lab, imaging, consult report, and uncategorized report) have been marked as signed through the corresponding command.
We have made an performance enhancement to the reload_compendium
when it reaches out to Health Gorilla (HG) for an updated Lab’s compendium. We have also reduced the job to run on a weekly basis as compared to a daily basis due to HG’s compendium update cadency. Canvas Support will still have the ability to run this sync manually if HG updates the compendium more often.
Users can filter note search
commands, within the patient chart, based on the status of the command (committed or uncommitted). There is also the ability to view both committed and uncommitted commands within the note search
, which includes a label on the status of the command. Additionally, the command results will now have permalink navigation to the corresponding note or command.
We fixed a bug that was causing the link to the diagnostic theater to be off screen when navigating to a patient’s chart from their lab results.
The search now waits for a pause rather than searching on each keypress. This reduces the randomness in the search responses as they load.
Observation read & search will now surface lab names in the display
attribute.
- We added additional tags to our web worker metrics to give us visibility into uneven usage caused by (for example) session stickiness at the load balancer level.
- We added additional metadata to error reports when individual commands or notes crash to improve our ability to stay on top of those errors.
- We improved release notation within our internal systems, allowing support staff and engineers to better see if regressions are caused by a release in the time immediately following that release.
- We increased the accuracy of our request/response durations by accounting for time spent doing request logging.
- We added the ability to track the request backlog for all web workers, allowing us to track the size of the request queue over time.
The text
attribute of DiagnosticReport will now reflect the report name for all lab reports.
Users can now filter claims on any of the revenue queue tables through note type selection(s).
Fixed issue that prevented user from adding CPT codes to certain note types based on patient chart URL.
Fixed issue that limited where users could click within migrated commands.
The fax modal, used when faxing notes, letters, and lab orders, now includes a dropdown to pull in the contact details from directory listings. Users can still update the To
and Fax number
fields manually as needed.
Users can now fax lab requisitions after they have been saved or sent electronically via Health. Selecting Fax lab requisition
from the triple dot menu on the command will bring up our faxing modal, which allows users to specify where the order should be sent and complete the cover sheet fields if covers sheets are enabled in your instance. The status of the outbound fax can be tracked in your Sfax portal.
Migrated commands now support the following:
- Carry forward the last committed response. This option will pull in the latest record from the database across all users. This functionality is compatible moving forward. You may not be able to pull in responses from our legacy commands.
- Add partially completed commands to automations.
- Committed commands may be truncated to preserve space in the note. Click on the command header to expand the full content.
Users can access these workflows using the triple dot menu associated with the command, which is now present before clicking record. Currently, the only command available GA is plan. These enhancements will be available for the newly released commands moving forward (when appropriate).
The Commands API allows you to read, search, create, and update (including the ability to commit or enter in error) commands via the API. This will only be possible for the commands that have been migrated to the commands module of the SDK. Read more.
We’ve updated how the timeline loads to address a bug that was causing the top of the timeline to get cut off by the header.
Additional commands have been migrated and are availble for beta testing.
Stripe added a new attribute to their Card Payment API response payload. We updated our data validation to account for the new attribute.
The Place of Service (POS) logic for the add charge tab
within claims has been updated to default manually added charges on a claim to the POS that is set at note type admin or practice location level.
You can now change team and individual assignment of tasks to unassigned
.
We haved added filtering on provider_key to the Note search.
Some of our endpoints allow you to insert commands into notes by including an encounter reference; however, some of our note types do not create encounters (e.g. data import). A note object reference, surfaced by the new Note API, has been added to those same endpoints to facilitate adding the commands to additional note types. The reference has also been added to support capturing the associated note ID for encounters, appointments, documents associated with notes, and resources that have been added to a note.
The Snooze Protocol
command dropdown will only show active protocols. After a protocol has been snoozed, the Snooze Protocol
command dropdown will no longer display those protocols that are snoozed.
In order to remove user confusion when reviewing displayed time on the patient chart and within tasks, we have adjusted how time is displayed for user.
- On letters, messages, and note headers: Users will now see the following format
Day of week, MM/DD/YY HH:MM AM user-time-zone
. This should provide clarity on when a letter, message, and note were created on a patient chart. - On task created header and task activities: Users will now see the following format
Day of week, MM/DD/YY HH:MM AM user-time-zone
. This should provide clarity on when tasks were created and when activities took place within a task. The same will be true on the task panel . - On task due dates: Users will now see the following format
Day of week, MM/DD/YY
. This should provide clarity on what day a task is due.
When the push charges
button is utilized on a billable note, the associated patient and provider data to that claim will be automatically updated so that the latest version of an unlocked note will have the updated information for the patient and provider. This information includes patient demographics, coverage data, and provider admin staff page values. Additionally, if users want a locked note to reflect updated patient and provider information, a user needs to unlock and re-lock the note to automatically update this information on the claim. Claims associated to a locked note will not have patient and provider information automatically update, to prevent unwanted changes to these claims.
- Corresponding provider and appointment details have been updated on after visit summary printouts to display correct information.
- Internal comments added within the
Review Note
automated task have been removed from note printouts.
Admin will now have the ability to view and delete a patient’s profile and chart photo through Patient admin settings.
Users will be able to inactivate practice locations through admin settings. Once a practice location has been marked as inactive it will be removed from UI selection drop downs such as note headers, letter templates, message templates, appointment scheduling, and schedule view. If an inactive practice location had been used in past notes, appointments letter, and messages, it will be displayed with an (inactive) label after the practice location name. Practice locations cannot be saved as inactive if there are any future appointments for those locations, appointments must first be updated or removed.
The Add Service Provider
button and modal have been removed from the Data Integration page.
In order for a provider or practice location value to be updated on appointments, users need to follow the rescheduling workflow to ensure that the provider has appropriate availability and the practice location is active for the associated provider.
Our recent work to migrate the plan command introduced an issue where the models relating to the command were out of sync. To end users, this looked like a gray loading box in the note that never rendered. We have included a fix we expect to prevent these issues going forward.
When searching for a task via API, the response includes the permalink to that resource. If a user is logged out, the API permalink will now navigate into the right page in Canvas through the login process, including SSO.
Many customers use the Canvas API to integrate the Canvas scheduling model with other systems. We have added the ability to tag Canvas appointments with external IDs in order to support these 2nd and 3rd party workflows (similar to how we have long supported external IDs for patients). External IDs will not appear in the UI. Read more.
This work fixes a bug that was affecting the order in which conditions are displayed in the patient summary. Now, by default, conditions will be sorted by last assessed to first assessed. This way users can quickly identify which conditions may be stale or need to be addressed (those at the bottom). Users can temporarily change the sort to be alphabetical using the slider icon.
We fixed a bug in the FHIR Coverage Search when trying to display coverages with a Subscriber relationship of parent or common.
Added a search parameter for status on communications. Developers can now search for messages, filtering to those that are sent or drafts.
We have updated the following admin pages to improve the experience, add functionality, and allow more flexibility when managing your instance settings.
The FHIR Appointment endpoint now uses a reference from the Location Read/Search endpoint for the Location in supportingInformation. We will continue to support using the integer value when creating or updating appointment for a set period before the current functionality is deprecated. Updates on the end of life for the existing functionality can be tracked here.
Our FHIR Claim endpoint now supports read, search, and update interactions. The update endpoint is limited to updating the queue of the claim. This allows third-party RCM vendors to keep claims in Canvas in sync with their operations. Read more.
Canvas offers a config RESTRICT_SIGNING_NOTE_WITH_UNCOMMITTED_COMMANDS
, which will prevent users from locking notes with uncommitted commands. We have fixed a bug that blocked users from locking notes with the message “To lock this note please commit all uncommitted commands”, in the absence of any visible uncommitted commands in the note. This was caused by a recent update to the logic checking for uncommitted commands in the note. That update is now being rolled back.
There was previously a limit on the number of appointments that could be displayed on the daily schedule view. This release ensures that there is no limit so that all appointments are displayed.
The Note API now includes improved performance, pagination, additional error handling, updated logic for displaying the note title, and the ability to update the note from CVD to LKD.
In the patient chart, there is a chart tab that can be accessed from the top right which shows active protocols. There is a badge on that chart tab which shows the number of active protocols. Previously, this badge count only counted the number of active protocols with recommendations. Now it will show the count of all active protocols with a protocol card, even if there is no recommendation. This is more intuitive - the user should expect the number displayed to be equal to the number of protocol cards they see when they click on the tab.
Letters created in the patient timeline are now included in DocumentReference read and search.
We fixed a bug that prevented patient group creation via the API.
You can now export EHI for a single patient in your admin settings. EHI is exported as standard FHIR R4 resources in Newline Delimited JSON format, as outlined by the FHIR Bulk Data Access pattern. To export data for a population in the same format, please contact support. Read more.
Updated the chart summary pdf template to display conditions in order of clinical status and in alphabetical order for a more structured display.
Validation for US postal codes has been incorporated into the Organization, Practice Location, and Staff address forms when the country is set to US
. This validation ensures that the entered US Postal code follows the correct format: either 12345
or 12345-1234
. If the user specifies any country other than the United States, the validation process will be bypassed.
We have added a new HIDE_PUSH_CHARGES_BUTTON
constance configuration within settings. When the configuration is enabled, the Push Charges
button in the footer of all notes will be removed. Signing or locking a note will automatically push charges to the associated claim.
This work improves the speed at which the note body loads when a note is added to a chart. Previously, the header would load first and the body would be slightly delayed. Now the user will see the body load with the header, so that they can begin documenting asap.
Previously, for lab reports and imaging reports, there was a DocumentReference resource which contained the PDF, and separately a DiagnosticReport resource which contained other information including codings. There was no way to link the two together. This made it difficult for developers to identify what a given DocumentReference PDF contained. Now, we have added the PDF for the report to the DiagnosticReport in the presentedForm attribute. The PDF will also continue to be surfaced as a DocumentReference per FHIR guidance. Read more.
Earlier this year, Canvas deployed permalinks. These are direct links to Canvas objects (notes, commands, PDFs and more) that can be added to tasks. We received feedback from users that these links were useful, and that it would be helpful to be able to get a permalink outside of the context of a task. One use case is to share a link to a specific note with a colleague, via Canvas chat or another chat application like Slack. As a result we have added an option “copy link” to the kebab (triple dot) menu of the note. This option will add a permalink to the note to the user’s clipboard.
Canvas has a mapping from prescribed medications like “Amoxicillin 500mg tablet” to an NDC code. This NDC code is sent to the pharmacy with prescriptions. In some cases, the NDC code was not respecting brand vs generic distinctions. Now the mapping has been updated so that, wherever, possible, the NDC will correctly reflect whether the selected medication was brand or generic. Note that in some cases this is not possible, for example if a the generic medication name is selected but the medication is still on patent and there is no generic NDC yet.
Customers have expressed a need to access more PDFs from Canvas via API, in order to share these with external parties or in patient-facing experience. As a result we have significantly expanded the scope of DocumentReference, to include the following documents:
- All PDFs added via Data Integration that have been parsed (“parsed” means they have been attached to a patient and tagged with required metadata like document type). Some examples of these PDFs include “Uncategorized clinical documents”, “Consult report, “Advanced directive” and more.
- PDFs of chart notes. A version of the note PDF is saved every time a note is locked, and all versions are available via the API.