# Enum-Schnittstelle
Die Enum-Schnittstelle ermöglicht den Abruf von übersetzten Werten von oikos. Folgende Enums sind verfügbar:
- Django Model Choices
- Institutionen
- Benutzerdefinierte Auswahlwerte
- Optionen
- Schlagworte
Die Schnittstelle ist unter dem Pfad /api/dls_sync/enum verfügbar.
# Filter
Die Liste der Enums kann nach enum oder type gefiltert werden. Der Filter akzeptiert auch eine Liste von Werten:
/api/dls_sync/enum?enum=institution&enum=option oder /api/dls_sync/enum?type=institution&type=standard_choices
Hier ist eine Liste der verfügbaren Filter für type:
institution-> Institutionenoption-> Optionencustom_choice-> Benutzerdefinierte Auswahlwertetag-> Schlagwortestandard_choices-> Django Model Choices
Die Liste der verfügbaren Werte für enum variiert je nach vorhandenen benutzerdefinierten Feldern und Optionen. Grundsätzlich sind folgende Filter für enum verfügbar:
institution-> Institutiontag-> Schlagworte
Die Enums für Optionen setzen sich aus den FieldChoices der Optionen zusammen. Die Enums für benutzerdefinierte Auswahlwerte setzen sich aus den identifier der benutzerdefinierten Felder zusammen.
# Ergebnis
Ein Enum-Eintrag enthält folgende Felder:
enum-> Name des Enumstype-> Typ des Enumslabel_<sprache>-> Für jede Sprache im System wird ein Feld nach dem Schemalabel_<sprache>generiertidentifier-> Identifiziert den Enum-Eintrag eindeutig innerhalb eines Enumsdata-> Beliebige Daten eines Enum-Eintrags
Das Feld type auf dem Enum-Eintrag ist erforderlich, da andernfalls mehrdeutige Werte auftreten können, wenn beispielsweise ein benutzerdefiniertes Feld mit dem identifier institution erstellt wird.
Hier ist ein Beispiel für einen Enum-Eintrag:
{
"enum": "task_type",
"type": "standard_choice",
"identifier": "control",
"data": {},
"label_de": "Zustandskontrolle",
"label_fr": "Contrôle de l'état",
"label_en": "Condition control",
"label_it": "Controllo delle condizioni",
"label_rm": "Controlla dal stadi"
}