Publisert - 21.09.2026

PTS Registry API - Release Notes

All notable changes to the PTS Registry API will be documented in this file.

Subscribe to notifications on #ext-utv-pts on Slack to be notified when we announce new releases.

You'll also notice we often use icons to visualize our changes and their effect, but we've limited ourselves to the following;

  • 🌱 New Feature
  • 🍃 Improvement
  • 🔧 Bug Fix
  • 💥 Breaking Change
  • 🔒 Security

Only changes that reach a public surface are listed.

v1.0.1

A target now says which domain a resource belongs to and what kind of thing it is, so that two resources sharing an identifier are no longer one target.

REST API

  • POST /api/v1/restrictions
    • 💥 A target is domain plus resource, where resource carries type, system and value, replacing a single system and value
    • 💥 domain and resource.type are required concepts, from the Domain and the new ResourceType code systems
    • 💥 All three parts decide supersession, so the same identifier as a ServiceRequest and as a DiagnosticReport are two targets
    • 💥 restriction.target.system_not_allowed is replaced by restriction.target.whole_type_not_allowed
  • POST /api/v1/restrictions/resolve
    • 💥 The target is a query: every part optional, at least one required, rejected with restriction.resolve.target_required
    • 💥 The target moved off the response root and onto every entry, since one query can match several targets
    • 🍃 A restriction covering a whole resource type in a domain now answers a question about one resource of that type
  • POST /api/v1/restrictions/revoke
    • 💥 The target takes the same shape as on create
  • POST /api/v1/restrictions/query, POST /api/v1/restrictions/compact, GET /api/v1/restrictions, GET /api/v1/restrictions/{restrictionId}
    • 💥 Every returned target carries domain and resource

v1.0.0

This is the first version for which we started tracking changes.

REST API

  • /api/v1/restrictions
    • 💥 principal is renamed to subject on every request and response
    • 💥 A restriction's subject is renamed to actor
    • 💥 Code system URNs lost their middle segment, so ...:restriction:target:Resource is now ...:restriction:Resource
    • 💥 The actor role code system is urn:nhn:pts:registry:restriction:ActorRole, was ...:restriction:subject:Role
    • 💥 Actor role values are PascalCase: Self, Practitioner, Representative
  • POST /api/v1/restrictions
    • 💥 A period whose start equals its end is rejected
    • 💥 Target values are compared case-sensitively, so QuAcK123 and quack123 are two targets

Søk i Utviklerportalen

Søket er fullført!