4.0.0-ci-build - DSTU3 Switzerland flag

CH EPR FHIR (R4), published by eHealth Suisse. This guide is not an authorized publication; it is the continuous build for version 4.0.0-ci-build built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of and changes regularly. See the Directory of published versions

Trace Context

Trace Context header

For all transaction described in this implementation guide, the HTTP traceparent header is required. This header is defined in the W3C Trace Context Recommendation.

The header value is made of four parts separated by dashes: the version, trace-id, parent-id and trace-flags. For example:

GET /request HTTP/1.1
traceparent: 00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-00
  • The version is currently set to 00.
  • The trace-id is a unique identifier for this transaction instance (i.e. an HTTP request and its response). It is a 16-byte array encoded as 32 hexadecimal characters, all lowercase.
  • The parent-id is a unique identifier for this message. It is an 8-byte array, encoded as 16 hexadecimal characters, all lowercase.
  • The trace-flags is used to communicate tracing flags with the consumer. This implementation guide specifies no requirements for this field, it is recommended using the value 00.

Each actor shall support the traceparent header. Grouped actors shall use the same trace-id value to correlate IHE transactions.

Audit event requirements

The traceparent header value of the generated message SHALL be added to the generated Audit Event: for the client, the header value of the request; for the responder, the header value of the response. It is described as an AuditEvent.entity, with the system, as demonstrated below.

  "resourceType" : "AuditEvent",
  /* Rest of the AuditEvent */
  "entity" : [
      "what" : {
        "identifier" : {
          "value" : "00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-00"
      "type" : {
        "system" : "",
        "code" : "Traceparent"