Onboarding HIPAA: del BAA a la preparación para auditoría
La referencia de HIPAA controls explica qué hace cada control. Esta guía es el recorrido canónico de extremo a extremo que los pone en orden — la secuencia que lleva un espacio de trabajo de salud de “manejamos PHI” a “podemos mostrar una pista de auditoría” sin tropezar con el gate de envío422 HIPAA_BAA_REQUIRED. El runbook de primera activación es el compañero en formato checklist que entrega la misma secuencia a operaciones sin repetir los ejemplos de aquí.
El orden importa. El modo HIPAA no puede habilitarse antes de ejecutar el BAA, los envíos de PHI se rechazan hasta que lo esté, y la retención solo protege datos una vez configurada. Siga los pasos de arriba a abajo.
Cada paso de abajo corre contra https://api.orbit.devotel.io/api/v1 con un encabezado X-API-Key sobre una clave owner o admin. Expórtela antes de empezar:
- Prefijos de clave. Las claves de sandbox son
dv_test_sk_…; las claves live sondv_live_sk_…. Toda llamada de abajo funciona en ambas — sandbox devuelve los mismos sobres sin tocar el estado de cumplimiento live. - Sobre compartido. Todo cuerpo de éxito es
{ "data": { … }, "meta": { "request_id", "timestamp" } }. Los errores son{ "error": { code, message, status }, "meta": … }.
1. Ejecutar el BAA
Nada más se desbloquea hasta que el Business Associate Agreement (BAA) esté ejecutado. Dos gates leen el estado del BAA directamente:- Habilitar el modo HIPAA devuelve
403 Forbiddenmientras el estado del BAA no seaexecuted. - Todo envío de PHI se rechaza con
422 HIPAA_BAA_REQUIRED.
/execute (liga el acuerdo legal); una clave owner-or-admin basta para /require y GET /compliance/baa.
1a. Atestar que PHI está en el ámbito
Mueva la organización denot_required a pending, lo que abre el flujo de ejecución:
reason es texto libre opcional registrado en la fila de auditoría, nunca en una columna.
1b. Ejecutar con una firma electrónica de teclear-el-nombre
Registre la attestación.typed_attestation debe coincidir exactamente con signer_name — es la defensa contra una firma accidental o de formulario en blanco:
1c. Confirmar que el BAA está ejecutado
Relea el ciclo de vida y anotedays_until_expiry — un BAA ejecutado expira tras su plazo de un año y debe re-ejecutarse:
2. Habilitar el modo HIPAA
Con el BAA ejecutado, encienda la bandera HIPAA por organización. El modo HIPAA es una bandera de función por organización que activa cinco controles de una vez — cifrado en reposo, controles de acceso, registro de auditoría de PHI, retención forzada y seguimiento del BAA. Esta es una llamada solo de owner.- Tablero: Settings → Compliance → HIPAA Mode Toggle.
- API:
executed, la llamada devuelve 403 Forbidden.
3. Restringir roles y scopes de API al mínimo necesario
El estándar de mínimo necesario de HIPAA es responsabilidad suya — se sitúa del lado del cliente de la tabla de responsabilidad compartida. Los controles de Orbit hoy son gruesos, así que aprovisiónelo con honestidad:- Use el rol
billingpara el personal que solo necesita superficies financieras. Los miembros billing quedan confinados a facturación, precios y uso — reciben403en endpoints de contenido de mensajes. - Tenga presente la necesidad de lectura de los demás:
owner,admin,developeryviewerpueden leer contenido de mensajes hoy, y cada lectura aterriza en el registro de acceso a PHI. - Imprima claves API solo con los scopes que la integración necesita, y conceda
messages:readúnicamente a servicios que realmente leen contenido de mensajes con PHI.
Limitación conocida: Orbit actualmente no restringe las lecturas de contenido de mensajes a un conjunto más estrecho de roles más allá del confinamiento billing, y los endpoints de lectura de mensajes (GET /messages,GET /messages/{id}) no exigen un código de razón provisto por el operador. Cumpla el estándar de mínimo necesario aprovisionando la membresía del espacio de trabajo y los scopes de claves API de modo que solo el personal que necesita PHI pueda alcanzar esos endpoints. Si su programa exige restricción de lectura por rol sobre contenido de mensajes, contacte a support@orbit.devotel.io antes de apoyarse en ello.
4. Configurar la retención de datos
Fije la ventana de retención antes de que PHI se acumule más allá de ella.data_retention_days acepta 30 a 3.650; el default es 365.
- Tablero: Settings → Compliance → HIPAA → Data Retention.
- API (solo owner, el mismo endpoint que el toggle):
data.data_retention.days.
Un trabajo en segundo plano busca contenido de mensajes, grabaciones de llamadas y archivos multimedia expirados y los elimina. Los registros de auditoría y los registros de acceso a PHI se conservan independientemente de esta política — el reloj de borrado no borra su pista de evidencia.
Si graba llamadas, fije la región de voz para cumplir sus obligaciones de residencia al mismo tiempo — vea Voice Data Residency & Retention por el mando de residencia que mantiene grabaciones, correo de voz y medios en vivo en una sola región.
5. Verificar la configuración
Confirme que la bandera y la retención aterrizaron como usted pretendía (owner o admin):enabled y data_retention.days en la respuesta.
La respuesta también lleva un campo encryption_algorithm. Es solo informativo: refleja el estándar de cifrado en reposo de la plataforma (AES-256 gestionado por Google en Cloud SQL), no un cifrado de capa de aplicación por organización. Devotel actualmente no realiza cifrado de capa de aplicación de cuerpos de mensajes por organización, así que no cite este campo ante un auditor como evidencia de que los cuerpos de mensajes están cifrados individualmente en la capa de aplicación.
6. Leer el registro de acceso a PHI
Una vez encendido el modo HIPAA, cada acceso a datos que contienen PHI se escribe en un registro de auditoría de solo adición. Cada entrada registra el usuario, el recurso, la razón (read se registra automáticamente en lecturas de mensajes) y el timestamp. Pagine con ?limit= y ?cursor= — pase el id de la última entrada vista como el siguiente cursor (owner o admin):
owner y admin vía tablero o API, y puede exportarse para auditorías externas. Revíselo según un calendario desde temprano — así demuestra que el acceso sigue las decisiones de rol y scope que tomó en el paso 3. Cuando has_more es true, envíe el id de la última entrada como ?cursor= para obtener la página siguiente.
7. Exportar el archivador de evidencia HIPAA
Cuando necesite mostrar su postura a un auditor o al equipo de compras de un comprador, genere el pack HIPAA del archivador de evidencia desde Settings → Compliance → Binder. El framework HIPAA ensambla el registro de acceso a PHI, la postura del BAA y su retención configurada en un pack firmado y listo para descargar; cada generación queda registrada en su registro de auditoría, y el enlace de descarga expira tras 24 horas.Bundle de activación healthcare
El mercado de plugins de cumplimiento entrega un bundle de activación HIPAA healthcare que aprovisiona en una llamada un perfil de cumplimiento en borrador, campañas en borrador, un agente IA afinado al sector y una configuración de flujo de opt-in. Es un andamio de partida, no un sustituto de esta secuencia: activar el bundle nunca ejecuta el BAA, nunca habilita el modo HIPAA y nunca coloca un envío. Ejecute primero los pasos 1 a 6 de arriba, luego active el bundle y lleve su checklist de puesta en producción del borrador a producción.Checklist de orden de operaciones
- BAA ejecutado y
baa_statusconfirmado comoexecuted— rol owner - Modo HIPAA habilitado vía el toggle o
PUT /settings/hipaa— rol owner - Membresía recortada al mínimo necesario;
messages:readcon scope solo a claves que lo necesitan — administrator -
data_retention_daysfijado a la ventana de su política — administrator - Región de voz fijada si sus obligaciones de residencia restringen dónde puede vivir el audio grabado — administrator
-
GET /settings/hipaaverificado, conencryption_algorithmtratado como solo informativo — compliance officer - Registro de acceso a PHI revisado según calendario — compliance officer
- Archivador de evidencia HIPAA generado y entregado por el enlace de 24 horas — compliance officer