{
  "status": "Contrato de diseño; no configuración importable ni auditoría de una instalación",
  "interface": "Servicios web externos de Moodle; no el nuevo REST API",
  "example_process": "Matriculación manual de alumnado en una convocatoria autorizada",
  "allowed_function_example": "enrol_manual_enrol_users",
  "effective_identity": "Cuenta técnica de ensayo con asignaciones restringidas; concretar en la instalación",
  "scope": {
    "courses": "Solo las ediciones acordadas y vinculadas a cursos reales",
    "roles": "Rol académico autorizado y asignable por la identidad; identificador propio de la instalación",
    "consumer": "Conector de gestión académica",
    "fields": "Solo parámetros necesarios y evidencia mínima de confirmación"
  },
  "enforcement": [
    "Acceso al servicio y funciones incluidas",
    "Validación de parámetros en el servidor",
    "Contexto concreto y capacidades efectivas",
    "Rol asignable y método habilitado cuando corresponda"
  ],
  "acceptance": "Ejecutar la matriz con datos ficticios en una instalación de ensayo; observar también estado final",
  "credential_lifecycle": [
    "Almacenamiento de servidor",
    "Responsable de rotación y revocación",
    "Exclusión de secretos de las trazas"
  ],
  "sources": [
    "https://moodledev.io/docs/5.3/apis/subsystems/external/security",
    "https://moodledev.io/docs/5.3/apis/subsystems/external/description",
    "https://docs.moodle.org/503/en/REST_API_tokens"
  ]
}
