System overview
Data ingress (sending data to PKB) and egress (querying data from PKB) flows always look the same, independent of the actual implementation of the components.
Client → Interface → Authentication → Authorisation → PKB aggregated record
Client:
Customer: an organisation who interacts with PKB on their own behalf
Details here: Planning your PKB integration | Customer
Partner: who interacts with PKB on behalf of a customer
Details here: Planning your PKB integration | Partner
App: interacts with PKB APIs on behalf of a registered PKB user.
Details here: Planning your PKB integration | App
Interface:
HL7
Messaging-based, details: Using PKB's HL7 APIs
FHIR
REST-based, details: FHIR® APIs
Authentication:
HTTP Basic + IP filtering: used by the HL7 API Fully available
OAuth2: used by the FHIR API
Fully available for customers sending data
In progress for customers pulling data (~ 2023 Q4)
In progress for Apps and Partners sending and pulling data (~ 2023 Q4)
NHS Login (OpenID Connect): used by
users logging in through the UI Fully available
users navigating to PKB from other sites or apps using NHS Login Partially available
Authorisation
See https://manual.patientsknowbest.com/ to learn more about PKB’s business rules governing access control.
Build
For customers and partners already collaborating with PKB.
Start here: Developer documentation
Get help
If you have questions about using the API, or would like to set up a call to discuss integration, do email us on integrations@patientsknowbest.com.
Also, if you find a bug or think our service isn't working as expected, you can raise a helpdesk ticket by emailing help@patientsknowbest.com.
We are always updating our developer APIs with more features; subscribe to our developer blog so we can keep you posted!
Readiness levels
Fully available - feature is available on production environments
Partially available - some aspects of the feature are available on production
In progress - the feature is actively being developed, but is not yet ready for testing or use
Planned - the feature is on the roadmap or backlog, but has not yet been started
Exploratory - the feature is still being researched or discussed