> ## Documentation Index
> Fetch the complete documentation index at: https://docs.telepatia.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Smart Templates

> Defina cómo Telepatia genera el registro médico para sus consultas

Un **Smart Template** (`medicalRecordConfiguration`) define el registro médico que produce su consulta: un mapa de **secciones**, donde cada sección tiene un esquema de salida y una estrategia de prompt.

<Tip>
  **Prefiera Smart Templates con Secciones Telepatia.** Es el camino recomendado: usted controla la forma de la salida orientada al EMR, Telepatia mantiene los prompts médicos curados detrás de cada sección. Las Plantillas de Sesión (`scribeSessionConfigurationId`) siguen siendo soportadas para integraciones legadas.
</Tip>

## Ciclo de vida

1. **Defina** las secciones que necesita — vea [Secciones](/es/scribe-api/smart-templates-nodes).
2. **Cree** vía `POST /v1/medical-record-configurations`. Telepatia hashea el contenido; configuraciones idénticas retornan el mismo `id` con `created: false` (idempotente).
3. **Referencie** en `POST /v1/set-consultation-context` usando uno de los dos campos siguientes.

## Tres formas de adjuntar un template a una sesión

| Modo                      | Campo en `set-consultation-context` | Cuándo usar                                                                                                                                            |
| ------------------------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Smart Template **inline** | `medicalRecordConfiguration`        | Envíe el JSON completo con cada sesión. Telepatia auto-persiste y deduplica por hash de contenido. **Recomendado para flujos guiados por el cliente.** |
| Smart Template **por id** | `medicalRecordConfigurationId`      | Ya lo creó vía `POST /v1/medical-record-configurations` y quiere reusar el id.                                                                         |
| Plantilla de Sesión       | `scribeSessionConfigurationId`      | Flujos curados legados.                                                                                                                                |

<Note>
  Pase **exactamente uno** de los tres. Un futuro campo `scribeTemplates` aceptará cualquiera de los dos tipos de id — no se planea un cambio incompatible con las variantes actuales.
</Note>

## Crear un Smart Template

```bash theme={null}
curl -X POST https://scribe-api.telepatia.ai/v1/medical-record-configurations \
  -H "Authorization: Bearer SU_CLAVE_API" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "General Consultation",
    "configuration": {
      "chiefComplaint": {
        "instructionSet": { "telepatiaPromptId": "CHIEF_COMPLAINT" },
        "schema": {
          "type": "object",
          "instructions": "Chief complaint",
          "properties": {
            "chiefComplaint": { "type": "string", "instructions": "Patient words" }
          }
        }
      }
    }
  }'
```

**Respuesta:**

```json theme={null}
{
  "id": "mrc_a1b2c3d4e5f6g7h8",
  "name": "General Consultation",
  "hash": "sha256:…",
  "createdAt": "2026-06-02T10:00:00Z",
  "created": true
}
```

## Listar Smart Templates

```bash theme={null}
curl https://scribe-api.telepatia.ai/v1/medical-record-configurations \
  -H "Authorization: Bearer SU_CLAVE_API"
```

## Obtener un Smart Template por id

```bash theme={null}
curl https://scribe-api.telepatia.ai/v1/medical-record-configurations/mrc_a1b2c3d4e5f6g7h8 \
  -H "Authorization: Bearer SU_CLAVE_API"
```

## Eliminar un Smart Template

Elimina lógicamente (soft-delete) un template por su id público. Retorna `204 No Content` y desaparece de la lista por defecto; las consultas históricas que lo referenciaron no se ven afectadas. La eliminación se bloquea con `409` mientras una sesión vinculada aún está procesando, y retorna `404` si el id no existe.

```bash theme={null}
curl -X DELETE https://scribe-api.telepatia.ai/v1/medical-record-configurations/mrc_a1b2c3d4e5f6g7h8 \
  -H "Authorization: Bearer SU_CLAVE_API"
```

## Estado del template

Las respuestas de listado y detalle exponen un `status` por template:

| Estado     | Significado                                                        |
| ---------- | ------------------------------------------------------------------ |
| `active`   | Activo y usable en una consulta.                                   |
| `inactive` | Archivado — no se ofrece por defecto.                              |
| `deleted`  | Eliminado lógicamente; se conserva solo como referencia histórica. |

Los templates eliminados desaparecen de la lista por defecto. Use el parámetro de consulta `?status` para cambiar la vista:

| `?status`   | Retorna                                                     |
| ----------- | ----------------------------------------------------------- |
| *(omitido)* | Solo templates no eliminados (por defecto).                 |
| `deleted`   | Solo templates eliminados lógicamente (vista de auditoría). |
| `all`       | Templates no eliminados y eliminados.                       |

```bash theme={null}
curl "https://scribe-api.telepatia.ai/v1/medical-record-configurations?status=all" \
  -H "Authorization: Bearer SU_CLAVE_API"
```

**Respuesta:**

```json theme={null}
{
  "items": [
    {
      "id": "mrc_a1b2c3d4e5f6g7h8",
      "name": "General Consultation",
      "hash": "sha256:…",
      "createdAt": "2026-06-02T10:00:00Z",
      "specialties": [],
      "status": "active"
    }
  ],
  "total": 1,
  "page": 1,
  "limit": 20,
  "totalPages": 1
}
```

## Próximos pasos

* [Secciones](/es/scribe-api/smart-templates-nodes) — cómo se resuelven los prompts por sección.
* [Catálogo de Prompts Telepatia](/es/scribe-api/telepatia-nodes) — referencia de `telepatiaPromptId` curados.
* [Referencia de OutputSchema](/es/scribe-api/smart-templates-output-schema) — tipos, ejemplos, límites.
