Create a diagnostic report
post
/DiagnosticReport
Creates a new diagnostic report.
Note:
- Cardiology and anatomic pathology reports are supported for the create operation.
- Only the body fields mentioned below are supported. Unsupported fields are ignored or can result in errors.
- All provided dates must have a time component.
- The following MIME types are supported:
- application/pdf
- text/plain
- text/richtext
- text/rtf
- text/html
- application/xml
- application/xhtml+xml
- The API to create a cardiology diagnostic report requires a default user that is set up in the domain to chart a document. If a default user is not defined in the domain, a results_interpreter attribute is mandatory to chart a cardiology document.
Authorization Types
This operation supports the following authorization types:
Request
Supported Media Types
- application/fhir+json
Header Parameters
-
Authorization(required): string
Contains the credentials to authenticate a consumer to the service. This should be the OAuth2 Bearer token.
-
accept(required): string
The media type to be requested. See what the resource's operation produces for what is supported.
-
content-type(required): string
Specifies the content type of the request entity body.
The body of the create operation
Root Schema : DiagnosticReportCreate
Type:
objectA summary representation of the create (POST) operation for a diagnostic report.
Show Source
-
basedOn:
object basedOn
Details concerning a service requested.
Note: Only the anatomic pathology concept supports thebasedOnfield. Must contain ServiceRequest references with valid Millennium IDs.
Example:{ "basedOn": [ { "reference": "ServiceRequest/99928073" } ] } -
category(required):
object category
A code that classifies the clinical discipline, department, or diagnostic service that created the report (such as cardiology or anatomic pathology). This code is used for searching, sorting, and display purposes.
Note: The code must be LP29708-2 for a cardiology concept and LP7839-6 for an anatomic pathology concept.
Example:{ "category": [ { "coding": [ { "code": "LP29708-2", "display": "Cardiology", "isUserSelected": false, "system": "http://loinc.org" } ], "text": "string" } ] }{ "category": [ { "coding": [ { "code": "LP7839-6", "display": "Pathology study", "isUserSelected": false, "system": "http://loinc.org" } ], "text": "string" } ] } -
code(required):
object code
Specifies the particular type of diagnostic report.
Note:- The code must include a LOINC or proprietary coding but not both together.
- Multiple LOINC codings or a single proprietary coding can be provided.
- When providing a proprietary code system, ensure that the format is
https://fhir.cerner.com/[your EHR source ID]/codeSet/[code set], where the code set is Millennium Code Set 72. Example:https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72
{ "code": { "coding": [ { "code": "703535", "system": "https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72", "userSelected": true, "display": "Temperature Axillary" } ], "text": "Cardiology" } }{ "code": { "coding": [ { "code": "4187236", "system": "https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72", "userSelected": true, "display": "Anatomic Pathology" } ], "text": "Anatomic Pathology" } } -
conclusion:
string
A concise and clinically contextualized summary conclusion (interpretation or impression) of the diagnostic report.
Note: Only the cardiology concept supportsconclusionfield. Must be able to provide a conclusion that is not lost among the basic result data.
Example:{ "conclusion": "conclusion string" } -
effectiveDateTime(required):
string
The time or time period that the observed values are related to. When the subject of the report is a patient, the effectiveDateTime is usually the time of the procedure or specimen collection. The source of the date and time is often unknown, and only the date and time itself is known.
Note: Only the anatomic pathology concept supports the effectiveDateTime field.
Example:{ "effectiveDateTime": "2020-12-27T09:12:28Z", } -
effectivePeriod(required):
object effectivePeriod
The time or time period that the observed values are related to. When the subject of the report is a patient, the effectivePeriod is usually the time of the procedure or specimen collection. The source of the date and time is often unknown, and only the date and time itself is known.
Note: Only the cardiology concept supports the effectivePeriod field.
Example:{ "effectivePeriod": { "start": "2020-09-14T09:05:12.000Z", "end": "2020-09-14T09:05:12.000Z" } } -
encounter:
object encounter
The healthcare event (such as a patient and healthcare provider interaction) that this diagnostic report is about.
Note: The encounter has to match the original document encounter.
Example:{ "encounter": { "reference": "Encounter/98041577" } } -
identifier(required):
object identifier
Identifiers assigned to this report by the performer or other systems.
Note:- The identifier for the cardiology concept must include the
use,type,system, andvaluefields. - The
typefield would includecoding. codinginternally would includecode,system,version,display, anduserSelected.- The identifier for the anatomic pathology concept must include the
systemandvaluefields.
{ "identifier": [ { "use": "usual", "type": { "coding": [ { "code": "Coding", "system": "http://snomed.info/sct", "version": "4.0.1", "display": "test", "userSelected": true } ] }, "system": "http://hl7.org/fhir/sid/us-ssn", "value": "11182456" } ] }{ "identifier": [ { "system": "https://fhir.cerner.com/ceuuid", "value": "CEfda49233-ccfa-4ed4-afbc-9f5082c2bf0c-34824240-2022051205454801" } ] } - The identifier for the cardiology concept must include the
-
issued:
string
The date and time when this version of the report was made available to providers, typically after the report was reviewed and verified.
Note: A time component must be provided with the date.
Example:{ "issued": "2020-07-29T21:02:04.000Z" } -
meta:
object meta
The DiagnosticReport metadata.
-
performer(required):
object performer
The diagnostic service that is responsible for issuing the report.
Note: Must contain Practitioner or Organization references with valid Millennium IDs.
Example:{ "performer": [ { "reference": "Practitioner/3332064" } ] } -
presentedForm(required):
object presentedForm
Rich-text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they shall be semantically equivalent.
Note: Data and content type must be provided. The cardiology concept supports thecontentType,data,url,title, andcreationfields under presented forms. The anatomic pathology concept supports thecontentTypeanddatafields under present forms.
Example:{ "presentedForm": { "contentType": "application/pdf;charset=utf-8", "data": "PGh0bWw+Cjx0aXRsZT4gVGVzdCBEb2N1bWVudCA8L3RpdGxlPgoKRG9jdW1lbnQgY29udGVudCEKCjwvaHRtbD4=", "url": "http://snomed.info/sct" "title": "CT image", "creation": "2020-07-29T21:02:04.000Z" } }{ "presentedForm": { "contentType": "application/pdf;charset=utf-8", "data": "PGh0bWw+Cjx0aXRsZT4gVGVzdCBEb2N1bWVudCA8L3RpdGxlPgoKRG9jdW1lbnQgY29udGVudCEKCjwvaHRtbD4=" } } -
presentedForm.contentType(required):
string
Identifies the type of data in the attachment and allows a method to be chosen to interpret or render the data. Includes mime type parameters such as charset where appropriate.
Note:- Must be provided.
- Content type must include a supported MIME type and character set.
- The following values are supported:
application/pdftext/plain;charset=utf-8text/richtext;charset=utf-8text/rtf;charset=utf-8text/html;charset=utf-8application/xml;charset=utf-8application/xhtml+xml;charset=utf-8
{ "contentType": "application/pdf;charset=utf-8" } -
presentedForm.creation:
string
The date when the attachment was first created.
Note: A time component must be provided with the date.
Example:{ "creation": "2020-07-29T21:02:04.000Z" } -
presentedForm.data(required):
string
The actual data of the attachment as a sequence of bytes that is base64 encoded.
Example:{ "data": "PGh0bWw+Cjx0aXRsZT4gVGVzdCBEb2N1bWVudCA8L3RpdGxlPgoKRG9jdW1lbnQgY29udGVudCEKCjwvaHRtbD4=" } -
presentedForm.title:
string
A label or set of text to display in place of the data.
Example:{ "title": "CT image", } -
presentedForm.url:
string
A location where the data can be accessed.
Example:{ "title": "http://snomed.info/sct", } -
resourceType(required):
string
Allowed Values:
[ "DiagnosticReport" ]The type of the FHIR resource. -
resultsInterpreter:
object resultsInterpreter
The practitioner or organization that is responsible for the report's conclusions and interpretations.
Note:- Only the cardiology concept supports the
resultsInterpreterfield. - Must contain Practitioner or Organization references with valid Millennium IDs.
- The API to create a cardiology diagnostic report requires a default user that is set up in the domain to chart a document. If no default user is defined in the domain, a results_interpreter attribute is mandatory to chart a cardiology document.
{ "resultsInterpreter": { "reference": "Practitioner/3332064" } } - Only the cardiology concept supports the
-
status(required):
string
The status of the diagnostic report.
Note: Must be one of the following statuses:- amended
- cancelled
- entered-in-error
- final
- partial
- preliminary
- registered
- superseded
- unknown
{ "status": "final" } -
subject(required):
object subject
The subject of the report. Usually, but not always, the subject is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources.
Note: Only patient references are supported.
Example:{ "subject": { "reference": "Patient/12457977" } }
Nested Schema : basedOn
Type:
objectDetails concerning a service requested.
Note: Only the anatomic pathology concept supports the
Example:
Show Source
Note: Only the anatomic pathology concept supports the
basedOn field. Must contain ServiceRequest references with valid Millennium IDs.Example:
{
"basedOn": [
{
"reference": "ServiceRequest/99928073"
}
]
}
Nested Schema : category
Type:
objectA code that classifies the clinical discipline, department, or diagnostic service that created the report (such as cardiology or anatomic pathology). This code is used for searching, sorting, and display purposes.
Note: The code must be LP29708-2 for a cardiology concept and LP7839-6 for an anatomic pathology concept.
Example:
Show Source
Note: The code must be LP29708-2 for a cardiology concept and LP7839-6 for an anatomic pathology concept.
Example:
{
"category": [
{
"coding": [
{
"code": "LP29708-2",
"display": "Cardiology",
"isUserSelected": false,
"system": "http://loinc.org"
}
],
"text": "string"
}
]
}
{
"category": [
{
"coding": [
{
"code": "LP7839-6",
"display": "Pathology study",
"isUserSelected": false,
"system": "http://loinc.org"
}
],
"text": "string"
}
]
}
Nested Schema : code
Type:
objectSpecifies the particular type of diagnostic report.
Note:
Show Source
Note:
- The code must include a LOINC or proprietary coding but not both together.
- Multiple LOINC codings or a single proprietary coding can be provided.
- When providing a proprietary code system, ensure that the format is
https://fhir.cerner.com/[your EHR source ID]/codeSet/[code set], where the code set is Millennium Code Set 72. Example:https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72
{
"code": {
"coding": [
{
"code": "703535",
"system": "https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72",
"userSelected": true,
"display": "Temperature Axillary"
}
],
"text": "Cardiology"
}
}
{
"code": {
"coding": [
{
"code": "4187236",
"system": "https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72",
"userSelected": true,
"display": "Anatomic Pathology"
}
],
"text": "Anatomic Pathology"
}
}
Nested Schema : effectivePeriod
Type:
objectThe time or time period that the observed values are related to. When the subject of the report is a patient, the effectivePeriod is usually the time of the procedure or specimen collection. The source of the date and time is often unknown, and only the date and time itself is known.
Note: Only the cardiology concept supports the effectivePeriod field.
Example:
Show Source
Note: Only the cardiology concept supports the effectivePeriod field.
Example:
{
"effectivePeriod": {
"start": "2020-09-14T09:05:12.000Z",
"end": "2020-09-14T09:05:12.000Z"
}
}
Nested Schema : encounter
Type:
objectThe healthcare event (such as a patient and healthcare provider interaction) that this diagnostic report is about.
Note: The encounter has to match the original document encounter.
Example:
Show Source
Note: The encounter has to match the original document encounter.
Example:
{
"encounter": {
"reference": "Encounter/98041577"
}
}
Nested Schema : identifier
Type:
objectIdentifiers assigned to this report by the performer or other systems.
Note:
Show Source
Note:
- The identifier for the cardiology concept must include the
use,type,system, andvaluefields. - The
typefield would includecoding. codinginternally would includecode,system,version,display, anduserSelected.- The identifier for the anatomic pathology concept must include the
systemandvaluefields.
{
"identifier": [
{
"use": "usual",
"type": {
"coding": [
{
"code": "Coding",
"system": "http://snomed.info/sct",
"version": "4.0.1",
"display": "test",
"userSelected": true
}
]
},
"system": "http://hl7.org/fhir/sid/us-ssn",
"value": "11182456"
}
]
}
{
"identifier": [
{
"system": "https://fhir.cerner.com/ceuuid",
"value": "CEfda49233-ccfa-4ed4-afbc-9f5082c2bf0c-34824240-2022051205454801"
}
]
}
Nested Schema : meta
Type:
objectThe DiagnosticReport metadata.
Show Source
-
security:
array security
The DiagnosticReport confidentiality (only supported for Anatomic Pathology reports).
Nested Schema : performer
Type:
objectThe diagnostic service that is responsible for issuing the report.
Note: Must contain Practitioner or Organization references with valid Millennium IDs.
Example:
Show Source
Note: Must contain Practitioner or Organization references with valid Millennium IDs.
Example:
{
"performer": [
{
"reference": "Practitioner/3332064"
}
]
}
Nested Schema : presentedForm
Type:
objectRich-text representation of the entire result as issued by the diagnostic service. Multiple formats are allowed but they shall be semantically equivalent.
Note: Data and content type must be provided. The cardiology concept supports the
Example:
Show Source
Note: Data and content type must be provided. The cardiology concept supports the
contentType, data, url, title, and creation fields under presented forms. The anatomic pathology concept supports the contentType and data fields under present forms.Example:
{
"presentedForm": {
"contentType": "application/pdf;charset=utf-8",
"data": "PGh0bWw+Cjx0aXRsZT4gVGVzdCBEb2N1bWVudCA8L3RpdGxlPgoKRG9jdW1lbnQgY29udGVudCEKCjwvaHRtbD4=",
"url": "http://snomed.info/sct"
"title": "CT image",
"creation": "2020-07-29T21:02:04.000Z"
}
}
{
"presentedForm": {
"contentType": "application/pdf;charset=utf-8",
"data": "PGh0bWw+Cjx0aXRsZT4gVGVzdCBEb2N1bWVudCA8L3RpdGxlPgoKRG9jdW1lbnQgY29udGVudCEKCjwvaHRtbD4="
}
}
-
contentType(required):
string
Identifies the type of data in the attachment and allows a method to be chosen to interpret or render the data. Includes MIME type parameters such as charset where appropriate.
-
creation:
string
The date when the attachment was first created.
-
data(required):
string
The actual data of the attachment as a sequence of bytes that is base64 encoded.
-
title:
string
A label or set of text to display in place of the data.
Nested Schema : resultsInterpreter
Type:
objectThe practitioner or organization that is responsible for the report's conclusions and interpretations.
Note:
Show Source
Note:
- Only the cardiology concept supports the
resultsInterpreterfield. - Must contain Practitioner or Organization references with valid Millennium IDs.
- The API to create a cardiology diagnostic report requires a default user that is set up in the domain to chart a document. If no default user is defined in the domain, a results_interpreter attribute is mandatory to chart a cardiology document.
{
"resultsInterpreter": {
"reference": "Practitioner/3332064"
}
}
Nested Schema : subject
Type:
objectThe subject of the report. Usually, but not always, the subject is a patient. However, diagnostic services also perform analyses on specimens collected from a variety of other sources.
Note: Only patient references are supported.
Example:
Show Source
Note: Only patient references are supported.
Example:
{
"subject": {
"reference": "Patient/12457977"
}
}
Nested Schema : security
Type:
arrayThe DiagnosticReport confidentiality (only supported for Anatomic Pathology reports).
Show Source
Nested Schema : items
Type:
Show Source
object-
code:
string
The confidentiality label.
-
system:
string
The confidentiality system.
Response
Supported Media Types
- application/fhir+json
Default Response
Example create request and reply for a cardiology diagnostic report.
Example Request:
Example Request:
POST https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport
Example Request Body:
{
"resourceType": 'DiagnosticReport',
"status": 'amended',
"identifier": [
{
"use": 'usual',
"type": {
"coding": [
{
"code": 'Coding',
"system": 'http://snomed.info/sct',
"version": '4.0.1',
"display": 'test',
"userSelected": true
}
]
},
"system": 'http://hl7.org/fhir/sid/us-ssn',
"value": '11182457'
}
],
"category": [
{
"coding": [
{
"code": 'LP29708-2',
"display": 'Cardiology',
"isUserSelected": false,
"system": 'http://loinc.org'
}
],
"text": 'string'
}
],
"code": {
"coding": [
{
"system": 'http://loinc.org',
"code": '8328-7'
}
],
"text": 'string'
},
"subject": {
"reference": 'Patient/12804513'
},
"encounter": {
"reference": 'Encounter/98041577'
},
"performer": [
{
"reference": 'Practitioner/11786042',
"display": 'Practitioner name string'
}
],
"resultsInterpreter": [
{
"reference": 'Practitioner/11786042',
"display": 'Practitioner name string'
}
],
"effectivePeriod": {
"start": '2020-09-14T09:05:12.000Z',
"end": '2020-09-14T09:05:12.000Z'
},
"issued": '2020-12-29T09:12:28Z',
"presentedForm": [
{
"contentType": 'application/pdf;charset=utf-8',
"url": 'http://snomed.info/sct',
"data": 'JVBERi0xLjQKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIF',
"title": 'CT image',
"creation": '2020-12-29T09:12:28Z'
}
],
"conclusion": 'conclusion string'
}
Example Response:
Date: Mon, 09 Oct 2023 17:29:02 GMT
Content-Type: text/html
Connection: keep-alive
Cache-Control: no-cache
Etag: W/"1"
Last-Modified: Mon, 09 Oct 2023 17:29:02 GMT
Location: https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport/197466617
Referrer-Policy: strict-origin-when-cross-origin
Server-Response-Time: 1288.314512
Strict-Transport-Security: max-age=631152000
Vary: Origin
X-Content-Type-Options: nosniff
X-Download-Options: noopen
X-Frame-Options: SAMEORIGIN
X-Permitted-Cross-Domain-Policies: none
opc-request-id: /11111111111111111111111111111111/11111111111111111111111111111111
X-Request-Id: 11111111-1111-1111-1111-111111111111
X-Runtime: 1.288262
X-Xss-Protection: 1; mode=block
Transfer-Encoding: chunked
The ETag response header indicates the current If-Match version to use on a subsequent update.
Headers
-
Etag: string
For Update or Patch versioning controls. Related to
If-Match. When a resource performs an operation that creates or updates a record, anEtagvalue is returned as a header. This same value should be included in request headers as anIf-Matchfor any subsequent update to that record. -
X-Request-Id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
X-Request-Id, if present. -
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
opc-Request-Id, if present.
x-create-for-anatomic-pathology Response
Example create request and reply for an anatomic pathology diagnostic report.
Example Request:
Example Request:
POST https://fhir-open.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/Provenance
Example Request Body:
{
"resourceType": 'DiagnosticReport',
"meta": {
"security": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "PHY"
},
{
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "PRS"
}
]
},
"status": 'amended',
"identifier": [
{
"system": 'https://fhir.cerner.com/ceuuid',
"value": 'CEfda49233-ccfa-4ed4-afbc-9f5082c2bf0c-34824240-2022051205454801'
}
],
"basedOn": [
{
"reference": 'ServiceRequest/99928073'
}
],
"category": [
{
"coding": [
{
"code": 'LP7839-6',
"display": 'Pathology study',
"isUserSelected": false,
"system": 'http://loinc.org'
}
],
"text": 'string'
}
],
"code": {
"coding": [
{
"code": '4187236',
"system": 'https://fhir.cerner.com/ec2458f2-1e24-41c8-b71b-0e701af7583d/codeSet/72',
"isUserSelected": true,
"display": 'Anatomic Pathology'
}
],
"text": 'string'
},
"subject": {
"reference": 'Patient/12804513'
},
"encounter": {
"reference": 'Encounter/98041577'
},
"performer": [
{
"reference": 'Practitioner/11786042'
}
],
"effectiveDateTime": '2020-12-27T09:12:28Z',
"issued": '2020-12-29T09:12:28Z',
"presentedForm": [
{
"contentType": 'application/pdf;charset=utf-8',
'data': 'PGh08L3RpdGxlPgoKRG9jdW1lbnQgY29udGVudCEKCjwvaHRtbD4='
}
]
}
Example Response:
Date: Mon, 09 Oct 2023 17:29:02 GMT
Content-Type: text/html
Connection: keep-alive
Cache-Control: no-cache
Etag: W/"1"
Last-Modified: Mon, 09 Oct 2023 17:29:02 GMT
Location: https://fhir-ehr.cerner.com/r4/ec2458f2-1e24-41c8-b71b-0e701af7583d/DiagnosticReport/197466627
Referrer-Policy: strict-origin-when-cross-origin
Server-Response-Time: 4626.253472
Strict-Transport-Security: max-age=631152000
Vary: Origin
X-Content-Type-Options: nosniff
X-Download-Options: noopen
X-Frame-Options: SAMEORIGIN
X-Permitted-Cross-Domain-Policies: none
opc-request-id: /11111111111111111111111111111111/11111111111111111111111111111111
X-Request-Id: 11111111-1111-1111-1111-111111111111
X-Runtime: 4.626156
X-Xss-Protection: 1; mode=block
Transfer-Encoding: chunked
The ETag response header indicates the current If-Match version to use on a subsequent update.
Headers
-
Etag: string
For Update or Patch versioning controls. Related to
If-Match. When a resource performs an operation that creates or updates a record, anEtagvalue is returned as a header. This same value should be included in request headers as anIf-Matchfor any subsequent update to that record. -
X-Request-Id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
X-Request-Id, if present. -
opc-request-id: string
Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, provide the
opc-Request-Id, if present.