This release is a pre-release and may not be stable for production use.
Features
Some of it’s stand out features are:
- Koppeltaal 2.0 SDK
- FHIR Koppeltaal 2.0 profiles validation
- JWKS utils
ktcommandline application
Developer Guide
This guide gives a brief overview of the core Koppeltaal 2.0 concepts and how to integrate with its services
Important differences with Koppeltaal 1.x
| Concept | KT 1.x | KT 2.0 |
|---|---|---|
| FHIR Exchange | Messaging | RESTful API |
| Content Validation | Separate service | Built-in |
| Authorisation | None - application has access to everything | On resource & CRUD-level |
FHIR Exchange
By using the (FHIR) RESTful API exchange there is a single source of truth. Koppeltaal 1.x acted as a message broker, giving each participant the responsibility to keep all data up-to-date. Another big advantage is that Koppeltaal 2.0 works with small messages. So no self-contained bundles. This saves a lot of data being transferred over the line and the chance of 409 Conflicts are considerably reduced.
Content Validation
Previously, a separate service could be used to check whether the content of a Bundle is valid. However, this validation was not enforced by the Koppeltaal server. Koppeltaal 2.0 uses profiles. A profile indicates exactly what the rules are per Resource. The Koppeltaal server can enforce profiles by validating that the Resources adhere to the profile.
Authorisation
Applications connect to the Koppeltaal server. Within "Domeinbeheer" (Domain Management), roles are assigned to the applications. A role can contain multiple CRUD permissions per Resource. With Koppeltaal 2.0, you are only allowed to work with resources to which you are entitled. With Koppeltaal 1.x, applications can see everything that they are subscribed to within a Domain.
Usage
Configuration
Create a koppeltaal.toml file with the neccessary configuration:
client_name = "name-of-customer-or-client"
fhir_url = "https://foo.koppeltaal.nl/api/v1/healthcareinc/fhir/r4/"
oauth_token_url = "https://foo.koppeltaal.nl/api/v1/healthcareinc/oauth2/token"
oauth_authorize_url = "https://foo.koppeltaal.nl/api/v1/healthcareinc/oauth2/authorize"
oauth_introspection_token_url = "https://foo.koppeltaal.nl/api/v1/healthcareinc/oauth2/token/introspection"
smart_config_url = "https://foo.koppeltaal.nl/api/v1/healthcareinc/fhir/r4/.well-known/smart-configuration"
domain = "https://foo.koppeltaal.nl"
client_id = "uuid-client-id"
Commandline interface
kt help
Usage: kt [OPTIONS] COMMAND [ARGS]...
Koppeltaal command line tool
Options:
--debug enable debug logs ( default: False )
--config TEXT select config file
--help Show this message and exit.
Commands:
activitydefinition get single activitydefinition resource by id from
koppeltaal api
activitydefinitions get all activitydefinition resources from koppeltaal
api
endpoint get single endpoint resource by id from koppeltaal api
endpoints get all endpoint resources from koppeltaal api
info show Koppeltaal api info
patient get single patient resource by id from koppeltaal api
patients get all patient resources from koppeltaal api
practitioner get single practitioner resource by id from koppeltaal
api
practitioners get all practitioner resources from koppeltaal api
task get single task resource by id from koppeltaal api
tasks get all task resources from koppeltaal api
version show Koppeltaal cli version
Python Shell
make shell
Documentation
Roadmap
Is it any good?
License
The MIT License
Credits
Part of this document is released under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.
Metadata
Release files for kt2 0.0.19a0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| kt2-0.0.19a0.tar.gz | 18.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| kt2-0.0.19a0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 37.1 kB
Release files / kt2-0.0.19a0.tar.gz
| Download URL | kt2-0.0.19a0.tar.gz |
|---|---|
| Size | 18.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e299a473a6346e10ca43166c628e9b2145008b374c8930768653b5c3f55aa0e1
|
|
BLAKE2b-256 checksum How to use checksums |
bef9c35df048d51617565ce2a1d2842a9efa3333115f47d81d3c2d4e416718c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.31.0
|
Release files / kt2-0.0.19a0-py2.py3-none-any.whl
| Download URL | kt2-0.0.19a0-py2.py3-none-any.whl |
|---|---|
| Size | 18.5 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
4e60df997a325da5ce4b899d8689146a9417cb161d30f9517acdd8a2a8ef7057
|
|
BLAKE2b-256 checksum How to use checksums |
8350d4fe83f20fa8e2b2fc63cc0423b14aea3d4539b5cae04957cc909f0f4069
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.31.0
|