Skip to main content

Update Service Request Message

Overview

The Update Service Request message enables updating previously submitted referrals in Netsmart Referral Manager. This message type allows healthcare organizations to modify existing service requests with updated patient information, clinical details, or administrative changes.

Before implementing, validate messaging capabilities in the CapabilityStatement:

GET {base-url}/metadata

Check the messaging section for supported message events and required parameters.

Message Schema

This message provides the required information to update previously submitted Service Request (a.k.a., Referral) in Netsmart Referral Manager.

{
// ...
"eventCoding": {
"system": "http://ntst.com/fhir/message-events",
"code": "update-service-request"
}
// ...
}

Authorization

This message will require the application obtain authorization using one of the following custom scopes based on SMART.

  • v1: [patient|user|system]/Messaging.[write|*]
  • v2: To be determined. (future)

Workflow

Payload

The payload for this message will consist of a Bundle with the type message and additional resources that make up the relevant information for the Service Request.

ResourceCardinalityNote
MessageHeader1..1Required for all FHIR messages and must be the first entry in the Bundle.
ServiceRequest1..1Details of the ServiceRequest.
Patient1..1Subject of the ServiceRequest.
Condition0..*Associated conditions for this ServiceRequest.
Coverage0..*Associated insurance coverage for this ServiceRequest.
Location0..*Locations reference by the ServiceRequest or PractitionerRoles.
Observation0..*Associated Observations for this ServiceRequest.
Organization0..*Organizations referenced by the ServiceRequest or other resources.
Practitioner0..*Practitioners referenced by the ServiceRequest or other resources.
PractitionerRole0..*PractitionerRoles referenced by the ServiceRequest or other resources.
QuestionnaireResponse0..*Supporting information for the ServiceRequest. These should be listed in MessageHeader.focus since they are not referenced elsewhere in the Bundle.

Entity Relationship Diagram

Each resource included in the reference must be referenced by another resource within the Bundle. The diagram below illustrates the relationships and references.

Examples

Sample Request Payload

{
"resourceType": "Bundle",
"id": "607e4728-5d96-43a8-8be0-418313050140",
"type": "message",
"entry": [
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/MessageHeader/3641833",
"resource": {
"resourceType": "MessageHeader",
"eventCoding": {
"system": "http://ntst.com/fhir/message-events",
"code": "update-service-request"
},
"focus": [
{
"reference": "ServiceRequest/123456"
},
{
"reference": "QuestionnaireResponse/ABC-456789"
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/ServiceRequest/123456",
"resource": {
"resourceType": "ServiceRequest",
"id": "123456",
"extension": [
// We can support multiple extension data types via the message. However, these will only be read if configured in Referral Manager.
],
"identifier": [
// We can support the exchange of identifiers as well. Configure the Systems in Referral Manager to add to the Referral.
],
"status": "active",
"intent": "proposal",
"subject": {
"reference": "Patient/987654"
},
"requester": {
"reference": "PractitionerRole/45678"
},
"performer": [
{
"reference": "PractitionerRole/56789"
},
{
"reference": "Practitioner/888888888"
}
],
"locationReference": [
{
"reference": "Location/90456"
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/PractitionerRole/45678",
"resource": {
"resourceType": "PractitionerRole",
"id": "1176",
"practitioner": {
"reference": "Practitioner/444444444"
},
"organization": {
"reference": "Organization/90123"
}
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/PractitionerRole/56789",
"resource": {
"resourceType": "PractitionerRole",
"id": "56789",
"practitioner": {
"reference": "Practitioner/666666666"
},
"organization": {
"reference": "Organization/90123"
}
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Practitioner/444444444",
"resource": {
"resourceType": "Practitioner",
"id": "444444444",
"name": [
{
"family": "Family",
"given": [
"Given"
]
}
],
"telecom": [
{
"system": "phone",
"value": "5551234567"
},
{
"system": "email",
"value": "my.username@org.com"
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Practitioner/666666666",
"resource": {
"resourceType": "Practitioner",
"id": "900049",
"extension": [
// Supported
],
"identifier": [
// Supported
],
"name": [
{
"family": "Last",
"given": [
"First"
]
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Practitioner/888888888",
"resource": {
"resourceType": "Practitioner",
"id": "8236756",
"extension": [
// Supported
],
"name": [
{
"family": "Another",
"given": [
"Name"
]
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Organization/90123",
"resource": {
"resourceType": "Organization",
"id": "90123",
"extension": [
// Supported
],
"identifier": [
{
"system": "http://hl7.org/fhir/sid/us-npi",
"value": "2134567890"
},
],
"active": true,
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/organization-type",
"code": "prov",
"display": "Healthcare Provider"
}
]
}
],
"name": "Hospital Name",
"telecom": [
{
"system": "phone",
"value": "9998887777"
}
],
"address": [
{
"line": [
"123 Main Street",
"Apt B"
],
"city": "Springfield",
"state": "MO",
"postalCode": "65803",
"country": "USA"
}
]
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Patient/987654",
"resource": {
"resourceType": "Patient",
"extension": [
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race",
"extension": [
{
"url": "ombCategory",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2106-3",
"display": "White"
}
},
{
"url": "detailed",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2106-3",
"display": "White"
}
},
{
"url": "text",
"valueString": "White"
}
]
},
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity",
"extension": [
{
"url": "ombCategory",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2186-5",
"display": "Not Hispanic or Latino"
}
},
{
"url": "detailed",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2186-5",
"display": "Not Hispanic or Latino"
}
},
{
"url": "text",
"valueString": "Not Hispanic or Latino"
}
]
},
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex",
"valueCode": "M"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/patient-citizenship",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "urn:iso:std:iso:3166",
"code": "US"
}
]
}
},
{
"url": "code",
"valuePeriod": {
"start": "2000-03-12T05:00:00+00:00",
"end": "2017-08-31T05:00:00+00:00"
}
}
]
}
],
"identifier": [
// Supported
],
"name": [
{
"text": "First MI Last",
"family": "Last",
"given": [
"First",
"MI"
],
"suffix": "JR"
}
],
"telecom": [
{
"use": "home",
"system": "phone",
"value": "5556667788",
"rank": 1
},
{
"use": "work",
"system": "phone",
"value": "5556321478"
},
{
"use": "home",
"system": "email",
"value": "myemail20004@gmail.com"
}
],
"gender": "male",
"birthDate": "1997-01-16",
"deceasedBoolean": false,
"address": [
{
"use": "home",
"line": [
"4950 College Blvd."
],
"city": "Overland Park",
"state": "KS",
"postalCode": "66211",
"country": "US",
"period": {
"start": "2015-06-22T05:00:00+00:00"
}
}
],
"maritalStatus": {
"coding": [
{
"system": "urn:oid:2.16.840.1.113883.4.642.3.29",
"code": "C",
"display": "Common Law"
}
]
},
"communication": [
{
"language": {
"coding": [
{
"system": "urn:oid:1.0.639.1",
"code": "en",
"display": "English"
}
]
},
"preferred": true
}
]
}
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/QuestionnaireResponse/ABC-456789",
"resource": {
"resourceType": "QuestionnaireResponse",
"identifier": {
"value": "MQ_3641833"
},
"basedOn": [
{
"reference": "ServiceRequest/123456"
}
],
"questionnaire": "Questionnaire/ABC",
"status": "in-progress",
"item": [
{
"linkId": "P-01",
"text": "Text of the first prompt?",
"answer": [
{
"valueString": "Free-text answer"
}
]
},
{
"linkId": "P-02",
"text": "Text the second prompt?",
"answer": [
{
"valueBoolean": false
}
]
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Location/90456",
"resource": {
"resourceType": "Location",
"id": "90456",
"extension": [
// Supported
],
"identifier": [
// Supported
],
"status": "active",
"name": "Facility Name",
"description": "Facility description.",
"mode": "instance",
"telecom": [
{
"use": "work",
"system": "phone",
"value": "2328"
},
{
"system": "email",
"value": "facility@domain.com"
}
],
"address": {
"use": "work",
"line": [
"Street 1",
"Street 2"
],
"city": "City",
"postalCode": "12345+6789",
"country": "US"
},
"position": {
"longitude": -83.6945691,
"latitude": 42.25475478,
"altitude": 0
},
"managingOrganization": {
"reference": "Organization/90123"
},
"hoursOfOperation": [
{
"daysOfWeek": [
"mon",
"tue",
"wed",
"thu",
"fri"
],
"allDay": false,
"openingTime": "07:00:00",
"closingTime": "19:00:00"
},
{
"daysOfWeek": [
"sat"
],
"allDay": false,
"openingTime": "09:00:00",
"closingTime": "16:00:00"
}
]
}
},
]
}

Sample Response Payload

{
"resourceType": "Bundle",
"id": "1a124350-e357-4b29-b780-1a4c9064c024",
"type": "message",
"entry": [
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/MessageHeader/3641833",
"resource": {
"resourceType": "MessageHeader",
"eventCoding": {
"system": "http://ntst.com/fhir/message-events",
"code": "update-service-request"
},
"response": {
"identifier": "607e4728-5d96-43a8-8be0-418313050140",
"code": "ok"
},
"focus": [
{
"reference": "ServiceRequest/123456"
},
{
"reference": "QuestionnaireResponse/ABC-456789"
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/ServiceRequest/123456",
"resource": {
"resourceType": "ServiceRequest",
"id": "123456",
"extension": [
// We can support multiple extension data types via the message. However, these will only be read if configured in Referral Manager.
],
"identifier": [
// We can support the exchange of identifiers as well. Configure the Systems in Referral Manager to add to the Referral.
],
"status": "active",
"intent": "proposal",
"subject": {
"reference": "Patient/987654"
},
"requester": {
"reference": "PractitionerRole/45678"
},
"performer": [
{
"reference": "PractitionerRole/56789"
},
{
"reference": "Practitioner/888888888"
}
],
"locationReference": [
{
"reference": "Location/90456"
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/PractitionerRole/45678",
"resource": {
"resourceType": "PractitionerRole",
"id": "1176",
"practitioner": {
"reference": "Practitioner/444444444"
},
"organization": {
"reference": "Organization/90123"
}
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/PractitionerRole/56789",
"resource": {
"resourceType": "PractitionerRole",
"id": "56789",
"practitioner": {
"reference": "Practitioner/666666666"
},
"organization": {
"reference": "Organization/90123"
}
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Practitioner/444444444",
"resource": {
"resourceType": "Practitioner",
"id": "444444444",
"name": [
{
"family": "Family",
"given": [
"Given"
]
}
],
"telecom": [
{
"system": "phone",
"value": "5551234567"
},
{
"system": "email",
"value": "my.username@org.com"
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Practitioner/666666666",
"resource": {
"resourceType": "Practitioner",
"id": "900049",
"extension": [
// Supported
],
"identifier": [
// Supported
],
"name": [
{
"family": "Last",
"given": [
"First"
]
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Practitioner/888888888",
"resource": {
"resourceType": "Practitioner",
"id": "8236756",
"extension": [
// Supported
],
"name": [
{
"family": "Another",
"given": [
"Name"
]
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Organization/90123",
"resource": {
"resourceType": "Organization",
"id": "90123",
"extension": [
// Supported
],
"identifier": [
{
"system": "http://hl7.org/fhir/sid/us-npi",
"value": "2134567890"
},
],
"active": true,
"type": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/organization-type",
"code": "prov",
"display": "Healthcare Provider"
}
]
}
],
"name": "Hospital Name",
"telecom": [
{
"system": "phone",
"value": "9998887777"
}
],
"address": [
{
"line": [
"123 Main Street",
"Apt B"
],
"city": "Springfield",
"state": "MO",
"postalCode": "65803",
"country": "USA"
}
]
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Patient/987654",
"resource": {
"resourceType": "Patient",
"extension": [
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race",
"extension": [
{
"url": "ombCategory",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2106-3",
"display": "White"
}
},
{
"url": "detailed",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2106-3",
"display": "White"
}
},
{
"url": "text",
"valueString": "White"
}
]
},
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity",
"extension": [
{
"url": "ombCategory",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2186-5",
"display": "Not Hispanic or Latino"
}
},
{
"url": "detailed",
"valueCoding": {
"system": "urn:oid:2.16.840.1.113883.6.238",
"code": "2186-5",
"display": "Not Hispanic or Latino"
}
},
{
"url": "text",
"valueString": "Not Hispanic or Latino"
}
]
},
{
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex",
"valueCode": "M"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/patient-citizenship",
"extension": [
{
"url": "code",
"valueCodeableConcept": {
"coding": [
{
"system": "urn:iso:std:iso:3166",
"code": "US"
}
]
}
},
{
"url": "code",
"valuePeriod": {
"start": "2000-03-12T05:00:00+00:00",
"end": "2017-08-31T05:00:00+00:00"
}
}
]
}
],
"identifier": [
// Supported
],
"name": [
{
"text": "First MI Last",
"family": "Last",
"given": [
"First",
"MI"
],
"suffix": "JR"
}
],
"telecom": [
{
"use": "home",
"system": "phone",
"value": "5556667788",
"rank": 1
},
{
"use": "work",
"system": "phone",
"value": "5556321478"
},
{
"use": "home",
"system": "email",
"value": "myemail20004@gmail.com"
}
],
"gender": "male",
"birthDate": "1997-01-16",
"deceasedBoolean": false,
"address": [
{
"use": "home",
"line": [
"4950 College Blvd."
],
"city": "Overland Park",
"state": "KS",
"postalCode": "66211",
"country": "US",
"period": {
"start": "2015-06-22T05:00:00+00:00"
}
}
],
"maritalStatus": {
"coding": [
{
"system": "urn:oid:2.16.840.1.113883.4.642.3.29",
"code": "C",
"display": "Common Law"
}
]
},
"communication": [
{
"language": {
"coding": [
{
"system": "urn:oid:1.0.639.1",
"code": "en",
"display": "English"
}
]
},
"preferred": true
}
]
}
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/QuestionnaireResponse/ABC-456789",
"resource": {
"resourceType": "QuestionnaireResponse",
"identifier": {
"value": "MQ_3641833"
},
"basedOn": [
{
"reference": "ServiceRequest/123456"
}
],
"questionnaire": "Questionnaire/ABC",
"status": "in-progress",
"item": [
{
"linkId": "P-01",
"text": "Text of the first prompt?",
"answer": [
{
"valueString": "Free-text answer"
}
]
},
{
"linkId": "P-02",
"text": "Text the second prompt?",
"answer": [
{
"valueBoolean": false
}
]
}
]
}
},
{
"fullUrl": "https://fhir.netsmartcloud.com/v4/Location/90456",
"resource": {
"resourceType": "Location",
"id": "90456",
"extension": [
// Supported
],
"identifier": [
// Supported
],
"status": "active",
"name": "Facility Name",
"description": "Facility description.",
"mode": "instance",
"telecom": [
{
"use": "work",
"system": "phone",
"value": "2328"
},
{
"system": "email",
"value": "facility@domain.com"
}
],
"address": {
"use": "work",
"line": [
"Street 1",
"Street 2"
],
"city": "City",
"postalCode": "12345+6789",
"country": "US"
},
"position": {
"longitude": -83.6945691,
"latitude": 42.25475478,
"altitude": 0
},
"managingOrganization": {
"reference": "Organization/90123"
},
"hoursOfOperation": [
{
"daysOfWeek": [
"mon",
"tue",
"wed",
"thu",
"fri"
],
"allDay": false,
"openingTime": "07:00:00",
"closingTime": "19:00:00"
},
{
"daysOfWeek": [
"sat"
],
"allDay": false,
"openingTime": "09:00:00",
"closingTime": "16:00:00"
}
]
}
},
]
}

Integration Patterns

Update Workflow

  1. Identify Existing Service Request

    • Use ServiceRequest ID from original submission
    • Include all required identifiers
    • Maintain resource relationships
  2. Prepare Update Bundle

    • Include MessageHeader with update event
    • Reference existing ServiceRequest by ID
    • Include updated resource data
  3. Submit Update Message

    • POST to /$process-message endpoint
    • Handle response and confirmation
    • Process any validation errors

Best Practices

  • Always include complete resource data in updates
  • Maintain referential integrity between resources
  • Use consistent identifiers across messages
  • Validate message structure before submission

Relationships to Other Resources

Error Handling

For comprehensive error handling information, see Common Errors.

Support

For technical support with Update Service Request messages: