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

# Áreas de datos y consentimiento de datos de pacientes

> Cómo decide una clínica qué datos pueden usar las integraciones y los asistentes de IA, y cómo se aceptan los datos de pacientes.

Una clínica decide, por área de datos, qué pueden usar sus integraciones y asistentes. Cada operación pertenece a una sola área y solo se ejecuta mientras esa área está activada.

## Las áreas

| Id del área | Nombre en Brelio | Contiene | Por defecto |
| - | - | - | - |
| `agenda` | Agenda y citas | Citas, huecos libres, la agenda de cada profesional | Activada |
| `team` | Servicios y equipo | Centros, profesionales, servicios | Activada |
| `patients` | Pacientes: datos administrativos | Nombre, datos de contacto, datos de la ficha | **Desactivada** |
| `clinical` | Pacientes: historia clínica y notas | Sesiones, notas, documentos clínicos | **Desactivada** |
| `billing` | Facturación | Facturas, pagos, bonos | **Desactivada** |
| `integrations` | — | Claves, apps, webhooks y estos mismos ajustes | Siempre activada |

`integrations` no se puede desactivar: contiene los controles que cortan el acceso. Ninguna operación usa todavía `clinical` ni `billing`.

Un propietario cambia las áreas en **Configuración › Integraciones › Resumen**. El cambio se aplica a la siguiente petición.

## Los datos de pacientes necesitan dos decisiones

Una operación sobre datos de pacientes (`patients`, `clinical`) solo se ejecuta si se cumplen las dos:

1. **La clínica activó el área.** Un propietario acepta las condiciones de datos de pacientes (tienen versión) y la decisión queda registrada con quién y cuándo.
2. **La credencial está aceptada.** Cada credencial necesita su propia aceptación antes de tocar datos de pacientes:
   * una conexión MCP o una clave personal: la acepta su persona, la primera vez que hace falta;
   * una clave de la organización o una app de partner: la acepta el propietario que la crea.

> [!NOTE]
>
> Hasta que se publiquen las condiciones de datos de pacientes revisadas, las áreas de pacientes no se pueden activar en producción (`409 PATIENT_DATA_TERMS_PENDING`), así que todas las operaciones de pacientes responden `403 DATA_AREA_OFF`.

## Qué ves cuando un área está desactivada

**Las operaciones de esa área** se rechazan:

```json 403 DATA_AREA_OFF theme={null}
{
  "type": "https://api.brelio.app/problems/data-area-off",
  "title": "Request refused",
  "status": 403,
  "code": "DATA_AREA_OFF",
  "detail": "patients.list uses the patients data area («Patients: administrative data»), which this organization does not allow integrations to use. An owner can turn it on in Brelio's integration settings.",
  "request_id": "…",
  "params": { "operationId": "patients.list", "area": "patients" },
  "hint": "An owner can turn the area on in Brelio; until then, use operations of other areas."
}
```

**Los campos de pacientes dentro de otras áreas** llegan como `null`. Por ejemplo, `GET /v1/agenda` sigue listando citas, pero `patientId` es `null` salvo que el área `patients` esté activada y la credencial esté aceptada. Tu código debe aceptar `null` ahí.

**Los webhooks** siguen la misma regla en el momento de la entrega: los eventos sobre pacientes no se entregan, y los campos de pacientes de otros eventos llegan como `null`.

## Consentimiento de datos de pacientes

Si el área está activada pero la credencial todavía no está aceptada, la llamada responde:

```json 403 PATIENT_DATA_CONSENT_REQUIRED theme={null}
{
  "type": "https://api.brelio.app/problems/patient-data-consent-required",
  "title": "Request refused",
  "status": 403,
  "code": "PATIENT_DATA_CONSENT_REQUIRED",
  "detail": "patients.list returns patient data, and nobody has accepted patient data for this credential yet. Its person (or the owner who created it) accepts it in Brelio.",
  "request_id": "6731564c-80c0-487c-bbf0-e7041f66d19e",
  "params": { "operationId": "patients.list" },
  "hint": "The credential's person accepts patient data in Brelio; organization keys and apps are accepted by an owner."
}
```

Por MCP, el mismo rechazo lleva un enlace en `params.consent_url` (`https://brelio.app/<clínica>/conectar/<conexión>`). Los clientes que admiten elicitation por URL lo abren a la persona; los demás lo muestran. Después de aceptar, repite la llamada.

Las operaciones sin datos de pacientes funcionan antes de cualquier aceptación.

## Lee la política de la clínica

Una integración con **Gestionar integraciones** puede leer el estado actual:

```bash theme={null}
curl https://api.brelio.app/v1/platform-policy \
  -H "Authorization: Bearer $BRELIO_API_KEY"
```

```json Respuesta theme={null}
{
  "data": [
    { "id": "agenda", "label": "Schedule and appointments", "description": "Appointments, free slots and each professional's schedule.", "patientData": false, "enabled": true, "version": 0, "updatedAt": null },
    { "id": "team", "label": "Services and team", "description": "Centers, professionals and services.", "patientData": false, "enabled": true, "version": 0, "updatedAt": null },
    { "id": "patients", "label": "Patients: administrative data", "description": "Name, contact details and record data.", "patientData": true, "enabled": false, "version": 0, "updatedAt": null },
    { "id": "clinical", "label": "Patients: clinical history and notes", "description": "Sessions, notes and clinical documents.", "patientData": true, "enabled": false, "version": 0, "updatedAt": null },
    { "id": "billing", "label": "Billing", "description": "Invoices, payments and packages.", "patientData": false, "enabled": false, "version": 0, "updatedAt": null }
  ],
  "terms": { "id": "patient-data-terms", "version": 1, "reviewed": false, "available": false }
}
```

`GET /v1/platform-policy/decisions` lista todas las decisiones (quién activó o desactivó un área, quién aceptó datos de pacientes para qué credencial), de la más reciente a la más antigua.

## Una integración solo puede cortar acceso

Una integración puede **desactivar** un área, por ejemplo para cortar su propio acceso al momento:

```bash theme={null}
curl -X PATCH https://api.brelio.app/v1/platform-policy/agenda \
  -H "Authorization: Bearer $BRELIO_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{"enabled": false, "expectedVersion": 0}'
```

**Activar** un área siempre lo hace una persona en Brelio (`403 DATA_AREA_ENABLE_IN_BRELIO`).

## Techo de volumen

Una credencial puede recibir como máximo 2.000 fichas de pacientes por hora. A partir de ahí las llamadas responden `429 RATE_LIMITED` y se avisa a los propietarios de la clínica. Consulta los [límites de uso](https://docs.brelio.com/es/concepts/rate-limits.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.