DexCare SDK 5.0.0

This page contains information on how to upgrade from SDK 4.0 to SDK 5.0. For a full list of changes, see the Release Notes.


The main change in SDK 5.0 is the deprecation of Regions, and the addition of Virtual Practices. A Practice is a collection of resources that provides a type of care to patients. Each practice has a separate set of regions & hours, payment information, and a pool of caregivers to treat patients. They are an additional layer of separation/precision on top of Regions.

Regions deprecation

The following methods are now deprecated and should be replaced by calls in the new PracticeService:


The new methods in PracticeService are:


The practiceIds are static and can be hardcoded for each practice your app wants to support. They can be provided by your DexCare contact.

getVirtualPractice returns a VirtualPractice object which contains various information about the practice, including a list of VirtualPracticeRegions. The VirtualPracticeRegion object has a regionCode property which can be used in place of the old Region.regionId. The VirtualPracticeRegions can be displayed to the user for their selection, just like the old Regions.

Note that not all VirtualPracticeRegions are meant to be displayed to the user. For example, there can be a VirtualPracticeRegion set up that does not book to Epic, and can be separate from normal patient queues. This allows for testing virtual visits in production environments without impacting real patients or providers.


A new parameter has been added to the VirtualVisitInformation object, practiceRegionId. This should be the VirtualPracticeRegion.practiceRegionId property from the region selected by the user.

The parameter is always required when booking using practices (which is the only non-deprecated way to book virtual visits). It is marked as optional for backwards compatibility with the old Regions method of booking virtual visits.


The existing VirtualService.startVirtualVisit methods have been deprecated. New VirtualService.startVirtualVisit methods have been added to replace them, with a single new parameter practiceId.

Again, this can be hardcoded for each virtual practice your app supports.


The result of VirtualService.verifyCouponCode is now divided by 100. If your app had done this division itself, it needs to be removed to get the proper discount amount.

For example, for a $49 discount amount the verifyCouponCode method would return these values:

Old SDK 4.x: 4900.0
New SDK 5.0: 49.0


  • Environment.pcpUrl has been removed. You no longer need to override this in your Environment object.
  • AppointmentService.getPcpAppointments() has been removed. There is no replacement as this feature is no longer supported.
  • All PCP related models have been removed. There are no replacements as this feature is no longer supported.

4.0 Deprecations

Anything marked as deprecated in SDK 4.0 has been removed. See the SDK 4.0 Changelog for details of what was deprecated and what the replacements were.

New Additions

  • ProviderService is a new feature that allows scheduling a visit with a particular provider, specified by their NPI.
  • PatientService.getSuffixes() is a new method that returns a list of acceptable suffixes for use in the creation of HumanName objects.
  • Push notifications are now optional to match iOS. However, it is still highly recommended to register for push notifications.