2Slides Logo
Automatización de diapositivas para educación del paciente con API de salud (2026)
2Slides Team
18 min read

Automatización de Diapositivas para Educación del Paciente con una API de Salud (2026)

La automatización de diapositivas para educación del paciente significa que un trabajo backend lee texto fuente aprobado y desidentificado (instrucciones de alta, explicadores de procedimientos, guías clínicas) desde tu repositorio de contenido y lo convierte en presentaciones mediante la API de 2Slides. Fast PPT generate produce un PPTX editable por condición y por idioma a 10 créditos por página, así que una presentación de 8 páginas cuesta 80 créditos, aproximadamente $0.20. create-pdf-slides más generate-narration produce presentaciones narradas para capacitación del personal. Está diseñado para equipos de educación hospitalaria, empresas de salud digital y agencias de comunicación médica.

Puntos clave

  • Un documento fuente aprobado se convierte en una presentación por idioma cambiando un solo valor responseLanguage; 2Slides soporta más de 20 idiomas incluyendo español, vietnamita y árabe.
  • Una presentación de paciente Fast PPT de 8 páginas cuesta 80 créditos, alrededor de $0.20 con el paquete inicial de $5; 500 presentaciones al mes son 40,000 créditos, justo el paquete de $80.
  • Una presentación narrada de 10 páginas para capacitación del personal cuesta 1,010 créditos por las diapositivas diseñadas con imágenes más 2,100 créditos por la narración, aproximadamente $7.78 en total.
  • Solo texto aprobado y desidentificado entra en userInput: no nombres de pacientes, números de historia clínica ni fechas de nacimiento. Cada jobId, versión fuente y decisión del revisor se escribe en una tabla de auditoría.
  • 2Slides no hace ninguna afirmación de certificación HIPAA y este artículo no es asesoría legal; los controles de cumplimiento aquí son responsabilidad tuya para implementar y documentar.

Para quién es esto

Diriges la educación del paciente en un sistema hospitalario, eres responsable del contenido en una empresa de salud digital o produces materiales en una agencia de comunicación médica. El problema es el mismo: cambia una guía y 40 presentaciones específicas por condición en 6 idiomas quedan obsoletas mientras las personas que podrían corregirlas están atendiendo clínicas. Un trabajo backend que regenera las presentaciones desde la fuente aprobada y las envía a un revisor clínico elimina la reconstrucción manual sin eliminar la revisión.

No uses esta receta si tu texto fuente aún no está aprobado o si algo específico del paciente debe entrar en un prompt. Publica contenido controlado a escala; no genera planes de cuidado individualizados.

El flujo de trabajo en resumen

PasoHerramientaQué sucedeEndpoint 2Slides / créditos
1Gestor de secretos, servicio backendAlmacena la clave API del lado servidor, define qué texto puede entrar en un promptGET /api/v1/echo (verificación de autenticación gratuita)
2Repositorio de contenido (Git, CMS, DAM)Texto fuente aprobado y desidentificado con sello de versión y checksumninguno
3Trabajo backendElige una plantilla clínica tranquila, genera una presentación por condición e idiomaGET /api/v1/themes/search (gratis), POST /api/v1/slides/generate (10 créditos/página)
4Ejecutor de trabajos + base de datos de revisiónConsulta, descarga PPTX, almacena con jobId y versión fuente, marca pendiente de revisiónGET /api/v1/jobs/{id} (gratis)
5Mismo trabajo, ruta de capacitaciónPresentación de capacitación para personal diseñada con imágenes, luego narración para videos de induccióncreate-pdf-slides (10 + 100/página a 2K), generate-narration (210/página)
6Revisor clínico, publicadorAprueba o rechaza, sella versión, publica en portal o LMSdownload-slides-pages-voices (ZIP gratis de PNG + WAV)

Paso 1: Define el límite de cumplimiento y mantén la clave API del lado servidor

Antes de cualquier código, escribe el límite: qué texto puede salir de tu red como userInput. Para educación del paciente, es contenido aprobado, para público general que describe una condición, un procedimiento o una instrucción. Nunca describe a un paciente específico. La Regla de Privacidad HIPAA, documentada en hhs.gov/hipaa, regula la información de salud protegida; tu oficial de privacidad decide cómo un servicio de generación de terceros encaja en tus políticas. Nada en este artículo reemplaza esa revisión.

Luego obtén una clave API en 2slides.com/api. Las claves se emiten en la pestaña API Keys con 500 créditos gratis, suficientes para unas seis presentaciones de prueba de 8 páginas. La clave vive en un gestor de secretos o variable de entorno del lado servidor, nunca en un navegador, app móvil o cuaderno compartido.

Referencia API de 2Slides con la nota de seguridad para mantener las claves API del lado servidor

Figura 1: Página de referencia API en 2slides.com, incluyendo la nota de seguridad que las claves deben permanecer del lado servidor.

Verifica la clave desde el servidor que ejecutará el trabajo:

curl -s https://2slides.com/api/v1/echo \ -H "Authorization: Bearer $SLIDES_API_KEY"

Una respuesta autenticada significa que la credencial está en su lugar y puedes continuar con el contenido.

Paso 2: Prepara contenido fuente aprobado y desidentificado con sello de versión

El trabajo de generación lee de un registro, no de una ventana de chat. Un registro fuente mínimo lleva el texto aprobado, una versión y el cuerpo aprobador, para que cualquier presentación pueda rastrearse hasta las palabras exactas de las que se construyó.

{ "slug": "heart-failure-discharge", "title": "Volver a casa después de una admisión por insuficiencia cardíaca", "version": "2026.09.1", "approved_by": "Comité de Educación Clínica", "approved_on": "2026-09-03", "reading_level": "Grado 6", "approved_text": "La insuficiencia cardíaca significa que el corazón no bombea tan bien como debería. Después de ir a casa: pésate cada mañana... Llama a tu equipo de cuidado si subes 3 libras en un día o 5 libras en una semana..." }

Tres reglas mantienen este registro seguro para enviar:

  • Nunca PHI. No nombres, números de historia clínica, fechas de nacimiento, fechas de cita ni nada que describa a una persona. Un filtro regex para patrones de MRN y fechas corre antes de cada envío, y una falla bloquea el trabajo.
  • Solo texto aprobado. El trabajo lee el campo approved_text de un registro cuyo estado es approved. Los borradores se ignoran.
  • Fuente en lenguaje sencillo. Fast PPT adapta tu redacción a los marcadores de posición de la plantilla, así que texto escrito a nivel de lectura de Grado 6 produce diapositivas a ese nivel.

Paso 3: Genera materiales de educación del paciente multilingües con Fast PPT

Elige la plantilla una vez. Busca un aspecto clínico tranquilo y guarda el themeId devuelto como configuración:

curl -s "https://2slides.com/api/v1/themes/search?query=healthcare&limit=5" \ -H "Authorization: Bearer $SLIDES_API_KEY"

También prueba con query=medical. Elige alto contraste, tipografía grande y sin infografías densas; las presentaciones para pacientes se leen en teléfonos en salas de espera y se imprimen en la estación de enfermería.

Luego genera una presentación por idioma. La fuente en inglés permanece igual; solo cambia responseLanguage. Usa mode: "async" porque enviarás varios trabajos en lote.

curl -s -X POST https://2slides.com/api/v1/slides/generate \ -H "Authorization: Bearer $SLIDES_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "userInput": "Volver a casa después de una admisión por insuficiencia cardíaca. La insuficiencia cardíaca significa que el corazón no bombea tan bien como debería. Después de ir a casa: pésate cada mañana antes del desayuno. Toma tus medicamentos exactamente como están listados en tu hoja de medicamentos. Limita la sal a la cantidad que tu equipo de cuidado te indicó. Llama a tu equipo si subes 3 libras en un día o 5 libras en una semana, si tienes más dificultad para respirar o si tus piernas se hinchan. Versión fuente 2026.09.1, revisado por el Comité de Educación Clínica.", "themeId": "<themeId from themes/search>", "responseLanguage": "Spanish", "mode": "async" }'

La respuesta es { "jobId": "..." }. Repite con "Vietnamese", "Arabic", "Simplified Chinese" y cualquier otro idioma de la lista soportada. Pasa el nombre del idioma, no un código; "es" no funcionará, "Spanish" sí.

Endpoint generate de 2Slides con responseLanguage y los 20+ idiomas soportados para materiales de paciente

Figura 2: Documentación del endpoint generate mostrando responseLanguage y los más de 20 idiomas de salida soportados.

Consulta cada 5 a 10 segundos hasta que el trabajo sea success o failed:

curl -s https://2slides.com/api/v1/jobs/<jobId> \ -H "Authorization: Bearer $SLIDES_API_KEY"

Un trabajo terminado devuelve un downloadUrl para el PPTX. El límite de tasa es 6 solicitudes por minuto por clave en generate y 10 por minuto en jobs/{id}. Diez idiomas para una condición significan diez envíos espaciados 10 segundos, y cada presentación regresa en aproximadamente 30 segundos.

Paso 4: Construye la cola de revisión en Python (generar, almacenar, aprobar)

El siguiente trabajo lee un registro fuente aprobado, genera una presentación por idioma, descarga cada PPTX y escribe una fila en la tabla deck_reviews con estado pending_review. Nada se publica desde este script. Un revisor, un clínico bilingüe o traductor médico certificado para versiones no inglesas, llama a approve() tras revisar el archivo.

import hashlib import json import os import sqlite3 import time import requests API = "https://2slides.com/api/v1" HEADERS = { "Authorization": f"Bearer {os.environ['SLIDES_API_KEY']}", "Content-Type": "application/json", } # Elegido una vez desde GET /api/v1/themes/search?query=healthcare, guardado como configuración THEME_ID = os.environ["CLINICAL_THEME_ID"] LANGUAGES = ["English", "Spanish", "Vietnamese", "Arabic"] db = sqlite3.connect("patient_education.db") db.execute(""" CREATE TABLE IF NOT EXISTS deck_reviews ( job_id TEXT PRIMARY KEY, condition_slug TEXT, language TEXT, source_version TEXT, source_sha256 TEXT, theme_id TEXT, file_path TEXT, status TEXT, reviewer TEXT, reviewed_at TEXT, created_at TEXT )""") def now(): return time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime()) def assert_no_phi(text): # Guardia mínima; extiende con tus propios patrones y una revisión humana aguas arriba. import re if re.search(r"\bMRN\b|\b\d{7,10}\b|\b\d{1,2}/\d{1,2}/\d{2,4}\b", text): raise ValueError("El texto fuente falló la verificación de patrón PHI") def submit(source, language): body = { "userInput": source["approved_text"], "themeId": THEME_ID, "responseLanguage": language, "mode": "async", } r = requests.post(f"{API}/slides/generate", headers=HEADERS, json=body, timeout=60) r.raise_for_status() return r.json()["jobId"] def wait(job_id): while True: r = requests.get(f"{API}/jobs/{job_id}", headers=HEADERS, timeout=30) r.raise_for_status() job = r.json() if job["status"] == "success": return job["downloadUrl"] if job["status"] == "failed": raise RuntimeError(f"job {job_id} falló") time.sleep(8) # consulta cada 5 a 10 segundos def download(url, path): os.makedirs(os.path.dirname(path), exist_ok=True) with requests.get(url, stream=True, timeout=120) as r: r.raise_for_status() with open(path, "wb") as f: for chunk in r.iter_content(65536): f.write(chunk) def enqueue_for_review(source): if source.get("status") != "approved": raise ValueError("Solo registros fuente aprobados pueden generarse") assert_no_phi(source["approved_text"]) digest = hashlib.sha256(source["approved_text"].encode("utf-8")).hexdigest() for language in LANGUAGES: job_id = submit(source, language) url = wait(job_id) path = f"decks/{source['slug']}/{source['version']}/{language}_{job_id}.pptx" download(url, path) db.execute( "INSERT INTO deck_reviews VALUES (?,?,?,?,?,?,?,?,?,?,?)", (job_id, source["slug"], language, source["version"], digest, THEME_ID, path, "pending_review", None, None, now()), ) db.commit() time.sleep(10) # mantente bajo 6 solicitudes/min por clave def approve(job_id, reviewer): db.execute( "UPDATE deck_reviews SET status='approved', reviewer=?, reviewed_at=? WHERE job_id=?", (reviewer, now(), job_id), ) db.commit() def reject(job_id, reviewer): db.execute( "UPDATE deck_reviews SET status='rejected', reviewer=?, reviewed_at=? WHERE job_id=?", (reviewer, now(), job_id), ) db.commit() if __name__ == "__main__": with open("sources/heart-failure-discharge.json", encoding="utf-8") as f: enqueue_for_review(json.load(f))

Dos decisiones de diseño importan. La ruta del archivo y la fila en la base de datos llevan la versión fuente y el jobId, para que un revisor siempre pueda responder "¿qué palabras produjeron esta diapositiva?" Y el script no tiene paso de publicación: publicar solo lee filas donde status = 'approved'.

Paso 5: Produce presentaciones de capacitación clínica con narración

Las presentaciones para pacientes permanecen en la ruta Fast PPT porque enfermeros y educadores las editan en PowerPoint. La capacitación del personal suele necesitar un video que un nuevo empleado pueda ver durante la inducción, lo que significa diapositivas diseñadas con imágenes más voz: la cadena create-pdf-slides a generate-narration, con la misma clave y el mismo límite de cumplimiento.

Envía el texto del protocolo aprobado. page: 0 permite al planificador elegir el número de diapositivas; resolution: "2K" mantiene el costo en 100 créditos por página.

curl -s -X POST https://2slides.com/api/v1/slides/create-pdf-slides \ -H "Authorization: Bearer $SLIDES_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "userInput": "Capacitación: higiene de manos y secuencia de colocación y retiro de EPP para unidades hospitalarias. Versión de protocolo aprobada 2026.09. <texto del protocolo aprobado aquí>", "designStyle": "Presentación de capacitación clínica tranquila, azul suave y blanco, tipografía grande legible, íconos lineales simples, sin fotografías de pacientes", "aspectRatio": "16:9", "resolution": "2K", "page": 0, "contentDetail": "standard", "responseLanguage": "English" }'

Consulta jobs/{jobId} como antes. Cuando la presentación sea success, solicita la narración para ese trabajo:

curl -s -X POST https://2slides.com/api/v1/slides/generate-narration \ -H "Authorization: Bearer $SLIDES_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jobId": "<jobId from create-pdf-slides>", "mode": "single", "speakerName": "Clinical Educator", "voice": "Kore", "contentMode": "standard", "includeIntro": true }'

La narración es solo asíncrona y cuesta 210 créditos por página. Cuando termina, POST /api/v1/slides/download-slides-pages-voices con { "jobId": "..." } devuelve un ZIP gratis con archivos PNG y WAV por página que tu pipeline une en un MP4 con FFmpeg o entrega a tu LMS. Los guiones de narración pasan por el mismo revisor que las diapositivas; una dosis errónea en audio sigue siendo una dosis errónea. Para estructurar el contenido, ve cómo hacer una presentación de capacitación con IA; si el protocolo está en PDF, el flujo PDF a diapositivas cubre resumirlo antes de enviarlo.

Paso 6: Publica, sella versión y audita tu automatización de diapositivas para educación del paciente

Publicar es una consulta a la base de datos, no una llamada de generación. El publicador elige filas con status = 'approved', copia el PPTX (o un PDF exportado) al portal del paciente, kiosco o LMS, y pone el sello de versión en la página publicada: versión fuente, fecha de aprobación, idioma. Cuando el registro fuente cambia a 2026.10.1, el trabajo regenera todos los idiomas, las filas antiguas se marcan como superseded y la cola de revisión se llena de nuevo.

La tabla deck_reviews es tu registro de auditoría. Por presentación responde lo que un equipo de calidad preguntará: qué versión fuente, qué checksum, qué plantilla, qué jobId, quién revisó y cuándo. Guárdalo el tiempo que tu política de registros requiera.

Elegir un estilo de referencia

Si ninguna plantilla Fast PPT coincide con tu identidad visual, la ruta de diseño con imágenes puede derivar un sistema de diseño desde una referencia. La Galería 2Slides aloja presentaciones de referencia reales que puedes pasar como referenceImageUrl a create-like-this, o usar como inspiración para un prompt designStyle. Son presentaciones de referencia, no salidas API de este flujo.

Presentación de referencia The Future of Wellness 2025 de la Galería 2Slides, estilo visual tranquilo para sector salud

Figura 3: Diapositiva de título de "The Future of Wellness 2025 Edition" de la Galería 2Slides, estilo suave y bajo contraste para sector salud adecuado como referenceImageUrl.

Presentación de referencia The Future of Wellness 2025 de la Galería 2Slides, estilo visual tranquilo para sector salud

Figura 4: Diapositiva de contenido de la misma presentación de la Galería, mostrando cómo una paleta restringida mantiene la información clínica legible.

Página de detalle de la Galería 2Slides para una presentación del sector salud con vista previa diapositiva a diapositiva y descarga PPT/PDF

Figura 5: Página de detalle de la Galería, con vista previa diapositiva a diapositiva y descarga PPT/PDF; copia aquí la URL de una imagen de diapositiva para usarla como referencia.

Para la mayoría de los equipos hospitalarios, la mejor referencia es tu propia diapositiva de marca aprobada: hospédala en una URL pública, pásala como referenceImageUrl y cada presentación para personal hereda ese sistema de diseño.

Cuánto cuesta

Dos volúmenes mensuales realistas. Las presentaciones para pacientes son archivos Fast PPT de 8 páginas; las de capacitación para personal son presentaciones diseñadas con imágenes de 10 páginas a 2K con narración.

ÍtemCréditos cada unoNivel A: 20 presentaciones para pacientes + 2 presentaciones narradas de capacitaciónNivel B: 500 presentaciones para pacientes + 10 presentaciones narradas de capacitación
Presentación para paciente, 8 páginas, Fast PPT801,60040,000
Presentación para personal, 10 páginas, imágenes 2K1,0102,02010,100
Narración, 10 páginas2,1004,20021,000
Total créditos7,82071,100
USD aproximado$19.55 a $0.0025/crédito (cabe en el paquete de $22.50 por 10,000)$142.20 a $0.002/crédito (paquetes de $80 por 40,000)

El Nivel A es una biblioteca de 10 condiciones en 2 idiomas más dos videos de inducción al mes. El Nivel B es una biblioteca de 50 condiciones en 10 idiomas más diez videos, aproximadamente un sistema multisede. Los créditos son pago por uso; el plan Pro opcional añade 10,000 créditos por mes pero no es obligatorio para acceso API.

Fast PPT o diapositivas diseñadas con imágenes para este caso de uso?

NecesidadUsoPor qué
Folletos para pacientes que enfermeros editarán e imprimirángenerate (Fast PPT)PPTX editable nativo, 10 créditos/página, unos 30 segundos por presentación
Mismo contenido en 10 idiomasgenerate con responseLanguageUna fuente, un cambio de parámetro por idioma
Video de inducción para personalcreate-pdf-slides luego generate-narrationSolo trabajos diseñados con imágenes pueden narrarse; ZIP de PNG + WAV construye el MP4
Presentaciones que deben coincidir con la imagen de marca hospitalariacreate-like-this con referenceImageUrlDeriva el sistema de diseño desde tu diapositiva aprobada

Fast PPT no puede ser narrado. Una presentación para pacientes que necesita audio para audiencias con baja alfabetización va por la ruta diseñada con imágenes a 100 créditos por página más 210 por página para narración, y regresa como PDF más imágenes en lugar de PPTX editable.

Errores comunes

  • PHI se filtra por un campo secundario. Un párrafo de "caso ejemplo" en una guía puede contener un detalle real del paciente. Ejecuta la verificación de patrones en cada campo que concatenes en userInput y mantén un paso humano de desidentificación aguas arriba.
  • Límite de tasa alcanzado durante una ráfaga de regeneración. generate, create-pdf-slides y generate-narration permiten 6 solicitudes por minuto por clave. Encola envíos con 10 segundos de separación; una reconstrucción de 50 condiciones por 10 idiomas son 500 trabajos y unos 84 minutos de envíos, adecuado para un trabajo nocturno.
  • Clave API en front-end o cuaderno. Las claves permanecen en variables de entorno del lado servidor. Rota la clave si alguna vez aparece en un documento compartido.
  • Intentar narrar un trabajo Fast PPT. generate-narration rechaza jobIds de generate. Usa create-pdf-slides o create-like-this para cualquier cosa que necesite voz.
  • Idioma pasado como código. responseLanguage acepta un nombre como "Vietnamese" o "Traditional Chinese". Códigos como "vi" fallan.
  • Una guía de 40 páginas pegada completa. Entradas largas producen diapositivas densas y saturadas. Resume a los 6 a 10 puntos para pacientes primero, o usa page: 0 en la ruta diseñada con imágenes y deja que el planificador elija la cantidad.

Preguntas Frecuentes

¿Es seguro enviar contenido de educación del paciente a una API de presentaciones con IA?

Es apropiado cuando el contenido está aprobado, es para público general y no contiene información de salud protegida. Las instrucciones de alta para "pacientes con insuficiencia cardíaca" no llevan PHI; una nota sobre un paciente nombrado sí. Mantén la verificación de PHI automatizada y aguas arriba e involucra a tu oficial de privacidad. 2Slides no afirma certificación HIPAA y este artículo no es asesoría legal.

¿En qué idiomas se pueden generar materiales multilingües de educación del paciente?

2Slides soporta más de 20 idiomas de salida mediante responseLanguage, incluyendo inglés, español, árabe, portugués, vietnamita, chino simplificado, chino tradicional, hindi, coreano, ruso, francés y alemán. Pasa el nombre del idioma, no un código ISO. Trata la salida como un primer borrador para que un clínico bilingüe o traductor médico certificado revise antes de publicar.

¿Se pueden narrar las presentaciones para pacientes además de las de capacitación del personal?

Sí, pero solo en la ruta diseñada con imágenes. Genera la presentación para pacientes con create-pdf-slides (100 créditos por página a 2K) en lugar de Fast PPT, luego llama a generate-narration a 210 créditos por página. Un explicador narrado de 6 páginas cuesta 10 + 600 + 1,260 = 1,870 créditos, unos $4.68. Los trabajos Fast PPT no pueden ser narrados.

¿Cómo manejamos una actualización de guía en todos los idiomas?

Incrementa la versión del registro fuente, marca las filas antiguas como superseded y vuelve a ejecutar el trabajo. Cada idioma obtiene un nuevo jobId, una ruta de archivo con la nueva versión y una fila nueva pending_review. El sello publicado cambia solo cuando un revisor aprueba, así los pacientes nunca ven una actualización sin revisar, y el registro de auditoría muestra cuándo cambió cada idioma.

¿Cómo se compara esto con otras APIs para generadores de presentaciones médicas?

La API de Gamma, documentada en developers.gamma.app, ofrece automatización similar pero requiere un plan Pro para emitir claves API, mientras que las claves 2Slides funcionan en cualquier cuenta, incluyendo la gratuita con 500 créditos. Eso hace posible un piloto de TI hospitalario antes de cualquier compra. Ambos son servicios de terceros, así que las mismas reglas de desidentificación aplican para cualquiera, y esta comparación la escribió el equipo de 2Slides.

Próximos pasos

La automatización de diapositivas para educación del paciente es mayormente un ejercicio de gobernanza con poco código: un registro fuente aprobado, un trabajo que genera una presentación por idioma y una cola de revisión que controla la publicación.

About 2Slides

Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.

Try For Free