api package
Submodules
api.admin module
api.apps module
api.medical_workflow_views module
Additional View API for the complete medical workflow Manages the transcription pipeline, entity extraction, and report generation
API Endpoints Documentation
This module contains the following API functions for the medical workflow:
Patient Management
patients_list()
- List of patientspatient_visit_history()
- Patient visit historyupdate_patient_data()
- Update patient data
Audio Workflow and Transcription
process_audio_visit()
- Audio processing and transcriptionextract_clinical_data_llm()
- Clinical data extraction with LLMtranscript_details()
- Transcription details
Report Generation
generate_pdf_report()
- PDF report generationdownload_pdf_report()
- Download generated report
Analytics and Dashboard
dashboard_analytics()
- Analytics data for dashboardall_interventions_list()
- List all interventionsintervention_details()
- Specific intervention details
Clinical Data Management
update_clinical_data()
- Update extracted clinical dataget_extraction_methods()
- Available extraction methods
All functions are decorated with @api_view
and use REST Framework serializers for data validation and serialization.
api.models module
api.serializers module
Serializers per API REST del sistema medico unificato
- class api.serializers.DoctorSerializer(*args, **kwargs)[source]
Bases:
ModelSerializer
Serializer per modello Doctor
- class Meta[source]
Bases:
object
- fields = ['id', 'doctor_id', 'username', 'email', 'first_name', 'last_name', 'full_name', 'specialization', 'department', 'license_number', 'is_emergency_doctor', 'is_active', 'created_at', 'last_login_at']
- read_only_fields = ['doctor_id', 'created_at', 'last_login_at']
- class api.serializers.PatientSerializer(*args, **kwargs)[source]
Bases:
ModelSerializer
Serializer per modello Patient
- class Meta[source]
Bases:
object
- fields = ['id', 'patient_id', 'first_name', 'last_name', 'full_name', 'date_of_birth', 'age', 'place_of_birth', 'fiscal_code', 'gender', 'phone', 'emergency_contact', 'weight', 'height', 'blood_type', 'allergies', 'created_at', 'updated_at']
- read_only_fields = ['patient_id', 'created_at', 'updated_at']
- class api.serializers.EncounterSerializer(*args, **kwargs)[source]
Bases:
ModelSerializer
Serializer per modello Encounter
- class Meta[source]
Bases:
object
- fields = ['id', 'encounter_id', 'patient', 'patient_name', 'doctor', 'doctor_name', 'admission_time', 'chief_complaint', 'triage_priority', 'status', 'discharge_time', 'duration_minutes', 'created_at', 'updated_at']
- read_only_fields = ['encounter_id', 'duration_minutes', 'created_at', 'updated_at']
- class api.serializers.TranscriptSegmentSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per segmenti di trascrizione
- class api.serializers.LoginSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per autenticazione medici
- class api.serializers.AudioUploadSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per upload file audio
- class api.serializers.StreamingStatusSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per status streaming WebSocket
- class api.serializers.TranscribeAudioSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per richieste di trascrizione audio
- class api.serializers.ProcessClinicalDataSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per processamento dati clinici
- class api.serializers.GenerateReportSerializer(*args, **kwargs)[source]
Bases:
Serializer
Serializer per generazione report PDF
- class api.serializers.AudioTranscriptSerializer(*args, **kwargs)[source]
Bases:
ModelSerializer
Serializer per trascrizioni audio
api.tests module
api.urls module
API URLs configuration
api.views module
Views API per il sistema medico unificato Endpoints REST per gestione pazienti, medici ed episodi
- class api.views.DoctorViewSet(*args, **kwargs)[source]
Bases:
ModelViewSet
ViewSet per gestione medici
- queryset
- serializer_class
alias of
DoctorSerializer
- encounters(request, pk=None)
Ottieni tutti gli encounter di un medico
- class api.views.PatientViewSet(*args, **kwargs)[source]
Bases:
ModelViewSet
ViewSet per gestione pazienti
- queryset
- serializer_class
alias of
PatientSerializer
- encounters(request, pk=None)
Ottieni tutti gli encounter di un paziente
- class api.views.EncounterViewSet(*args, **kwargs)[source]
Bases:
ModelViewSet
ViewSet per gestione encounters di Pronto Soccorso
- queryset
- serializer_class
alias of
EncounterSerializer
- ordering_fields = ['admission_time', 'triage_priority']
- ordering = ['-admission_time']
- class api.views.TranscribeAudioView(*args, **kwargs)[source]
Bases:
APIView
Endpoint per trascrizione audio
- parser_classes = (rest_framework.parsers.MultiPartParser, rest_framework.parsers.FormParser)