This wiki has undergone a migration to Confluence found Here

Implantable Devices/UDI

From HL7 Argonaut Project Wiki
Jump to navigation Jump to search

Back to Argonaut Implementation Guide

**********************PLEASE NOTE********************************
This guide is no longer being actively maintained and updated.
On January 1st 2017, This guide is being superseded by the online 
version of the Argonaut-DSTU2 Implemenation Guide.
hosted at:
The working CI build is avaible now at :  


The Argonaut Problems provides the API documentation for searching for and fetching all unique device identifiers (UDI) for a patient’s implantable device(s)using the Device resource. The search criteria provided in the Quick Start are intended to support the 2015 Edition ONC Certification criterion Data Category Request 170.315(g)(18)

Argonaut Success Criteria


  • A client has connected to a server and fetched all Unique device identifier(s)(UDI)for a patient’s implantable device(s)using GET /Device?patient=[id].


  • A server is capable of returning all Unique device identifier(s)(UDI) for a patient’s implantable device(s) using GET /Device?patient=[id].
  • A server has ensured that every API request includes a valid Authorization token, supplied via:Authorization: Bearer {server-specific-token-here}
  • A server has rejected any unauthorized requests by returning an HTTP 401 Unauthorized response code.

Mandatory Data Elements

The following data-elements in the Device resource are mandatory (i.e data MUST be present). These are presented below in simple human-readable explanation and a more thorough summary of the requirements. Sample data is provided to demonstrate the requirements.

Each Device resource must have:

  1. a patient
  2. a UDI string ("udicarrier")
  3. a code identifying the type of resource

Complete Summary of the Mandatory Requirements

  1. One patient reference in Device.patient
  2. One udicarrier string in Device.udi
    • The Human Readable Form (HRF) representation of the barcode string as printed on the packaging of the device SHALL be used. The AIDC representation cannot be conveyed in FHIR, Because of limitations on character sets in XML and the need to round-trip JSON data through XML.
  3. A code in Device.type
    • Device.type with an extensible binding to SNOMED CT Device Types (Code Set)
Implantable Device Example

Quick Start

Below is a quick overview of the required search and read operations.

GET /Device?patient=[id]

Support: Mandatory to support search by patient.

Implementation Notes: Search for all implantable device UDIs for a patient. Fetches a bundle of all Device resources for the specified patient (how to search by reference).

Response Class:

  • (Status 200): successful operation
  • (Status 400): invalid parameter
  • (Status 401/4xx): unauthorized request
  • (Status 403): insufficient scope



Open Issues

Issues for the Implantable Devices/UDI IG have been identified and tracked HERE

TODO - update value set (link is to current build right now), create search example


Formalized testing with test scripts and objective results reporting is available through the participation of AEGIS and MITRE (Crucible). The testscript provided can be used to test servers: [todo]


Back to Argonaut Implementation Guide