Skip to main content
You already know your EMR screen as a set of form fields — a text box, a number, a dropdown, a checkbox. A Smart Template is the same screen expressed as JSON: each field becomes a property in a section’s OutputSchema. This page gives you the JSON for every field type, then walks you through assembling a full template.
Every field needs instructions — that’s the prompt the model uses to fill the slot. Write it as if briefing a scribe: “the patient’s main complaint, in their own words”.

Field cookbook

Text

A free-text input or textarea.

Number

A numeric input. Use integer for whole numbers, number for decimals; bound with minimum / maximum.

Single choice (dropdown / radio)

A <select> or a group of radio buttons — pick exactly one option. Use { label, value } so you store a stable code and can rename or translate the label freely. Generation returns the value.

Multi-select (checkbox group)

A group of checkboxes where several options can be selected at once — an array whose items carry the enum.

Yes / No (checkbox)

A single checkbox is a boolean.

Date and time

A date or time input — a string with a format. The value is returned as ISO 8601.

Optional field

By default every field is required: true (the model always produces a value). Set required: false to let it return null when the encounter doesn’t mention it.

Default value

Pair required: false with default to guarantee a fallback. For an enum, the default must be one of the values.

Not supported

There is no conditional logic in a Smart Template — no “show field B only if field A is X”. Keywords like anyOf, if/then/else, pattern, and minItems are silently dropped. Model optionality with required: false + default; put branching in the RPA layer. Full list: OutputSchema → Not supported.

Build a template, field by field

1

List the fields on your screen

Write down each form field and its kind (text, number, choice, checkbox, date).
2

Pick the JSON for each

Use the cookbook above to turn each field into an OutputSchema.
3

Group them into a section

A section is an object whose properties are your fields — one section per part of the record.
4

Attach a prompt strategy

Give the section a curated telepatiaPromptId, or your own systemPrompt. See Sections.
5

Create it, then reference it

POST /v1/medical-record-configurations (idempotent — identical content returns the same id), then pass medicalRecordConfigurationId on set-consultation-context.

Full recipe: a prescription template

A complete template covering every field type — text, number, single choice, multi-select, boolean, and an optional date with a default:

Next steps

OutputSchema reference

Every supported field, type by type.

Sections

How prompts resolve per section.