This data model is for tracking surgical supplies (e.g., scalpels, bandages) between systems.
Inventory workflows are common for connecting to inpatient EHR systems with robust interfacing capabilities and surgical specialty modules. Supplies are often used in areas that function similarly to surgery (e.g., invasive cardiology, angiography).
You can exchange inventory data with inventory management systems, the EHR system, or other system responsible for consuming supplies.
This data model has event types that allow you to:
- send administrative updates; or
- document supply depletions.
Send an administrative message to synchronize types, counts, locations, and prices across systems. This event is triggered when database updates are made in the inventory management system.
The Update event is for reading and writing supply metadata. For example, how many items are on hand, whether or not an item is chargeable, and where the supply is located.
This message typically comes from the Enterprise Resource Planner (ERP) into the EHR system, including the types of items stocked and the specific locations in the hospital they might be found.
Request Body Schema
- Metarequired, object
- DataModelrequired, stringReliable
Inventory
- EventTyperequired, stringReliable
Update
- 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.
- Itemsrequired, Array of object
- Identifiersrequired, Array of object
- IDrequired, stringReliable
The identifier list for an item can contain multiple aliases, including the application ID for the item, an external ordering system's ID, or the an ID that the health system uses to identify the item across systems.
- IDTyperequired, stringReliable
The type of identifier in Item.Identifiers[].ID.
This is usually a string that roughly corresponds to which application assigned the ID. Example: Redox, Lawson, RedoxHealthSystem
- Descriptionstring, nullProbable
A free text description of the item name.
*Used to show a human-readable version of the item, or for lookup.. * - Quantitynumber, nullProbable
The quantity of the item being referred to. For update messages, this usually refers to the quantity on hand, for requisition messages, this is the number used/ordered.
- Typestring, nullProbable
What kind of item this is (Equipment, Supply, Implant, Medication).
*This is used primary for filtering. * - Unitsstring, nullProbable
The unit of measure for the item. Examples: Box, Pack, Syringe, etc.
Different products are ordered/used in different quantities. For example, you may buy a case of gauze, and those are used as packages. - Procedureobject
- Codestring, nullProbable
A procedure attached to the item. This is usually a HCPCS code that is used to bill for the item.
- Codesetstring, nullProbable
Codeset of the procedure.
- Modifierstring, nullProbable
A modifier (if applicable), usually used in conjunction with the HCPCS code.
- Notesstring, nullProbable
Free text comments about the item.
- Vendorobject
Information about the specific vendor that the item is from.
- IDstring, nullProbable
The ID for the vendor that would be used in automated purchase system.
- Namestring, nullProbable
A name/description of the vendor.
- CatalogNumberstring, nullProbable
The Vendor's ID for the item. This will be used in any kind of automated purchase system.
- Statusstring, nullProbable
Status indicates whether the item is active, discontinued, or not stocked.
- IsChargeableboolean, nullProbable
Indicate whether or not this item can be charged for, usually used in conjunction with Items[].Procedure.
- ContainsLatexboolean, nullProbable
A flag indicating whether or not the product contains latex.
- Pricenumber, nullProbable
A field for price of the product. This is typically used for reporting purposes.
- Locationobject
Where the item is physically stored in the healthcare facility.
- Facilitystring, nullProbable
Example: Community Hospital
- Departmentstring, nullProbable
Department where the item is physically stored.
- IDstring, nullProbable
An identifier for the location of the product - this can correspond to one of multiple store rooms in a particular facility, or the facility itself.
- Binstring, nullProbable
An further identifier for where the item is located.