Skip to main content
OutputSchema es una estructura recursiva tipo JSON-Schema que describe lo que debe retornar cada campo. Todo esquema requiere un campo instructions — así el modelo sabe qué extraer para ese slot.
Esta página describe el formato de autoría que envías al crear una plantilla. Cuando lees una plantilla de vuelta con GET /v1/medical-record-configurations/{id}, cada esquema object retorna sus properties como un array ordenado de entradas { "key": ..., "schema": ... } — no el formato de mapa mostrado aquí. El contenido es idéntico; solo cambia la serialización.

Tipos

Estas son las únicas keywords que la API persiste. Cualquier otra se descarta silenciosamente — ver No soportado. Valores format soportados para string: date-time, date, time, duration, email, uuid, ipv4, ipv6. Un string con format date, time o date-time se retorna como un valor ISO 8601.

Required y default

  • required (booleano, por defecto true) — cuando es false, el campo es opcional: el modelo puede retornar null.
  • default (solo campos hoja) — se sustituye cuando el modelo no extrae nada (retorna null). Su tipo debe coincidir con el type del campo; para un campo enum debe ser uno de los valores del enum.
Interacción: default solo aplica cuando required es false. Un campo required: true siempre se genera, por lo que su default nunca se usa. Combine required: false con default para garantizar un valor de respaldo cuando el encuentro no menciona el campo.

No soportado

Las siguientes keywords de JSON-Schema son aceptadas por el parser de la petición pero descartadas silenciosamente — nunca se persisten ni afectan la generación. No dependas de ellas.

Opciones de enum

enum (en campos string, incluidos los items de un array de selección múltiple) acepta dos formas:
  • Cadenas planas — el texto mostrado es el valor almacenado: "enum": ["Low", "Medium", "High"].
  • Objetos { label, value } — desacoplan la visualización del almacenamiento: se muestra label, se almacena value (un código estable como un id de catálogo, ICD-10 o SNOMED). La generación retorna el value; el label es solo para visualización, por lo que se pueden renombrar o traducir las etiquetas sin cambiar lo que recibe tu integración.
value debe ser único dentro de un campo. Las dos formas pueden mezclarse en una misma lista (una cadena plana se trata como label == value).

Límites

Ejemplo — sección objeto

Ejemplo — campo opcional con default

Ejemplo — arreglo de items estructurados