Select Page


Warning: This article is intended for developers and contains technical information. For non-technical questions, we encourage readers to visit our Frequently Asked Questions.

MHDS Specifications

Each specification has a number associated to it and can be referenced with its shorthand form “S” followed by its number. For example, the first specification is S1.

The “Minimum Principle”

Unless specified otherwise, all specifications denote a minimum. For example, MHDS object definitions do not prevent developers from defining other objects; they only mean that, at minimum, those objects defined in their respective MHDS specifications must exist and must be defined as such.

Similarly, object definitions specify certain attributes and how they are to be used; they do not preclude developers from adding additional attributes to their object definitions. This is referred to as the “Minimum Principle”.

MHDS Library

An open-source lightweight JavaScript library is in development for booking system developers to use. The library will provide tools to handle boilerplate import / export functions.


S12: Template

MHDS Specification 12 defines the Template object. AttributeData TypeDescriptionTEMPLATEStringRandom alphanumeric IDUSERStringTherapist’s IDTITLEString—CONTENTString—IMPORTEDString or IntSee S10.1 & S10.2

S11: Communication

MHDS Specification 11.1 defines the Communication object. AttributeData TypeDescriptionCOMMUNICATIONStringRandom alphanumeric IDCLIENTStringClient’s IDOFFICEStringOffice’s IDTYPEStringObject type in all-caps(e.g. “BOOKING”)STAMPDatetime or StringDate & time of…

S10: Update 2023-05-25

Also included in this update: S11: Communication S12: Template MHDS Specification 10.1 adds attribute “IMPORTED” with datatype “String” or “Int” and default value “0” to the objects below: S2: Client; S3: Booking; S4: Cancellation; S5: Invoice; S6: Receipt; S7: Item;…

S9: Import / Export

MHDS Specification 9.1 requires that MHDS-compliant booking systems offer therapists a way to import and export their data. MHDS Specification 9.2 requires the following criteria for exports: 9.2.1. object data must be exported via a JSON file; 9.2.2. the JSON file…

S8: Office & User

MHDS Specification 8 requires that the Office* and User objects respectively have an “OFFICE” and “USER” attribute reserved for their random alphanumeric object IDs. These will be referenced by other MHDS objects via their IDs. Note: MHDS does not support importing or…

S7: Item

MHDS Specification 7 defines the Item object. AttributeData TypeDescriptionITEMStringRandom alphanumeric ID;USERStringTherapist ID(references User object)NAMEStringName of ItemFEEFloatItem’s feeITEM_TYPEString4 possible types:individual, couple, family, or…

S6: Receipt

MHDS Specification 6 defines the Receipt object. AttributeData TypeDescriptionRECEIPTStringRandom alphanumeric ID;imported receipts’ IDs might be numericOFFICEStringOffice IDUSERStringTherapist ID(references User object)CLIENTStringClient IDINVOICEStringInvoice…

S5: Invoice

MHDS Specification 5 defines the Invoice object. AttributeData TypeDescriptionINVOICEStringRandom alphanumeric ID;imported invoices’ IDs might be numericOFFICEStringOffice IDUSERStringTherapist ID(references User object)CLIENTStringClient IDITEMSStringComma-delimited…

S4: Cancellation

MHDS Specification 4 defines the Cancellation object. AttributeData TypeDescriptionCANCELLATIONStringRandom alphanumeric ID;imported cancellations’ IDs might be numericSTAMPString or DatetimeDate & time of bookingDURATIONIntNumber of minutesUSERStringTherapist…