PatientID allows clients to pair against a host system. Clients can be anything from an app running in a mobile phone to a web-based systems but the main purpose is to connect users phones with the host system. Once the client is paired data can be sent continuously to the host system.

PatientID is not an external service, but a software framework that is included in the host system. The framework requires minimal configuration and automatically sets up services used to pair clients and transporting data from the client to the host system.

In short, the pairing follow these steps:

- An administrator of the host system initiates a pairing, a call is made to the PatientID, which responds with a 6-digit code.
- The administrator tells the 6-digit code to the user that enters the code into their app.
- PatientID verifies pairing and issues an encrypted key and returns it to the client.
- By sending the issued key with each call, the client can now safely send data to the host system. By not sending any information about which user sent the data, the communication remains anonymous and secure.

This manual will, step by step, go through the above flow with real code examples to make it possible for the reader to implement PatientID in their own projects.

What type of data can you send?

It is entirely up to the host system to define the data structures that are sent by expanding PatientID standard interface for data transport. All services that PatientID provides uses JSON format.