visit the hl7 website
Ontario Subscription HL7® FHIR® Implementation Guide -v1.0.0-ballot1
fhir-logo
  • Index
  • Home
    • Home
    • Introduction
    • Relationship to Other Specifications
    • Scope
    • Glossary
  • Business Context
    • Business Context
    • Business Model
    • Business Data
    • Use Cases
    • Business Rules
  • Technical Context
    • Technical Context
    • Implementer Responsibility
    • Conformance Rules
    • Connectivity Summary
  • FHIR Artifacts
    • FHIR Artifacts
    • Interactions
    • Operations
    • Profiles
    • Terminology
    • System URIs
    • Capability Statement
    • Custom Search Parameters
    • Response Handling
    • Downloads
  • Change Log
    • Change Log
    • Known Issues & Future Developments
    • Revision History
    1. Index
    2. FHIR Artifacts
    3. Interactions
    4. Read Subscription

For a full list of available versions, see the Directory of published versions

4.1.4. Read Subscription

The Read Subscription interaction retrieves the details of an existing subscription. This interaction allows a subscriber or system to query the subscription registry to obtain information such as the subscription status, filtering criteria, notification endpoint, and other metadata. It ensures that subscribers can verify, manage, and maintain their active subscriptions within the Ontario Health ecosystem.


4.1.4.1. Scope

This interaction involves a request by a Point of Service system to read Subscription. The request is received by the Subscription service which reads and returns requested Subscription and an OperationOutcome resource if applicable.


4.1.4.2. Interaction Sequence Diagram


4.1.4.3. Specification

Read Subscription Request

The Read Subscription shall retrieve the specified FHIR Subscription resource from the repository.

GET [base]/Subscription/[subscription-id]

where [subscription-id] is the logical id of the existing Subscription resource.

Read Subscription Response

  • The server returns a 200 OK HTTP status code.

  • The server returns a 200 OK HTTP status code, and also returns a copy the Subscription resourse in the HTTP body.


4.1.4.4. Example of Get Subscription Interaction

Example Read Request

HTTP Method:

GET

Headers:

Content-Type: application/fhir+json

Address:

[base]/Subscription/f63b8b72-23b4-4c3f-8a07-8fbe93d46f9d

Example Read Response Body

HTTP Body contains a FHIR R5 Backport Subscription resource, conformant to Subscription


{
    "resourceType": "Subscription",
    "id": "f63b8b72-23b4-4c3f-8a07-8fbe93d46f9d",
    "identifier": [
            {
            "system": "https://oh-subscriptions.ca/ids",
            "value": "subscription-12345"
            }
        ],    
    "meta": {
        "profile":  [
            "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-subscription"
        ]
    },
    "text": {
        "status": "generated",
        --- We have skipped the narrative for better readability of the resource ---
    },
    "status": "active",
    "end": "2020-12-31T12:00:00Z",
    "reason": "R4/B Example Topic-Based Subscription for Patient Admission",
"extension": [
        {
        "url": "http://example.org/fhir/StructureDefinition/subscription-managingEntity",
        "valueReference": {
            "reference": "Organization/123",
            "display": "Orion EMR Instance"
        }
        }
  ],
    "criteria": "http://hl7.org/SubscriptionTopic/admission",
    "_criteria": {
        "extension":  [
            {
                "url": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-filter-criteria",
                "valueString": "Encounter?patient=Patient/123"
            }
        ]
    },
    "channel": {
        "extension":  [
            {
                "url": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-heartbeat-period",
                "valueUnsignedInt": 86400
            },
            {
                "url": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-timeout",
                "valueUnsignedInt": 60
            },
            {
                "url": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-max-count",
                "valuePositiveInt": 20
            }
        ],
        "type": "rest-hook",
        "endpoint": "https://example.org/Endpoints/d7dcc004-808d-452b-8030-3a3a13cd871d",
        "payload": "application/fhir+json",
        "_payload": {
            "extension":  [
                {
                    "url": "http://hl7.org/fhir/uv/subscriptions-backport/StructureDefinition/backport-payload-content",
                    "valueCode": "id-only"
                }
            ]
        }
    }
}


4.1.4.5. Expected Behaviour

Case Scenario Description HTTP Status Code Response Payload
1 An existing Subscription is retrieved from the repository HTTP 200 Retrieved Subscription Resource
2 The requested Subscription based on the provided logical id does not exist HTTP 404 Resource not found. Returns an OperationOutcome resource indicating an issue.
3 Failed authentication HTTP 401 Not Authenticated.
4 Not authorized to read Subscription HTTP 403
5 Subscription API validates the request but cannot return a valid response due to internal issues. HTTP 500 Internal Server Error. Returns an OperationOutcome resource indicating an issue.
Version: 1.0.0 FHIR Version: R4.0.1

Powered by SIMPLIFIER.NET

HL7® and FHIR® are the registered trademarks of Health Level Seven International