API skúšok

Správa skúšok, otázok, odpovedí a pokusov — získavanie, vytváranie, úprava, vymazanie

Základná URL adresa

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

Každá požiadavka vráti JSON odpoveď. Pri úspešnej odpovedi je result.code == 1, pri chybe result.code == 0.

GET /api/exam/get

Získanie jednej skúšky na základe identifikátora.

Query parametre

Parameter Typ Povinné Popis
id int Jedinečný identifikátor skúšky

Príklad požiadavky

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

Príklad odpovede

{
  "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

Získanie stránkovaného zoznamu skúšok.

Query parametre

Parameter Typ Povinné Popis
list_offset int Posun stránkovania (predvolené: 0)
list_count int Počet záznamov na stránku (predvolené: 20)
company_id int Filtrovanie podľa identifikátora spoločnosti

Príklad požiadavky

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

Príklad odpovede

{
  "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

Vytvorenie alebo úprava skúšky. Pre novú skúšku zadajte data[id] = 0, pre úpravu zadajte existujúce ID.

POST polia — objekt data

Pole Typ Povinné Popis
id int 0 = nová skúška, >0 = úprava
company_id int Identifikátor spoločnosti (povinné iba pri novej skúške)
title string Názov skúšky
description string Popis / pokyn pre vypĺňajúceho

Príklad požiadavky

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

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

Príklad odpovede

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

Logické vymazanie skúšky.

POST polia — objekt data

Pole Typ Povinné Popis
id int Identifikátor skúšky, ktorá sa má vymazať

Príklad požiadavky

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

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

Príklad odpovede

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

Získanie všetkých otázok patriacich k danej skúške vrátane príslušných možností odpovedí.

Query parametre

Parameter Typ Povinné Popis
exam_id int Identifikátor skúšky

Príklad požiadavky

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

Príklad odpovede

{
  "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

Získanie jednej otázky na základe identifikátora, spolu s možnosťami odpovedí.

Query parametre

Parameter Typ Povinné Popis
id int Identifikátor otázky

Príklad požiadavky

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

Príklad odpovede

{
  "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

Vytvorenie alebo úprava otázky spolu s príslušnými možnosťami odpovedí. Pri úprave sa existujúce odpovede vymažú a vložia sa nové.

POST polia — objekt data

Pole Typ Povinné Popis
id int 0 = nová otázka, >0 = úprava
exam_id int Identifikátor skúšky (povinné iba pri novej otázke)
question_text string Text otázky
question_type string Typ otázky: radio, checkbox, true_false, text
explanation_text string Vysvetľujúci text pri zobrazení odpovede
sort_order int Poradie (predvolené: 0)
answers array Pole možností odpovedí (pozri nižšie) — pri type text nie je potrebné

Polia odpovede — data[answers][]

Pole Typ Povinné Popis
answer_text string Text možnosti odpovede
is_correct int 1 = správna odpoveď, 0 = nesprávna odpoveď

Príklad požiadavky

POST /api/exam/save-question
X-API-KEY: {vas_api_kluc}
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 }
    ]
  }
}

Príklad odpovede

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

Vymazanie otázky. Vymažú sa aj všetky možnosti odpovedí patriace k tejto otázke.

POST polia — objekt data

Pole Typ Povinné Popis
id int Identifikátor otázky, ktorá sa má vymazať

Príklad požiadavky

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

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

Príklad odpovede

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

Získanie zoznamu všetkých pokusov (vyplnení) patriacich k danej skúške s údajmi o používateľovi partnera.

Query parametre

Parameter Typ Povinné Popis
exam_id int Identifikátor skúšky

Príklad požiadavky

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

Príklad odpovede

{
  "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

Spustenie nového pokusu (relácie vyplnenia) skúšky pre používateľa partnera. Vráti identifikátor pokusu a kľúč obsahujúci odkaz na vyplnenie (chk).

POST polia

Pole Typ Povinné Popis
exam_id int Identifikátor skúšky
partner_user_id int Identifikátor používateľa partnera, ktorý skúšku vypĺňa

Príklad požiadavky

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

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

Príklad odpovede

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

Uloženie odpovede na otázku v rámci aktívneho pokusu. Po zodpovedaní poslednej otázky sa pokus automaticky uzavrie a vypočíta sa skóre.

POST polia

Pole Typ Povinné Popis
attempt_id int Identifikátor pokusu
question_id int Identifikátor otázky, na ktorú sa odpovedá
partner_user_id int Identifikátor používateľa partnera, ktorý skúšku vypĺňa
selected_answer_ids array Pole ID vybraných odpovedí (pre typy radio, checkbox, true_false)
text_answer string Textová odpoveď (pre otázku typu text)

Príklad požiadavky

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

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

Príklad odpovede (nie je posledná otázka)

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

Príklad odpovede (posledná otázka — pokus sa uzavrie)

{
  "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
  }
}

Kontaktuj nás

Zaujíma ťa náš softvér? Pokojne nám napíš!

Potrebuješ pomoc?

Ak nevieš nájsť odpoveď a potrebuješ pomoc

Zaregistruj sa teraz,
zaplať neskôr!

Vyskúšaj 3 dni zadarmo, bez rizika a záväzkov!