API Hujjatlari
Aivoc tizimi bilan integratsiya qilish uchun qo'llanma.
GET
Mavzular ro'yxatini olish
/api/themes
Barcha mavzular va ularga tegishli so'zlar ro'yxatini qaytaradi.
{
"success": true,
"data": [
{
"id": 1,
"name": "Oilaviy so'zlar",
"slug": "oilaviy-sozlar-...",
"image": "themes/example.jpg",
"words": [
{
"id": 10,
"word_en": "Father",
"translation": "Ota",
"image": "words/father.jpg"
}
]
}
]
}
POST
Yangi mavzu va so'zlar qo'shish
/api/themes
Yangi mavzu yaratish va unga bir vaqtning o'zida so'zlarni biriktirish. multipart/form-data formatida yuborilishi kerak.
Parametrlar:
name(required): Mavzu nomiimage(optional): Mavzu rasmi (file)words[0][word_en]: 1-so'z inglizchasiwords[0][translation]: 1-so'z tarjimasiwords[0][image]: 1-so'z rasmi (file)words[0][example_sentence]: 1-so'z uchun namuna (optional)
// Muvaffaqiyatli javob (201 Created)
{
"success": true,
"message": "Mavzu va so'zlar muvaffaqiyatli saqlandi",
"data": { ... }
}
POST (PUT)
Mavzuni yangilash
/api/themes/{id}
Eslatma: HTML formalar orqali fayl yuborishda
PUT metodi ishlamaydi. Shuning uchun POST metodi bilan _method=PUT parametri qo'shib yuborilishi kerak.
Mavzu ma'lumotlarini o'zgartirish. Agar so'zlar massivi yuborilsa, mavzudagi so'zlar to'liq yangilanadi (sinxronizatsiya qilinadi).
So'zni yangilash yoki qo'shish:
Agar so'z obyektida id ko'rsatilsa, o'sha so'z yangilanadi. Agar id bo'lmasa, yangi so'z yaratiladi.
DELETE
Mavzuni o'chirish
/api/themes/{id}
Mavzuni o'chiradi. Unga bog'langan so'zlar bazada qoladi, lekin mavzudan uziladi.