Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
$member-addoperación para HealthLake
La $member-add operación del FHIR añade a un miembro (paciente) a un recurso del grupo, específicamente a una lista de atribuciones de miembros. Esta operación forma parte de la Guía de implementación de las atribuciones de DaVinci los miembros y apoya el proceso de conciliación para gestionar las atribuciones de los miembros.
Operation Endpoint
POST [base]/datastore/{datastoreId}/r4/Group/{groupId}/$member-add Content-Type: application/json
Parameters
La operación acepta un recurso de parámetros del FHIR con las siguientes combinaciones de parámetros:
Opciones de parámetros
Puede utilizar una de las siguientes combinaciones de parámetros:
- Opción 1: ID de miembro + NPI del proveedor
-
memberId+providerNpimemberId+providerNpi+attributionPeriod - Opción 2: referencia del paciente + referencia del proveedor
-
patientReference+providerReferencepatientReference+providerReference+attributionPeriod
Detalles de los parámetros
- ID de miembro (opcional)
-
El identificador del miembro que se va a añadir al grupo.
Tipo: identificador
Sistema: sistema de identificación de pacientes
{ "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } } - Proveedor NPI (opcional)
-
El identificador nacional de proveedores (NPI) del proveedor atribuido.
Tipo: identificador
Sistema: http://terminology.hl7. org/CodeSystem/NPI
{ "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } } - Referencia del paciente (opcional)
-
Referencia directa al recurso para pacientes que se va a añadir.
Tipo: Referencia
{ "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } } - ProviderReference (opcional)
-
Referencia directa al recurso del proveedor.
Tipo: Referencia
{ "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } } - Período de atribución (opcional)
-
El período de tiempo durante el cual se atribuye el paciente al proveedor.
Tipo: Periodo
{ "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } }
Ejemplos de solicitudes
Uso de la identificación de miembro y el NPI del proveedor
{ "resourceType": "Parameters", "parameter": [ { "name": "memberId", "valueIdentifier": { "system": "http://example.org/patient-id", "value": "patient-new" } }, { "name": "providerNpi", "valueIdentifier": { "system": "http://terminology.hl7.org/CodeSystem/NPI", "value": "1234567890" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }
Uso de referencias de pacientes y proveedores
{ "resourceType": "Parameters", "parameter": [ { "name": "patientReference", "valueReference": { "reference": "Patient/patient-123" } }, { "name": "providerReference", "valueReference": { "reference": "Practitioner/provider-456" } }, { "name": "attributionPeriod", "valuePeriod": { "start": "2024-07-15", "end": "2025-07-14" } } ] }
Formato de respuesta
Respuesta de adición exitosa
HTTP Status: 200 OK Content-Type: application/fhir+json { "resourceType": "OperationOutcome", "issue": [ { "severity": "success", "code": "informational", "details": { "text": "Member Patient/patient-new successfully added to the Member Attribution List." } } ] }
Respuestas de error
- Sintaxis de solicitud no válida
-
Estado HTTP: 400 solicitud incorrecta
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "invalid", "details": { "text": "Invalid parameter combination provided" } } ] } - Recurso no encontrado
-
Estado HTTP: 404 no encontrado
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "not-found", "details": { "text": "Resource not found." } } ] } - Conflicto de versiones
-
Estado HTTP: 409 Conflicto
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "conflict", "details": { "text": "Resource version conflict detected" } } ] } - Estado de atribución no válido
-
Estado HTTP: 422 Entidad inprocesable
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "business-rule", "details": { "text": "Cannot add member to Attribution List with status 'final'. Status must be 'draft' or 'open'." } } ] }
Reglas de negocio
- Validación del estado de la atribución
-
La operación solo se puede realizar cuando el estado de atribución del grupo es:
draftopen
No se permiten operaciones cuando el estado es
final. - Prevención de miembros duplicados
-
El sistema evita la adición de miembros duplicados en función de la combinación única de:
Identificador de miembro
Identificador del pagador
Identificador de cobertura
- Validación del período de cobertura
-
Cuando
attributionPeriodse proporciona uno, debe estar dentro de los límites del período de cobertura del miembro. El sistema hará lo siguiente:Busque el recurso de cobertura del miembro
Usa la cobertura más reciente (el VersionID más alto) si existen múltiples
Valide que el período de atribución no exceda el período de cobertura
- Validación de referencia
-
Cuando se proporcionan tanto la identificación como la referencia para el mismo recurso (paciente o proveedor), el sistema valida que corresponden al mismo recurso.
Cuando se proporcionan los campos ID y reference.identifier para el mismo recurso (paciente o proveedor), se produce un error.
Autenticación y autorización
La operación requiere la autorización de SMART on FHIR para:
Permisos de lectura: para validar los recursos de pacientes, proveedores y grupos
Permisos de búsqueda: para buscar recursos por identificador
Permisos de actualización: para modificar el recurso del grupo
Comportamiento operativo
- Actualizaciones de recursos
-
Actualiza el ID de versión del recurso del grupo
Crea una entrada en el historial con el estado original del recurso antes de la operación
Añade la información de los miembros a la matriz group.Member con:
Referencia del paciente en entity.reference
Período de atribución en período
Información sobre la cobertura y el proveedor en los campos de extensión
- Pasos de validación
-
Validación de parámetros: garantiza la validez de las combinaciones de parámetros
Existencia de recursos: valida la existencia de recursos para pacientes, proveedores y grupos
Estado de atribución: confirma que el estado del grupo permite modificaciones
Verificación duplicada: impide añadir miembros existentes
Validación de la cobertura: garantiza que el período de atribución esté dentro de los límites de cobertura
Limitaciones
Todos los recursos a los que se hace referencia deben estar en el mismo almacén de datos
La operación solo funciona con los recursos del grupo de listas de atribución de miembros
Los períodos de atribución deben estar dentro de los límites de cobertura
No se pueden modificar los grupos con el estado «final»