This page provides a high level overview of the PainChek integration with LeeCare.
The following diagram shows the high-level, conceptual overview of the PainChek/P5 integration, when the client is hosting P5 on their infrastructure:
The main components are:
PainChek Webhook Service - This is a PainChek process that detects new assessments (in real time) and calls a P5 end-point (using an HTTPS REST call). PainChek initiates this request and so the client firewall must accept these requests (see below for a list of PainChek server IP addresses that these requests could originate from). The requests typically use port 443 by default, but this can be configured. See Webhooks User Guide – PainChek Support for more details about the PainChek webhook infrastructure
PainChek API service - This is a PainChek service that accepts incoming HTTPS REST calls from external systems, such as P5. The service is secured with a client id and secret (generated by the PainChek system) that must configured in P5. The API is accessable via https://prod.ap.painchek.com/api. See Introduction to the PainChek API for more details about the PainChek API.
P5 Integration Component. This is a P5 process that detects relevant changes in P5 (e.g. the creation of a new resident) and calls the appropriate PainChek endpoint in order to mirror the change in PainChek.
P5 API Service. This is a P5 API that can accept a request from PainChek to create an assessment for a resident. It is typically available at an endpoint like https://p5.clientdomain.com:443/platinum5/api/v1/painchek-assessments/.
A client can choose to whitelist the PainChek servers (in order to limit the ingress of data into the P5 server). The PainChek IP addresses are:
DNS and Certificates
All traffic between the PainChek system and the P5 instance is encrypted using TLS.
The client must manage appropriate DNS records (to provide an endpoint for the PainChek webhook infrastructure to call) and install a publicly signed certificate associated with the webhook DNS record on the P5 server.
The P5 system will provide PainChek with the following resident data:
P5 client identifier [M]
First [M], Last [M] and Preferred [O] names
Date of Birth [M]
Facility [M], ward [O], room [O] and bed [O]
Patient Avatar [O]
Note: [O] indicates optional data, [M] indicates mandatory data
PainChek provides assessment to P5 data as documented here.