Skip to main content

koppeltaal

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kt2-0.0.13a0.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

kt2-0.0.13a0-py2.py3-none-any.whl (17.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file kt2-0.0.13a0.tar.gz.

File metadata

  • Download URL: kt2-0.0.13a0.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for kt2-0.0.13a0.tar.gz
Algorithm Hash digest
SHA256 8aed8836c0145ad86446c1afe063c6edf179b39a5c6034e99a12db68c6661807
MD5 feea4de9a9fcb44f5db17090142126bd
BLAKE2b-256 1bd0c1d14ace15d4434cbb063aecc53ca71f654265dce8c19c023b7be275a0b5

See more details on using hashes here.

File details

Details for the file kt2-0.0.13a0-py2.py3-none-any.whl.

File metadata

  • Download URL: kt2-0.0.13a0-py2.py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for kt2-0.0.13a0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8afcc279731627f576ee0b5f7f83c70145429184501541ca99555e379f2b1cc4
MD5 f20d8062b897ccd157df72773d86d2b8
BLAKE2b-256 a5f74f2515a20d2bf522671127770c7d185eb76a9c7a4395782f4f44e14e38f6

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page