2017-01-19 Developers Forum

How to Join

 Click here to expand...

By Browser

By telephone

  • US telephone number: +1 201.479.2627



  • Quickly review previous meeting minutes (5 min)
  • Transactional REST
  • Review next meeting agenda


  • Willa
  • Darius
  • Wyclif
  • Daniel
  • Tim
  • Burke
  • Discussion on an OMRS dev forum around transactional REST (i.e.. best practices for doing transactions via REST)
There are examples of common tasks that require multiple steps through REST that seem to belong to a single "transaction." For example, updating obs requiring to void the old one and create a new one.
Can we introduce transactions to REST calls?
FHIR has a "bundle" resource <https://www.hl7.org/fhir/bundle.html> to aid with transactions <https://www.hl7.org/fhir/http.html#transaction>
  • Given what is going on around REST development, instead of trying to implement a transactional API it might be more effective to modify the existing resources (e.g. EncounterResource) to support multiple edits
  • This entails identifying specific desired behaviors, e.g., Being able to edit obs in an existing encounter and submit without having to void them individually.
  • Ensure common transactions are encapsulated in REST calls.
  • We agree the REST API should expose high level operations that encapsulate the necessary transactions. For example, Darius confirmed on this call that updating an obs via the REST API _does_ void the existing one and create a new one, returning it. Where we identify missing high level operations, especially commonly needed ones, the REST API should be ammended.
  • Tickets/wiki pages on this topic should use the "transactional-rest" label to help identify them.
  • Create a path to facilitate anyone joining the community with ability to understand how things work and the path forward. That is the way REST API is supposed to behave when editing/modifying resources 
  • Create a ticket to facilitate proper behavior with editing encounters (Add a label transactional-rest) - (@Willa)



  • Audio recording of the call: Listen online or download (available after the meeting)