New Zealand Rheumatic Fever FHIR Implementation Guide
1.0.0 - draft

New Zealand Rheumatic Fever FHIR Implementation Guide, published by Te Whatu Ora. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/tewhatuora/fhir-rheumatic-fever/ and changes regularly. See the Directory of published versions

CapabilityStatement: Rheumatic Fever FHIR API Capability Statement

Official URL: https://fhir-ig.digital.health.nz/rheumatic-fever/CapabilityStatement/RheumaticFeverCapabilityStatement Version: 1.0.0
Active as of 2024-06-14 Computable Name: RheumaticFeverAPICapabilityStatement

New Zealand rheumatic fever FHIR API capability statement

Raw OpenAPI-Swagger Definition file | Download

Generated Narrative: CapabilityStatement RheumaticFeverCapabilityStatement

Rheumatic Fever FHIR API Capability Statement

  • Implementation Guide Version: 1.0.0
  • FHIR Version: 4.0.1
  • Supported Formats: json
  • Supported Patch Formats:
  • Published on: 2024-06-14
  • Published by: Te Whatu Ora

Note to Implementers: FHIR Capabilities

Any FHIR capability may be 'allowed' by the system unless explicitly marked as 'SHALL NOT'. A few items are marked as MAY in the Implementation Guide to highlight their potential relevance to the use case.

FHIR RESTful Capabilities

Mode: server

Security
Enable CORS: yes
Security services supported: SMART-on-FHIR
Summary of System-wide Interactions
  • Supports the transactioninteraction described as follows:

    Request-Context custom header

    All HNZ FHIR API requests must include the health user and context of usage of the application making the API request.

    This context is supplied using the 'Request-Context' custom header in the form of a base64-encoded JSON object.

    Consumers of the Rheumatic Fever FHIR API must set the following properties in Request-Context

    Required context property Attribute value
    userIdentifier The userid of the user as authenticated by RFCCS or the PMS/health application.
    purposeOfUse Set to "POPHEALTH"
    userFullName Display name of the user of RFCCS or the PMS/health application.
    hpiOrganisation The HPI Organisation identifier for the RF Secondary Prevention Service (aka Lead Provider) the user is affiliated with
    hpiPractitioner If available, the HPI Practitioner identifier (Common Person Number) of the user
    hpiFacility If available, the HPI Facility identifier of the health facility where the application is being used

    The schema for defining and validating these properties can be found here

    Error status codes

    Read (GET) Operation Statuses

    Code Meaning Description
    200 OK The request was successful, and the response body contains the representation requested
    302 FOUND A common redirect response; you can GET the representation at the URI in the Location response header
    304 NOT MODIFIED Your client's cached version of the representation is still up to date
    401 UNAUTHORIZED The supplied credentials, if any, are not sufficient to access the resource
    404 NOT FOUND The requested representation was not found. Retrying this request is unlikely to be successful
    429 TOO MANY REQUESTS Your application is sending too many simultaneous requests
    500 SERVER ERROR An internal server error prevented return of the representation response
    503 SERVICE UNAVAILABLE We are temporarily unable to return the representation. Please wait and try again later

    Search (GET) Operation Statuses

    Code Meaning OperationOutcome in response? Description
    200 OK Yes, when there are additional messages about a match result The request was successful, and the response body contains the representation requested
    302 FOUND No A common redirect response; you can GET the representation at the URI in the Location response header
    400 BAD REQUEST Yes Incorrect search parameters or malformed request - see diagnostics in OperationOutcome
    401 UNAUTHORIZED The supplied credentials, if any, are not sufficient to access the resource
    429 TOO MANY REQUESTS No Your application is sending too many simultaneous requests
    500 SERVER ERROR No An internal server error prevented return of the representation response
    503 SERVICE UNAVAILABLE No The server is temporarily unable to return the representation. Please wait and try again later

    Create (POST or PUT) Operation Statuses

    Code Meaning Description
    200 OK The request was successful, and the resource was updated. The response body contains the updated representation
    201 CREATED The request was successful, a new resource was created, and the response body contains the representation
    204 OK - NO CONTENT The request was successful, but no content is returned in the response. In reality this is seldom used for REST APIs and more typically for process APIs. Should include a Location header indicating the location of an associated relevant resource
    207 MULTI STATUS The HTTP 207 Multi-Status response code indicates that there might be a mixture of responses.
    400 BAD REQUEST The data given in the POST or PUT failed validation. Inspect the response body for details
    401 UNAUTHORIZED The supplied credentials, if any, are not sufficient to create or update the resource
    404 NOT FOUND The endpoint that the API Consumer is attempting to create or update does not exist. Retrying this request is unlikely to be successful
    405 METHOD NOT ALLOWED You can't POST or PUT to the resource
    422 UNPROCESSABLE CONTENT The server understands the requests content and syntax however it is unable to process the instruction. Retrying this request will not succeed - the request must be modified
    429 TOO MANY REQUESTS Your application is sending too many simultaneous requests
    500 SERVER ERROR We couldn't create or update the resource. Please try again later

    Delete (DELETE) Operation Statuses

    Code Meaning Description
    204 OK The request was successful; the resource was deleted
    401 UNAUTHORIZED The supplied credentials, if any, are not sufficient to delete the resource
    404 NOT FOUND
    405 METHOD NOT ALLOWED You can't DELETE the resource
    429 TOO MANY REQUESTS Your application is sending too many simultaneous requests
    500 SERVER ERROR We couldn't delete the resource. Please try again later

    Non existent API endpoints

    When a consumer attempts to call a non-existent API end point, respond with a 501 Not Implemented status code.

Capabilities by Resource/Profile

Summary

The summary table lists the resources that are part of this configuration, and for each resource it lists:

  • The relevant profiles (if any)
  • The interactions supported by each resource (Read, Search, Update, and Create, are always shown, while VRead, Patch, Delete, History on Instance, or History on Type are only present if at least one of the resources has support for them.
  • The required, recommended, and some optional search parameters (if any).
  • The linked resources enabled for _include
  • The other resources enabled for _revinclude
  • The operations on the resource (if any)
Resource TypeProfileRV-RSUCDSearches_include_revincludeOperations
Bundlehttp://hl7.org/fhir/StructureDefinition/Bundleyyyyyypatient, actor, status, date*
CarePlanhttps://fhir-ig.digital.health.nz/rheumatic-fever/StructureDefinition/nz-rheumaticfever-careplanyyyyyypatient, status, subject, _profile, _id, category*, CarePlan:encounter
CareTeamSupported Profiles
  Rheumatic Fever Care Team
yyyyyyidentifier, _profile, _id, category
Conditionhttps://fhir-ig.digital.health.nz/rheumatic-fever/StructureDefinition/nz-rheumaticfever-conditionyyyyyypatient, subject, _profile, _id, category
Consenthttp://hl7.org/fhir/StructureDefinition/Consentyyyyyypatient, data, source-reference, status, _id*, Consent:source-reference
Encounterhttp://hl7.org/fhir/StructureDefinition/Encounteryyyyyypatient, status, subject, _id*, Encounter:diagnosis
MedicationRequesthttps://fhir-ig.digital.health.nz/rheumatic-fever/StructureDefinition/nz-rheumaticfever-medicationrequest
Additional supported profiles:
  MedicationRequest resource for use in NZ
yyyyyypatient, status, medication*
MedicationStatementhttp://hl7.org/fhir/StructureDefinition/MedicationStatement
Additional supported profiles:
  MedicationStatement resource for use in NZ
yyyyyypatient, status, medication*
Observationhttp://hl7.org/fhir/StructureDefinition/Observation
Additional supported profiles:
  Rheumatic Fever Diagnosis Group
yyyyyycode, date, identifier, patient, based-on, encounter, category, derived-from, performer, status, subject, value-concept, value-date, value-quantity, value-string, _id, _lastUpdated*, Observation:patient, Observation:encounter, Observation:based-on, Observation:derived-from, Observation:device, Observation:focus, Observation:has-member, Observation:part-of, Observation:performer, Observation:specimen, Observation:subject
Patienthttps://fhir-ig.digital.health.nz/rheumatic-fever/StructureDefinition/nz-rheumaticfever-patientyyyyyyidentifier, _profile, _id
Questionnaire yyyyyyidentifier, name, status, title, url, _id
QuestionnaireResponse yyyyyypatient, questionnaire, status, subject, _id*, QuestionnaireResponse:based-on, QuestionnaireResponse:encounter

Resource Conformance: supported Bundle

Base System Profile
Bundle
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

Who the sensitivity is for Patient

SHALLactorreference

Any one of the individuals participating in the appointment (Practitioner, Device, Patient, HealthcareService, PractitionerRole, RelatedPerson, Location)

SHALLstatustoken

proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist

SHALLdatedate

Appointment date/time

 

Resource Conformance: supported CarePlan

Base System Profile
Rheumatic Fever CarePlan
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

Who the care plan is for

SHALLstatustoken

draft | active | on-hold | revoked | completed | entered-in-error | unknown

SHALLsubjectreference

Who the care plan is for

SHALL_profilereference

Filter RheumaticFeverCarePlan instances using the applicable profile canonical Url from IG

SHALL_idtoken

Logical id of this artifact

SHALLcategorytoken

Care plan search by category code. All rheumatic fever care plans are categorised #rf-nz

 

Resource Conformance: supported CareTeam

Core FHIR Resource
CareTeam
Reference Policy
Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Supported Profiles

Rheumatic Fever Care Team

Documentation

This server supports one subtype of FHIR CareTeam - refer to Profiles

  1. RheumaticFeverCareTeam - simply requires use of particular Condition.category codes in rheumatic fever health applications
Search Parameters
ConformanceParameterTypeDocumentation
SHALLidentifiertoken

The patient's official NHI identifier

SHALL_profilereference

Filter RheumaticFeverCareTeam instances using the applicable profile canonical Url from IG

SHALL_idtoken

Logical id of this artifact

SHALLcategorytoken

Care team search by category code. All rheumatic fever care teams are categorised #rf-nz

 

Resource Conformance: supported Condition

Base System Profile
Rheumatic Fever Condition
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

Who has the condition?

SHALLsubjectreference

Who has the condition?

SHALL_profilereference

Filter RheumaticFeverCondition instances using the applicable profile canonical Url from IG

SHALL_idtoken

Logical id of this artifact

SHALLcategorytoken

Condition search by category code. All rheumatic fever condtion instances have two category values (#rf-nz, SNOMED #58718002)

 

Resource Conformance: supported Consent

Base System Profile
Consent
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

Who the consent applies to

SHALLdatareference

The actual data reference

SHALLsource-referencereference

Search by reference to a Consent, DocumentReference, Contract or QuestionnaireResponse

SHALLstatustoken

draft | proposed | active | rejected | inactive | entered-in-error

SHALL_idtoken

Logical id of this artifact

 

Resource Conformance: supported Encounter

Base System Profile
Encounter
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The patient or group present at the encounter

SHALLstatustoken

planned | arrived | triaged | in-progress | onleave | finished | cancelled +

SHALLsubjectreference

The patient or group present at the encounter

SHALL_idtoken

Logical id of this artifact

 

Resource Conformance: supported MedicationRequest

Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Documentation

This server profiles NzMedicationRequest AND supports the NZ Base IG profile NzMedicationRequest.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The rheumatic fever patient for whom this medication is prescribed

SHALLstatustoken

active | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown +

SHALLmedicationreference

Return all MedicationRequests that relate to this type of medication

 

Resource Conformance: supported MedicationStatement

Base System Profile
MedicationStatement
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Documentation

This server supports the NZ Base IG profiles NzMedicationStatement in addition to the base MedicationStatement FHIR resource.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The rheumatic fever patient to whom medication was administered

SHALLstatustoken

active | completed | entered-in-error | intended | stopped | on-hold | unknown | not-taken +

SHALLmedicationreference

Return all instances of administration of this medication

 

Resource Conformance: supported Observation

Base System Profile
Observation
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLcodetoken

Describes what was observed. Sometimes this is called the observation 'name'

SHALLdatedate

Observation.effective Obtained date/time. If the obtained element is a period, a date that falls in the period

SHALLidentifiertoken

A unique identifier assigned to this observation.

SHALLpatientreference

Who the observation is for Patient

SHALLbased-onreference

Reference to the service request.

SHALLencounterreference

The Encounter resource associated with the Observation.

SHALLcategorytoken

The classification of the type of observation

SHALLderived-fromreference

Related measurements the observation is made from

SHALLperformerreference

Who performed the observation

SHALLstatustoken

The status of the observation

SHALLsubjectreference

The subject that the observation is about

SHALLvalue-concepttoken

The value of the observation, if the value is a CodeableConcept

SHALLvalue-datedate

The value of the observation, if the value is a date or period of time

SHALLvalue-quantityquantity

The value of the observation, if the value is a Quantity, or a SampledData (just search on the bounds of the values in sampled data)

SHALLvalue-stringstring

The value of the observation, if the value is a string, and also searches in CodeableConcept.text

SHALL_idtoken

Logical id of this artifact

SHALL_lastUpdateddate

When the resource version last changed

 

Resource Conformance: supported Patient

Base System Profile
Rheumatic Fever Patient
Profile Conformance
SHALL
Reference Policy

Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Documentation

This server supports one profile of FHIR Patient which is the rheumatic fever patient profile

Search Parameters
ConformanceParameterTypeDocumentation
SHALLidentifiertoken

The patient's official NHI identifier

SHALL_profilereference

Filter RheumaticFeverPatient instances using the applicable profile canonical Url from IG

SHALL_idtoken

Logical id of this artifact

 

Resource Conformance: supported Questionnaire

Core FHIR Resource
Questionnaire
Reference Policy
Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLidentifiertoken

External identifier for the questionnaire

SHALLnamestring

Computationally friendly name of the questionnaire

SHALLstatustoken

The current status of the questionnaire

SHALLtitlestring

The human-friendly name of the questionnaire

SHALLurluri

The uri that identifies the questionnaire

SHALL_idtoken

Logical id of this artifact

 

Resource Conformance: supported QuestionnaireResponse

Core FHIR Resource
QuestionnaireResponse
Reference Policy
Interaction summary
  • Supports create, read, update, delete, vread, search-type.

Search Parameters
ConformanceParameterTypeDocumentation
SHALLpatientreference

The patient that is the subject of the questionnaire response

SHALLquestionnairereference

The questionnaire the answers are provided for

SHALLstatustoken

The status of the questionnaire response

SHALLsubjectreference

The subject of the questionnaire response

SHALL_idtoken

Logical id of this artifact