Prüfungs-API

Verwaltung von Prüfungen, Fragen, Antworten und Versuchen — Abrufen, Erstellen, Ändern, Löschen

Basis-URL

https://{tenant}.logzi.com/api/exam/

Jede Anfrage liefert eine JSON-Antwort zurück. Bei Erfolg result.code == 1, im Fehlerfall result.code == 0.

GET /api/exam/get

Abrufen einer einzelnen Prüfung anhand ihrer ID.

Query-Parameter

Parameter Typ Erforderlich Beschreibung
id int Eindeutige Kennung der Prüfung

Beispielanfrage

GET /api/exam/get?id=1
X-API-KEY: {ihr_api_schluessel}

Beispielantwort

{
  "result": { "code": 1, "message": "success" },
  "data": {
    "id": 1,
    "title": "Termékismeret vizsga",
    "description": "Alapozó teszt új belépők számára.",
    "company_id": 1,
    "date_create": "2024-01-10 09:00:00",
    "date_update": "2024-05-20 14:30:00"
  }
}
GET /api/exam/list

Abrufen einer seitenweise blätterbaren Liste von Prüfungen.

Query-Parameter

Parameter Typ Erforderlich Beschreibung
list_offset int Startposition der Seitenblätterung (Standard: 0)
list_count int Anzahl der Datensätze pro Seite (Standard: 20)
company_id int Filter nach Unternehmenskennung

Beispielanfrage

GET /api/exam/list?list_offset=0&company_id=1
X-API-KEY: {ihr_api_schluessel}

Beispielantwort

{
  "result": { "code": 1, "message": "success" },
  "data": [
    {
      "id": 1,
      "title": "Termékismeret vizsga",
      "description": "Alapozó teszt új belépők számára.",
      "date_create": "2024-01-10 09:00:00",
      "date_update": "2024-05-20 14:30:00"
    }
  ],
  "params": {
    "list_all": 5,
    "list_offset": 0,
    "list_count": 20
  }
}
POST /api/exam/save

Erstellen oder Ändern einer Prüfung. Für eine neue Prüfung data[id] = 0, zum Ändern die vorhandene ID angeben.

POST-Felder — data-Objekt

Feld Typ Erforderlich Beschreibung
id int 0 = neue Prüfung, >0 = Änderung
company_id int Kennung des Unternehmens (nur bei neuer Prüfung erforderlich)
title string Name der Prüfung
description string Beschreibung / Anweisung für den Teilnehmer

Beispielanfrage

POST /api/exam/save
X-API-KEY: {ihr_api_schluessel}
Content-Type: application/json

{
  "data": {
    "id": 0,
    "company_id": 1,
    "title": "Termékismeret vizsga",
    "description": "Alapozó teszt új belépők számára."
  }
}

Beispielantwort

{
  "result": { "code": 1, "message": "Saved" },
  "data": { "id": 3 }
}
POST /api/exam/delete

Logisches Löschen einer Prüfung.

POST-Felder — data-Objekt

Feld Typ Erforderlich Beschreibung
id int Kennung der zu löschenden Prüfung

Beispielanfrage

POST /api/exam/delete
X-API-KEY: {ihr_api_schluessel}
Content-Type: application/json

{
  "data": { "id": 3 }
}

Beispielantwort

{
  "result": { "code": 1, "message": "Deleted" },
  "data": { "id": 3 }
}
GET /api/exam/question-list

Abrufen aller zu einer Prüfung gehörenden Fragen samt den dazugehörigen Antwortmöglichkeiten.

Query-Parameter

Parameter Typ Erforderlich Beschreibung
exam_id int Kennung der Prüfung

Beispielanfrage

GET /api/exam/question-list?exam_id=1
X-API-KEY: {ihr_api_schluessel}

Beispielantwort

{
  "result": { "code": 1, "message": "success" },
  "data": [
    {
      "id": 10,
      "exam_id": 1,
      "question_text": "Mi a Logzi fő funkciója?",
      "question_type": "radio",
      "explanation_text": "A Logzi egy ERP rendszer.",
      "sort_order": 1,
      "answers": [
        { "id": 101, "answer_text": "Számlázás és készletkezelés", "is_correct": 1, "sort_order": 0 },
        { "id": 102, "answer_text": "Videóstream", "is_correct": 0, "sort_order": 1 }
      ]
    }
  ]
}
GET /api/exam/question

Abrufen einer einzelnen Frage anhand ihrer ID, zusammen mit den Antwortmöglichkeiten.

Query-Parameter

Parameter Typ Erforderlich Beschreibung
id int Kennung der Frage

Beispielanfrage

GET /api/exam/question?id=10
X-API-KEY: {ihr_api_schluessel}

Beispielantwort

{
  "result": { "code": 1, "message": "success" },
  "data": {
    "id": 10,
    "exam_id": 1,
    "question_text": "Mi a Logzi fő funkciója?",
    "question_type": "radio",
    "explanation_text": "A Logzi egy ERP rendszer.",
    "sort_order": 1,
    "answers": [
      { "id": 101, "answer_text": "Számlázás és készletkezelés", "is_correct": 1, "sort_order": 0 },
      { "id": 102, "answer_text": "Videóstream", "is_correct": 0, "sort_order": 1 }
    ]
  }
}
POST /api/exam/save-question

Erstellen oder Ändern einer Frage samt den zugehörigen Antwortmöglichkeiten. Beim Ändern werden die vorhandenen Antworten gelöscht und neue eingefügt.

POST-Felder — data-Objekt

Feld Typ Erforderlich Beschreibung
id int 0 = neue Frage, >0 = Änderung
exam_id int Kennung der Prüfung (nur bei neuer Frage erforderlich)
question_text string Text der Frage
question_type string Fragetyp: radio, checkbox, true_false, text
explanation_text string Erklärungstext bei der Anzeige der Antwort
sort_order int Reihenfolge (Standard: 0)
answers array Array der Antwortmöglichkeiten (siehe unten) — bei Typ text nicht erforderlich

Antwortfelder — data[answers][]

Feld Typ Erforderlich Beschreibung
answer_text string Text der Antwortmöglichkeit
is_correct int 1 = richtige Antwort, 0 = falsche Antwort

Beispielanfrage

POST /api/exam/save-question
X-API-KEY: {ihr_api_schluessel}
Content-Type: application/json

{
  "data": {
    "id": 0,
    "exam_id": 1,
    "question_text": "Mi a Logzi fő funkciója?",
    "question_type": "radio",
    "explanation_text": "A Logzi egy ERP rendszer.",
    "sort_order": 1,
    "answers": [
      { "answer_text": "Számlázás és készletkezelés", "is_correct": 1 },
      { "answer_text": "Videóstream", "is_correct": 0 }
    ]
  }
}

Beispielantwort

{
  "result": { "code": 1, "message": "Saved" },
  "data": { "id": 10 }
}
POST /api/exam/delete-question

Löschen einer Frage. Alle zur Frage gehörenden Antwortmöglichkeiten werden ebenfalls gelöscht.

POST-Felder — data-Objekt

Feld Typ Erforderlich Beschreibung
id int Kennung der zu löschenden Frage

Beispielanfrage

POST /api/exam/delete-question
X-API-KEY: {ihr_api_schluessel}
Content-Type: application/json

{
  "data": { "id": 10 }
}

Beispielantwort

{
  "result": { "code": 1, "message": "Deleted" },
  "data": { "id": 10 }
}
GET /api/exam/attempt-list

Abrufen der Liste aller zu einer Prüfung gehörenden Versuche (Durchführungen) samt Partner-Benutzerdaten.

Query-Parameter

Parameter Typ Erforderlich Beschreibung
exam_id int Kennung der Prüfung

Beispielanfrage

GET /api/exam/attempt-list?exam_id=1
X-API-KEY: {ihr_api_schluessel}

Beispielantwort

{
  "result": { "code": 1, "message": "success" },
  "data": [
    {
      "id": 5,
      "exam_id": 1,
      "partner_user_id": 12,
      "partner_user_name": "Kovács Béla",
      "partner_user_email": "kovacs.bela@example.com",
      "status": "completed",
      "score": 8,
      "date_start": "2024-06-01 10:00:00",
      "date_complete": "2024-06-01 10:15:00"
    }
  ]
}
POST /api/exam/save-attempt

Starten eines neuen Prüfungsversuchs (Ausfüllsitzung) für einen Partner-Benutzer. Liefert die Kennung des Versuchs sowie den Schlüssel mit dem Ausfüll-Link (chk) zurück.

POST-Felder

Feld Typ Erforderlich Beschreibung
exam_id int Kennung der Prüfung
partner_user_id int Kennung des ausfüllenden Partner-Benutzers

Beispielanfrage

POST /api/exam/save-attempt
X-API-KEY: {ihr_api_schluessel}
Content-Type: application/json

{
  "exam_id": 1,
  "partner_user_id": 12
}

Beispielantwort

{
  "result": { "code": 1, "message": "Created" },
  "data": {
    "id": 5,
    "chk": "a3f9c2e1b07d..."
  }
}
POST /api/exam/save-slide-answer

Speichern der Antwort auf eine Frage für einen aktiven Versuch. Beim Beantworten der letzten Frage wird der Versuch automatisch abgeschlossen und die Punktzahl berechnet.

POST-Felder

Feld Typ Erforderlich Beschreibung
attempt_id int Kennung des Versuchs
question_id int Kennung der zu beantwortenden Frage
partner_user_id int Kennung des ausfüllenden Partner-Benutzers
selected_answer_ids array Array der ausgewählten Antwort-IDs (für die Typen radio, checkbox, true_false)
text_answer string Textantwort (für Fragen vom Typ text)

Beispielanfrage

POST /api/exam/save-slide-answer
X-API-KEY: {ihr_api_schluessel}
Content-Type: application/json

{
  "attempt_id": 5,
  "question_id": 10,
  "partner_user_id": 12,
  "selected_answer_ids": [101]
}

Beispielantwort (nicht die letzte Frage)

{
  "result": { "code": 1, "message": "success" },
  "data": {
    "is_correct": 1,
    "correct_answer_ids": [101],
    "explanation_text": "A Logzi egy ERP rendszer.",
    "is_last": false
  }
}

Beispielantwort (letzte Frage — Versuch wird abgeschlossen)

{
  "result": { "code": 1, "message": "success" },
  "data": {
    "is_correct": 1,
    "correct_answer_ids": [101],
    "explanation_text": "A Logzi egy ERP rendszer.",
    "is_last": true,
    "score": 9,
    "total": 10
  }
}

Nimm Kontakt mit uns auf

Interessierst du dich für unsere Software? Schreib uns einfach!

Brauchst du Hilfe?

Wenn du keine Antwort findest und Unterstützung brauchst

Jetzt registrieren,
später bezahlen!

Teste es 3 Tage kostenlos, ohne Risiko und Verpflichtungen!