Skip to main content
Pre-release

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
  • kt commandline 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?

Yes.

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)

Source distribution for kt2 0.0.19a0
File Size Uploaded
kt2-0.0.19a0.tar.gz 18.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kt2 0.0.19a0
File Interpreter ABI Platform
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
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page