These API events help facilitate real-time, immediate clinical decision support (CDS). CDS hooks are events that are triggered during the provider's workflow, typically appearing as a popup modal or separate iFrame. The most common hooks are triggered upon:
- opening a patient chart
- signing an order
- creating an order
- scheduling
We support these type of hooks that allow you to:
- request a list of supported CDS hooks within the EHR system;
- return a list of supported CDS hooks within the EHR system;
- view context for a patient upon opening or interacting with their chart;
- view context when creating and selecting an order from a list of order types; and
- view order context and insights when signing an order.
Respond with a 200 HTTP response to OrderSelect. This response also contains decision support guidance (e.g., suggestions, links, narrative information) from the CDS service.
Request Body Schema
- Metarequired, object
- DataModelrequired, stringReliable
CDSHooks
- EventTyperequired, stringReliable
order-select-response
- EventDateTimestring, nullReliable
Displays the UTC date and time that an outgoing request is delivered or an incoming request is received.
ISO 8601 Format - Testboolean, nullReliable
Indicates whether the request is a test or not.
- Sourceobject
Contains the information for the system initiating the message, including the source ID and name.
Included in messages from Redox- IDstring, nullReliable
Identifies the system initiating the message. If you have multiple OAuth API keys per environment type, this value is required. If you have only one OAuth API key per environment type, or you're using legacy API keys, this value is optional.
UUID - Namestring, nullReliable
Displays the name of the system initiating the message.
- DestinationsArray of object
Contains the information for the endpoint(s) receiving the request. A request must contain at least one destination, but asynchronous requests can have more than one destination. Synchronous requests like queries can only support one destination.
Required when sending data to Redox.- IDstring, nullReliable
Identifies the endpoint that the request is directed to.
UUID - Namestring, nullReliable
Displays the name of the endpoint that the request is directed to.
- LogsArray of object
Contains the log identifier(s) for the request.
- IDstring, nullReliable
Identifies the request log(s) that correspond to this request. You can use this value to locate the relevant log in the Redox dashboard for support and reference.
UUID - AttemptIDstring, nullReliable
Identifies the request log attempt value, which is useful when retries are possible.
UUID
- FacilityCodestring, nullPossible
Code for the facility related to the message.
Only use this field if a health system indicates you should. The code is specific to the health system's EHR and might not be unique across health systems. In general, the facility fields within the data models (e.g. OrderingFacility) are more reliable and informative.
- cardsrequired, Array of object
Contain one or more cards with suggestions, links, or guidance.
- summaryrequired, stringReliable
Provide a short message shown in the UI to summarize the card's intent.
- indicatorrequired, stringReliable
Indicate the importance/severity (e.g.,
info,warning, orcritical). - uuidstring, nullProbable
Contains a unique identifier for the card. This ID is used to reference the card within the EHR system.
- detailstring, nullProbable
Add detailed guidance, rationale, or documentation.
If provided, this field must be represented in GitHub Flavored Markdown (GFM) format. - sourceobject
Identify the system that generated the card.
- labelstring, nullReliable
Display the name of the source.
- urlstring, nullProbable
Link to more info about the source.
- suggestionsArray of object
Recommend actions the user could take based on the hook context.
- labelstring, nullReliable
Display the name of the suggestion.
- uuidstring, nullProbable
Identify the suggestion for tracking.
- actionsArray of object
Define what FHIR resources or operations the suggestion performs.
- typestring, null
Specify the type of action (e.g.,
create,update, ordelete). - descriptionstring, null
Provide a description of the suggested action may be presented.
- resourceobject
Define the FHIR resource to be created, updated, or deleted.
- resourceTypestring, null
Specify the type of FHIR resource (e.g.,
MedicationRequestorServiceRequest).
- selectionsBehaviorstring, nullPossible
Control how many suggestions can be selected:
at-most-one,any,exactly-one.
Required ifsuggestionsis present. - overrideReasonsArray of object
Define valid reasons for overriding a recommendation.
- codestring, nullPossible
Specify the code for the override reason.
- systemstring, nullPossible
Specify the system for the override reason.
- displaystring, nullPossible
Display the reason for the override.
- linksArray of object
Provide links to additional information or resources.
- labelstring, null
Display the name of the link.
- urlstring, null
Link to more information.
- typestring, null
Specify the type of link (e.g.,
action,related, ordocumentation).
- systemActionsArray of object
Contain an array of Actions that the CDS Service proposes to auto-apply
- typestring, null
Specify the type of action (e.g.,
create,update, ordelete). - resourceobject
Define the FHIR resource to be created, updated, or deleted.
- resourceTypestring, null
Specify the type of FHIR resource (e.g.,
MedicationRequestorServiceRequest).