Sub Level List
ViewSet for sub-levels.
GET /api/sub-levels/?format=api&page=4
{ "count": 96, "next": "http://roskov.driad.fr/api/sub-levels/?format=api&page=5", "previous": "http://roskov.driad.fr/api/sub-levels/?format=api&page=3", "results": [ { "id": 61, "level": 13, "level_display": "Temps et Météo", "sub_level": 3, "title": "Vocabulaire des conditions météorologiques de base", "description": "Conditions météorologiques", "order": 3, "word_pairs": [ { "id": 820, "french_word": "brouillard", "russian_word": "туман", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Fog", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.254845Z", "updated_at": "2026-01-17T18:41:52.254856Z", "is_active": true }, { "id": 819, "french_word": "brume", "russian_word": "туман", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Mist", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.250197Z", "updated_at": "2026-01-17T18:41:52.250207Z", "is_active": true }, { "id": 830, "french_word": "chaleur", "russian_word": "жара", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Heat", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.304230Z", "updated_at": "2026-01-17T18:41:52.304246Z", "is_active": true }, { "id": 838, "french_word": "couvert", "russian_word": "пасмурно", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Overcast", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.344658Z", "updated_at": "2026-01-17T18:41:52.344668Z", "is_active": true }, { "id": 839, "french_word": "dégagé", "russian_word": "ясно", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Clear", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.349914Z", "updated_at": "2026-01-17T18:41:52.349930Z", "is_active": true }, { "id": 840, "french_word": "ensoleillé", "russian_word": "солнечно", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Sunny", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.355056Z", "updated_at": "2026-01-17T18:41:52.355072Z", "is_active": true }, { "id": 825, "french_word": "fraîcheur", "russian_word": "прохлада", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Coolness", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.278675Z", "updated_at": "2026-01-17T18:41:52.278686Z", "is_active": true }, { "id": 831, "french_word": "froid", "russian_word": "холод", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Cold", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.309320Z", "updated_at": "2026-01-17T18:41:52.309331Z", "is_active": true }, { "id": 823, "french_word": "gel", "russian_word": "мороз", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Frost", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.269222Z", "updated_at": "2026-01-17T18:41:52.269233Z", "is_active": true }, { "id": 824, "french_word": "gelée", "russian_word": "заморозки", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Freeze", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.273943Z", "updated_at": "2026-01-17T18:41:52.273955Z", "is_active": true }, { "id": 821, "french_word": "humidité", "russian_word": "влажность", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Humidity", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.259510Z", "updated_at": "2026-01-17T18:41:52.259522Z", "is_active": true }, { "id": 814, "french_word": "météo", "russian_word": "погода", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Weather", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.225693Z", "updated_at": "2026-01-17T18:41:52.225704Z", "is_active": true }, { "id": 816, "french_word": "nuage", "russian_word": "облако", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Cloud", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.235347Z", "updated_at": "2026-01-17T18:41:52.235357Z", "is_active": true }, { "id": 817, "french_word": "nuages", "russian_word": "облака", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Clouds", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.240189Z", "updated_at": "2026-01-17T18:41:52.240199Z", "is_active": true }, { "id": 818, "french_word": "nuageux", "russian_word": "облачно", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Cloudy", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.245488Z", "updated_at": "2026-01-17T18:41:52.245500Z", "is_active": true }, { "id": 822, "french_word": "sécheresse", "russian_word": "засуха", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Drought", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.264309Z", "updated_at": "2026-01-17T18:41:52.264319Z", "is_active": true }, { "id": 829, "french_word": "température", "russian_word": "температура", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Temperature", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.299195Z", "updated_at": "2026-01-17T18:41:52.299210Z", "is_active": true } ], "steps": [ { "id": 240, "sub_level": 61, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des conditions météorologiques de base", "description": "Conditions météorologiques\n\nApprenez le vocabulaire de vocabulaire des conditions météorologiques de base en russe.", "is_required": true, "config": { "content": "Conditions météorologiques\n\nApprenez le vocabulaire de vocabulaire des conditions météorologiques de base en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.418523Z", "updated_at": "2026-01-17T18:41:52.418534Z" }, { "id": 241, "sub_level": 61, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire des conditions météorologiques de base avec le mode flashcard.", "min_score": 70, "level": 6, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.421939Z", "updated_at": "2026-01-17T18:41:52.421949Z" }, { "id": 242, "sub_level": 61, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire des conditions météorologiques de base avec le mode matching.", "min_score": 70, "level": 6, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.425079Z", "updated_at": "2026-01-17T18:41:52.425090Z" }, { "id": 243, "sub_level": 61, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire des conditions météorologiques de base avec le mode multiple_choice.", "min_score": 70, "level": 6, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.429198Z", "updated_at": "2026-01-17T18:41:52.429208Z" } ], "videos": [], "learning_cards": [ { "id": 240, "sub_level": 61, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des conditions météorologiques de base", "description": "Conditions météorologiques\n\nApprenez le vocabulaire de vocabulaire des conditions météorologiques de base en russe.", "is_required": true, "config": { "content": "Conditions météorologiques\n\nApprenez le vocabulaire de vocabulaire des conditions météorologiques de base en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.418523Z", "updated_at": "2026-01-17T18:41:52.418534Z" } ], "exercises": [], "total_words": 17, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 17, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.410187Z", "updated_at": "2026-01-17T18:41:52.410203Z" }, { "id": 62, "level": 13, "level_display": "Temps et Météo", "sub_level": 4, "title": "Vocabulaire des phénomènes météorologiques", "description": "Phénomènes météorologiques", "order": 4, "word_pairs": [ { "id": 832, "french_word": "brise", "russian_word": "ветер", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Breeze", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.314346Z", "updated_at": "2026-01-17T18:41:52.314357Z", "is_active": true }, { "id": 827, "french_word": "neige", "russian_word": "снег", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Snow", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.288920Z", "updated_at": "2026-01-17T18:41:52.288933Z", "is_active": true }, { "id": 836, "french_word": "ouragan", "russian_word": "ураган", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Hurricane", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.334326Z", "updated_at": "2026-01-17T18:41:52.334336Z", "is_active": true }, { "id": 826, "french_word": "pluie", "russian_word": "дождь", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Rain", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.284038Z", "updated_at": "2026-01-17T18:41:52.284049Z", "is_active": true }, { "id": 833, "french_word": "rafale", "russian_word": "порыв ветра", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Gust", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.319367Z", "updated_at": "2026-01-17T18:41:52.319377Z", "is_active": true }, { "id": 834, "french_word": "tempête", "russian_word": "буря", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Storm", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.324436Z", "updated_at": "2026-01-17T18:41:52.324447Z", "is_active": true }, { "id": 835, "french_word": "tempête de neige", "russian_word": "метель", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Blizzard", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.329394Z", "updated_at": "2026-01-17T18:41:52.329405Z", "is_active": true }, { "id": 837, "french_word": "tornade", "russian_word": "торнадо", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Tornado", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.339688Z", "updated_at": "2026-01-17T18:41:52.339700Z", "is_active": true }, { "id": 828, "french_word": "vent", "russian_word": "ветер", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Wind", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.294127Z", "updated_at": "2026-01-17T18:41:52.294139Z", "is_active": true } ], "steps": [ { "id": 244, "sub_level": 62, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des phénomènes météorologiques", "description": "Phénomènes météorologiques\n\nApprenez le vocabulaire de vocabulaire des phénomènes météorologiques en russe.", "is_required": true, "config": { "content": "Phénomènes météorologiques\n\nApprenez le vocabulaire de vocabulaire des phénomènes météorologiques en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.439889Z", "updated_at": "2026-01-17T18:41:52.439900Z" }, { "id": 245, "sub_level": 62, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire des phénomènes météorologiques avec le mode flashcard.", "min_score": 70, "level": 6, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.443377Z", "updated_at": "2026-01-17T18:41:52.443387Z" }, { "id": 246, "sub_level": 62, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire des phénomènes météorologiques avec le mode matching.", "min_score": 70, "level": 6, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.446567Z", "updated_at": "2026-01-17T18:41:52.446577Z" }, { "id": 247, "sub_level": 62, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire des phénomènes météorologiques avec le mode multiple_choice.", "min_score": 70, "level": 6, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.449712Z", "updated_at": "2026-01-17T18:41:52.449722Z" } ], "videos": [], "learning_cards": [ { "id": 244, "sub_level": 62, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des phénomènes météorologiques", "description": "Phénomènes météorologiques\n\nApprenez le vocabulaire de vocabulaire des phénomènes météorologiques en russe.", "is_required": true, "config": { "content": "Phénomènes météorologiques\n\nApprenez le vocabulaire de vocabulaire des phénomènes météorologiques en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.439889Z", "updated_at": "2026-01-17T18:41:52.439900Z" } ], "exercises": [], "total_words": 9, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 9, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.432255Z", "updated_at": "2026-01-17T18:41:52.432266Z" }, { "id": 63, "level": 13, "level_display": "Temps et Météo", "sub_level": 5, "title": "Vocabulaire du soleil et de la lumière", "description": "Soleil et lumière", "order": 5, "word_pairs": [ { "id": 842, "french_word": "coucher du soleil", "russian_word": "закат", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Sunset", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.365276Z", "updated_at": "2026-01-17T18:41:52.365291Z", "is_active": true }, { "id": 841, "french_word": "lever du soleil", "russian_word": "восход", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Sunrise", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.360371Z", "updated_at": "2026-01-17T18:41:52.360388Z", "is_active": true }, { "id": 815, "french_word": "soleil", "russian_word": "солнце", "category": "weather", "category_display": "Weather", "level": 6, "level_display": "Temps et Météo", "comment": "Sun", "tags": [ { "id": 23, "name": "weather", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.093700Z", "updated_at": "2026-01-17T18:41:52.093710Z" } ], "created_at": "2026-01-17T18:41:52.230419Z", "updated_at": "2026-01-17T18:41:52.230436Z", "is_active": true } ], "steps": [ { "id": 248, "sub_level": 63, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire du soleil et de la lumière", "description": "Soleil et lumière\n\nApprenez le vocabulaire de vocabulaire du soleil et de la lumière en russe.", "is_required": true, "config": { "content": "Soleil et lumière\n\nApprenez le vocabulaire de vocabulaire du soleil et de la lumière en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.459620Z", "updated_at": "2026-01-17T18:41:52.459631Z" }, { "id": 249, "sub_level": 63, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire du soleil et de la lumière avec le mode flashcard.", "min_score": 70, "level": 6, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.463003Z", "updated_at": "2026-01-17T18:41:52.463013Z" }, { "id": 250, "sub_level": 63, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire du soleil et de la lumière avec le mode matching.", "min_score": 70, "level": 6, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.466145Z", "updated_at": "2026-01-17T18:41:52.466159Z" }, { "id": 251, "sub_level": 63, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire du soleil et de la lumière avec le mode multiple_choice.", "min_score": 70, "level": 6, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.469119Z", "updated_at": "2026-01-17T18:41:52.469129Z" } ], "videos": [], "learning_cards": [ { "id": 248, "sub_level": 63, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire du soleil et de la lumière", "description": "Soleil et lumière\n\nApprenez le vocabulaire de vocabulaire du soleil et de la lumière en russe.", "is_required": true, "config": { "content": "Soleil et lumière\n\nApprenez le vocabulaire de vocabulaire du soleil et de la lumière en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.459620Z", "updated_at": "2026-01-17T18:41:52.459631Z" } ], "exercises": [], "total_words": 3, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 3, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.452270Z", "updated_at": "2026-01-17T18:41:52.452280Z" }, { "id": 64, "level": 14, "level_display": "Voyage", "sub_level": 1, "title": "Vocabulaire des moyens de transport", "description": "Transports", "order": 1, "word_pairs": [ { "id": 844, "french_word": "avion", "russian_word": "самолёт", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Airplane", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.482918Z", "updated_at": "2026-01-17T18:41:52.482934Z", "is_active": true }, { "id": 852, "french_word": "bateau", "russian_word": "лодка", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Boat", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.523843Z", "updated_at": "2026-01-17T18:41:52.523856Z", "is_active": true }, { "id": 847, "french_word": "bus", "russian_word": "автобус", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Bus", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.498114Z", "updated_at": "2026-01-17T18:41:52.498125Z", "is_active": true }, { "id": 853, "french_word": "ferry", "russian_word": "паром", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Ferry", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.528989Z", "updated_at": "2026-01-17T18:41:52.529000Z", "is_active": true }, { "id": 851, "french_word": "moto", "russian_word": "мотоцикл", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Motorcycle", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.518595Z", "updated_at": "2026-01-17T18:41:52.518608Z", "is_active": true }, { "id": 848, "french_word": "métro", "russian_word": "метро", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Subway", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.503479Z", "updated_at": "2026-01-17T18:41:52.503490Z", "is_active": true }, { "id": 849, "french_word": "taxi", "russian_word": "такси", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Taxi", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.508483Z", "updated_at": "2026-01-17T18:41:52.508494Z", "is_active": true }, { "id": 845, "french_word": "train", "russian_word": "поезд", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Train", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.487962Z", "updated_at": "2026-01-17T18:41:52.487974Z", "is_active": true }, { "id": 846, "french_word": "voiture", "russian_word": "машина", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Car", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.493062Z", "updated_at": "2026-01-17T18:41:52.493073Z", "is_active": true }, { "id": 843, "french_word": "voyage", "russian_word": "путешествие", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Trip/Journey", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.477805Z", "updated_at": "2026-01-17T18:41:52.477820Z", "is_active": true }, { "id": 850, "french_word": "vélo", "russian_word": "велосипед", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Bicycle", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.513496Z", "updated_at": "2026-01-17T18:41:52.513509Z", "is_active": true } ], "steps": [ { "id": 252, "sub_level": 64, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des moyens de transport", "description": "Transports\n\nApprenez le vocabulaire de vocabulaire des moyens de transport en russe.", "is_required": true, "config": { "content": "Transports\n\nApprenez le vocabulaire de vocabulaire des moyens de transport en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.713832Z", "updated_at": "2026-01-17T18:41:52.713854Z" }, { "id": 253, "sub_level": 64, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire des moyens de transport avec le mode flashcard.", "min_score": 70, "level": 7, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.717498Z", "updated_at": "2026-01-17T18:41:52.717513Z" }, { "id": 254, "sub_level": 64, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire des moyens de transport avec le mode matching.", "min_score": 70, "level": 7, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.721325Z", "updated_at": "2026-01-17T18:41:52.721341Z" }, { "id": 255, "sub_level": 64, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire des moyens de transport avec le mode multiple_choice.", "min_score": 70, "level": 7, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.725497Z", "updated_at": "2026-01-17T18:41:52.725515Z" } ], "videos": [], "learning_cards": [ { "id": 252, "sub_level": 64, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des moyens de transport", "description": "Transports\n\nApprenez le vocabulaire de vocabulaire des moyens de transport en russe.", "is_required": true, "config": { "content": "Transports\n\nApprenez le vocabulaire de vocabulaire des moyens de transport en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.713832Z", "updated_at": "2026-01-17T18:41:52.713854Z" } ], "exercises": [], "total_words": 11, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 11, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.705122Z", "updated_at": "2026-01-17T18:41:52.705146Z" }, { "id": 65, "level": 14, "level_display": "Voyage", "sub_level": 2, "title": "Vocabulaire des documents de voyage", "description": "Documents de voyage", "order": 2, "word_pairs": [ { "id": 869, "french_word": "assurance", "russian_word": "страховка", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Insurance", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.608389Z", "updated_at": "2026-01-17T18:41:52.608402Z", "is_active": true }, { "id": 863, "french_word": "billet", "russian_word": "билет", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Ticket", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.578194Z", "updated_at": "2026-01-17T18:41:52.578205Z", "is_active": true }, { "id": 867, "french_word": "carte d'identité", "russian_word": "удостоверение личности", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "ID card", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.598568Z", "updated_at": "2026-01-17T18:41:52.598578Z", "is_active": true }, { "id": 870, "french_word": "itinéraire", "russian_word": "маршрут", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Itinerary", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.613338Z", "updated_at": "2026-01-17T18:41:52.613349Z", "is_active": true }, { "id": 864, "french_word": "passeport", "russian_word": "паспорт", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Passport", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.583213Z", "updated_at": "2026-01-17T18:41:52.583224Z", "is_active": true }, { "id": 868, "french_word": "permis de conduire", "russian_word": "водительские права", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Driver's license", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.603669Z", "updated_at": "2026-01-17T18:41:52.603679Z", "is_active": true }, { "id": 866, "french_word": "réservation", "russian_word": "бронирование", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Reservation", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.592972Z", "updated_at": "2026-01-17T18:41:52.592983Z", "is_active": true }, { "id": 865, "french_word": "visa", "russian_word": "виза", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Visa", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.588081Z", "updated_at": "2026-01-17T18:41:52.588091Z", "is_active": true } ], "steps": [ { "id": 256, "sub_level": 65, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des documents de voyage", "description": "Documents de voyage\n\nApprenez le vocabulaire de vocabulaire des documents de voyage en russe.", "is_required": true, "config": { "content": "Documents de voyage\n\nApprenez le vocabulaire de vocabulaire des documents de voyage en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.737275Z", "updated_at": "2026-01-17T18:41:52.737297Z" }, { "id": 257, "sub_level": 65, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire des documents de voyage avec le mode flashcard.", "min_score": 70, "level": 7, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.741142Z", "updated_at": "2026-01-17T18:41:52.741160Z" }, { "id": 258, "sub_level": 65, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire des documents de voyage avec le mode matching.", "min_score": 70, "level": 7, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.745557Z", "updated_at": "2026-01-17T18:41:52.745575Z" }, { "id": 259, "sub_level": 65, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire des documents de voyage avec le mode multiple_choice.", "min_score": 70, "level": 7, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.750207Z", "updated_at": "2026-01-17T18:41:52.750226Z" } ], "videos": [], "learning_cards": [ { "id": 256, "sub_level": 65, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des documents de voyage", "description": "Documents de voyage\n\nApprenez le vocabulaire de vocabulaire des documents de voyage en russe.", "is_required": true, "config": { "content": "Documents de voyage\n\nApprenez le vocabulaire de vocabulaire des documents de voyage en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.737275Z", "updated_at": "2026-01-17T18:41:52.737297Z" } ], "exercises": [], "total_words": 8, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 8, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.728320Z", "updated_at": "2026-01-17T18:41:52.728336Z" }, { "id": 66, "level": 14, "level_display": "Voyage", "sub_level": 3, "title": "Vocabulaire de l'aéroport", "description": "Aéroport", "order": 3, "word_pairs": [ { "id": 880, "french_word": "atterrissage", "russian_word": "посадка", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Landing", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.674734Z", "updated_at": "2026-01-17T18:41:52.674761Z", "is_active": true }, { "id": 881, "french_word": "compagnie aérienne", "russian_word": "авиакомпания", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Airline", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.681454Z", "updated_at": "2026-01-17T18:41:52.681478Z", "is_active": true }, { "id": 879, "french_word": "décollage", "russian_word": "взлёт", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Takeoff", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.665508Z", "updated_at": "2026-01-17T18:41:52.665535Z", "is_active": true }, { "id": 883, "french_word": "hôtesse de l'air", "russian_word": "стюардесса", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Flight attendant", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.693081Z", "updated_at": "2026-01-17T18:41:52.693105Z", "is_active": true }, { "id": 882, "french_word": "pilote", "russian_word": "пилот", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Pilot", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.687349Z", "updated_at": "2026-01-17T18:41:52.687374Z", "is_active": true }, { "id": 878, "french_word": "porte d'embarquement", "russian_word": "выход на посадку", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Boarding gate", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.654403Z", "updated_at": "2026-01-17T18:41:52.654433Z", "is_active": true }, { "id": 884, "french_word": "steward", "russian_word": "стюард", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Steward", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.698742Z", "updated_at": "2026-01-17T18:41:52.698764Z", "is_active": true } ], "steps": [ { "id": 260, "sub_level": 66, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de l'aéroport", "description": "Aéroport\n\nApprenez le vocabulaire de vocabulaire de l'aéroport en russe.", "is_required": true, "config": { "content": "Aéroport\n\nApprenez le vocabulaire de vocabulaire de l'aéroport en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.767924Z", "updated_at": "2026-01-17T18:41:52.767954Z" }, { "id": 261, "sub_level": 66, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'aéroport avec le mode flashcard.", "min_score": 70, "level": 7, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.772687Z", "updated_at": "2026-01-17T18:41:52.772706Z" }, { "id": 262, "sub_level": 66, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'aéroport avec le mode matching.", "min_score": 70, "level": 7, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.776379Z", "updated_at": "2026-01-17T18:41:52.776394Z" }, { "id": 263, "sub_level": 66, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'aéroport avec le mode multiple_choice.", "min_score": 70, "level": 7, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.779958Z", "updated_at": "2026-01-17T18:41:52.779971Z" } ], "videos": [], "learning_cards": [ { "id": 260, "sub_level": 66, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de l'aéroport", "description": "Aéroport\n\nApprenez le vocabulaire de vocabulaire de l'aéroport en russe.", "is_required": true, "config": { "content": "Aéroport\n\nApprenez le vocabulaire de vocabulaire de l'aéroport en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.767924Z", "updated_at": "2026-01-17T18:41:52.767954Z" } ], "exercises": [], "total_words": 7, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 7, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.754097Z", "updated_at": "2026-01-17T18:41:52.754114Z" }, { "id": 67, "level": 14, "level_display": "Voyage", "sub_level": 4, "title": "Vocabulaire des bagages", "description": "Bagages", "order": 4, "word_pairs": [ { "id": 871, "french_word": "bagage", "russian_word": "багаж", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Luggage", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.618245Z", "updated_at": "2026-01-17T18:41:52.618259Z", "is_active": true }, { "id": 876, "french_word": "cartable", "russian_word": "ранец", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "School bag", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.643880Z", "updated_at": "2026-01-17T18:41:52.643892Z", "is_active": true }, { "id": 875, "french_word": "mallette", "russian_word": "портфель", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Briefcase", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.638970Z", "updated_at": "2026-01-17T18:41:52.638983Z", "is_active": true }, { "id": 877, "french_word": "porte-documents", "russian_word": "папка для документов", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Document holder", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.649029Z", "updated_at": "2026-01-17T18:41:52.649042Z", "is_active": true }, { "id": 874, "french_word": "sac de voyage", "russian_word": "дорожная сумка", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Travel bag", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.633319Z", "updated_at": "2026-01-17T18:41:52.633330Z", "is_active": true }, { "id": 873, "french_word": "sac à dos", "russian_word": "рюкзак", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Backpack", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.628197Z", "updated_at": "2026-01-17T18:41:52.628209Z", "is_active": true }, { "id": 872, "french_word": "valise", "russian_word": "чемодан", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Suitcase", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.623304Z", "updated_at": "2026-01-17T18:41:52.623319Z", "is_active": true } ], "steps": [ { "id": 264, "sub_level": 67, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des bagages", "description": "Bagages\n\nApprenez le vocabulaire de vocabulaire des bagages en russe.", "is_required": true, "config": { "content": "Bagages\n\nApprenez le vocabulaire de vocabulaire des bagages en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.791145Z", "updated_at": "2026-01-17T18:41:52.791167Z" }, { "id": 265, "sub_level": 67, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire des bagages avec le mode flashcard.", "min_score": 70, "level": 7, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.794951Z", "updated_at": "2026-01-17T18:41:52.794965Z" }, { "id": 266, "sub_level": 67, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire des bagages avec le mode matching.", "min_score": 70, "level": 7, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.798308Z", "updated_at": "2026-01-17T18:41:52.798321Z" }, { "id": 267, "sub_level": 67, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire des bagages avec le mode multiple_choice.", "min_score": 70, "level": 7, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.802307Z", "updated_at": "2026-01-17T18:41:52.802322Z" } ], "videos": [], "learning_cards": [ { "id": 264, "sub_level": 67, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des bagages", "description": "Bagages\n\nApprenez le vocabulaire de vocabulaire des bagages en russe.", "is_required": true, "config": { "content": "Bagages\n\nApprenez le vocabulaire de vocabulaire des bagages en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.791145Z", "updated_at": "2026-01-17T18:41:52.791167Z" } ], "exercises": [], "total_words": 7, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 7, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.782729Z", "updated_at": "2026-01-17T18:41:52.782743Z" }, { "id": 68, "level": 14, "level_display": "Voyage", "sub_level": 5, "title": "Vocabulaire de l'hébergement", "description": "Hébergement", "order": 5, "word_pairs": [ { "id": 857, "french_word": "appartement", "russian_word": "квартира", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Apartment", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.549147Z", "updated_at": "2026-01-17T18:41:52.549157Z", "is_active": true }, { "id": 862, "french_word": "ascenseur", "russian_word": "лифт", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Elevator", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.573362Z", "updated_at": "2026-01-17T18:41:52.573373Z", "is_active": true }, { "id": 855, "french_word": "auberge", "russian_word": "гостиница", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Inn", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.539343Z", "updated_at": "2026-01-17T18:41:52.539354Z", "is_active": true }, { "id": 858, "french_word": "chambre", "russian_word": "номер", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Room", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.553876Z", "updated_at": "2026-01-17T18:41:52.553893Z", "is_active": true }, { "id": 861, "french_word": "clé", "russian_word": "ключ", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Key", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.568563Z", "updated_at": "2026-01-17T18:41:52.568574Z", "is_active": true }, { "id": 854, "french_word": "hôtel", "russian_word": "отель", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Hotel", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.534193Z", "updated_at": "2026-01-17T18:41:52.534205Z", "is_active": true }, { "id": 856, "french_word": "pension", "russian_word": "пансион", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Guesthouse", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.544359Z", "updated_at": "2026-01-17T18:41:52.544369Z", "is_active": true }, { "id": 859, "french_word": "réception", "russian_word": "ресепшн", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Reception", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.558936Z", "updated_at": "2026-01-17T18:41:52.558946Z", "is_active": true }, { "id": 860, "french_word": "réceptionniste", "russian_word": "администратор", "category": "travel", "category_display": "Travel", "level": 7, "level_display": "Voyage", "comment": "Receptionist", "tags": [ { "id": 24, "name": "travel", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.475137Z", "updated_at": "2026-01-17T18:41:52.475152Z" } ], "created_at": "2026-01-17T18:41:52.563764Z", "updated_at": "2026-01-17T18:41:52.563775Z", "is_active": true } ], "steps": [ { "id": 268, "sub_level": 68, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de l'hébergement", "description": "Hébergement\n\nApprenez le vocabulaire de vocabulaire de l'hébergement en russe.", "is_required": true, "config": { "content": "Hébergement\n\nApprenez le vocabulaire de vocabulaire de l'hébergement en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.814935Z", "updated_at": "2026-01-17T18:41:52.814961Z" }, { "id": 269, "sub_level": 68, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'hébergement avec le mode flashcard.", "min_score": 70, "level": 7, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.818947Z", "updated_at": "2026-01-17T18:41:52.818965Z" }, { "id": 270, "sub_level": 68, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'hébergement avec le mode matching.", "min_score": 70, "level": 7, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.822826Z", "updated_at": "2026-01-17T18:41:52.822841Z" }, { "id": 271, "sub_level": 68, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'hébergement avec le mode multiple_choice.", "min_score": 70, "level": 7, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.825951Z", "updated_at": "2026-01-17T18:41:52.825964Z" } ], "videos": [], "learning_cards": [ { "id": 268, "sub_level": 68, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de l'hébergement", "description": "Hébergement\n\nApprenez le vocabulaire de vocabulaire de l'hébergement en russe.", "is_required": true, "config": { "content": "Hébergement\n\nApprenez le vocabulaire de vocabulaire de l'hébergement en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:52.814935Z", "updated_at": "2026-01-17T18:41:52.814961Z" } ], "exercises": [], "total_words": 9, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 9, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:52.805180Z", "updated_at": "2026-01-17T18:41:52.805196Z" }, { "id": 69, "level": 15, "level_display": "Affaires", "sub_level": 1, "title": "Vocabulaire de l'entreprise et du bureau", "description": "Entreprise et bureau", "order": 1, "word_pairs": [ { "id": 886, "french_word": "bureau", "russian_word": "офис", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Office", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.839524Z", "updated_at": "2026-01-17T18:41:52.839539Z", "is_active": true }, { "id": 899, "french_word": "chaise", "russian_word": "стул", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Chair", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.911239Z", "updated_at": "2026-01-17T18:41:52.911250Z", "is_active": true }, { "id": 897, "french_word": "clavier", "russian_word": "клавиатура", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Keyboard", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.900822Z", "updated_at": "2026-01-17T18:41:52.900833Z", "is_active": true }, { "id": 893, "french_word": "courrier", "russian_word": "почта", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Mail", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.879356Z", "updated_at": "2026-01-17T18:41:52.879388Z", "is_active": true }, { "id": 901, "french_word": "document", "russian_word": "документ", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Document", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.931559Z", "updated_at": "2026-01-17T18:41:52.931570Z", "is_active": true }, { "id": 900, "french_word": "dossier", "russian_word": "папка", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Folder", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.926904Z", "updated_at": "2026-01-17T18:41:52.926914Z", "is_active": true }, { "id": 894, "french_word": "email", "russian_word": "электронная почта", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Email", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.884965Z", "updated_at": "2026-01-17T18:41:52.884985Z", "is_active": true }, { "id": 885, "french_word": "entreprise", "russian_word": "компания", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Company", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.834602Z", "updated_at": "2026-01-17T18:41:52.834612Z", "is_active": true }, { "id": 895, "french_word": "fax", "russian_word": "факс", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Fax", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.890269Z", "updated_at": "2026-01-17T18:41:52.890285Z", "is_active": true }, { "id": 896, "french_word": "imprimante", "russian_word": "принтер", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Printer", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.895475Z", "updated_at": "2026-01-17T18:41:52.895488Z", "is_active": true }, { "id": 891, "french_word": "ordinateur", "russian_word": "компьютер", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Computer", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.867289Z", "updated_at": "2026-01-17T18:41:52.867319Z", "is_active": true }, { "id": 889, "french_word": "organisation", "russian_word": "организация", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Organization", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.855234Z", "updated_at": "2026-01-17T18:41:52.855262Z", "is_active": true }, { "id": 902, "french_word": "papier", "russian_word": "бумага", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Paper", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.936306Z", "updated_at": "2026-01-17T18:41:52.936319Z", "is_active": true }, { "id": 890, "french_word": "salle de réunion", "russian_word": "переговорная", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Meeting room", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.861258Z", "updated_at": "2026-01-17T18:41:52.861290Z", "is_active": true }, { "id": 888, "french_word": "société", "russian_word": "общество", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Company", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.849732Z", "updated_at": "2026-01-17T18:41:52.849743Z", "is_active": true }, { "id": 438, "french_word": "table", "russian_word": "стол", "category": "business", "category_display": "Business", "level": 7, "level_display": "Declensions & Cases", "comment": "Table", "tags": [ { "id": 7, "name": "nominative", "category": "case", "category_display": "Case (Declension)", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:46.144909Z", "updated_at": "2026-01-17T18:41:46.144920Z" }, { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" }, { "id": 5, "name": "singular", "category": "number", "category_display": "Number", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:46.139686Z", "updated_at": "2026-01-17T18:41:46.139698Z" } ], "created_at": "2026-01-17T18:41:48.728052Z", "updated_at": "2026-01-17T18:41:52.916501Z", "is_active": true }, { "id": 887, "french_word": "travail", "russian_word": "работа", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Work", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.844737Z", "updated_at": "2026-01-17T18:41:52.844752Z", "is_active": true }, { "id": 892, "french_word": "téléphone", "russian_word": "телефон", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Phone", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.873347Z", "updated_at": "2026-01-17T18:41:52.873382Z", "is_active": true }, { "id": 898, "french_word": "écran", "russian_word": "экран", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Screen", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.906085Z", "updated_at": "2026-01-17T18:41:52.906096Z", "is_active": true } ], "steps": [ { "id": 272, "sub_level": 69, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de l'entreprise et du bureau", "description": "Entreprise et bureau\n\nApprenez le vocabulaire de vocabulaire de l'entreprise et du bureau en russe.", "is_required": true, "config": { "content": "Entreprise et bureau\n\nApprenez le vocabulaire de vocabulaire de l'entreprise et du bureau en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.228483Z", "updated_at": "2026-01-17T18:41:53.228496Z" }, { "id": 273, "sub_level": 69, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'entreprise et du bureau avec le mode flashcard.", "min_score": 70, "level": 8, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.231800Z", "updated_at": "2026-01-17T18:41:53.231810Z" }, { "id": 274, "sub_level": 69, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'entreprise et du bureau avec le mode matching.", "min_score": 70, "level": 8, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.234755Z", "updated_at": "2026-01-17T18:41:53.234765Z" }, { "id": 275, "sub_level": 69, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire de l'entreprise et du bureau avec le mode multiple_choice.", "min_score": 70, "level": 8, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.237682Z", "updated_at": "2026-01-17T18:41:53.237692Z" } ], "videos": [], "learning_cards": [ { "id": 272, "sub_level": 69, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de l'entreprise et du bureau", "description": "Entreprise et bureau\n\nApprenez le vocabulaire de vocabulaire de l'entreprise et du bureau en russe.", "is_required": true, "config": { "content": "Entreprise et bureau\n\nApprenez le vocabulaire de vocabulaire de l'entreprise et du bureau en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.228483Z", "updated_at": "2026-01-17T18:41:53.228496Z" } ], "exercises": [], "total_words": 19, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 19, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.220148Z", "updated_at": "2026-01-17T18:41:53.220170Z" }, { "id": 70, "level": 15, "level_display": "Affaires", "sub_level": 2, "title": "Vocabulaire du personnel", "description": "Personnel", "order": 2, "word_pairs": [ { "id": 930, "french_word": "assistant", "russian_word": "ассистент", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Assistant", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.079582Z", "updated_at": "2026-01-17T18:41:53.079592Z", "is_active": true }, { "id": 931, "french_word": "assistante", "russian_word": "ассистентка", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Assistant", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.084288Z", "updated_at": "2026-01-17T18:41:53.084299Z", "is_active": true }, { "id": 927, "french_word": "collègue", "russian_word": "коллега", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Colleague", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.064605Z", "updated_at": "2026-01-17T18:41:53.064616Z", "is_active": true }, { "id": 928, "french_word": "collègues", "russian_word": "коллеги", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Colleagues", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.069949Z", "updated_at": "2026-01-17T18:41:53.069959Z", "is_active": true }, { "id": 923, "french_word": "employé", "russian_word": "работник", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Employee", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.044701Z", "updated_at": "2026-01-17T18:41:53.044711Z", "is_active": true }, { "id": 924, "french_word": "employée", "russian_word": "работница", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Employee", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.049827Z", "updated_at": "2026-01-17T18:41:53.049840Z", "is_active": true }, { "id": 926, "french_word": "employées", "russian_word": "работницы", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Employees", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.059650Z", "updated_at": "2026-01-17T18:41:53.059661Z", "is_active": true }, { "id": 925, "french_word": "employés", "russian_word": "работники", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Employees", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.054672Z", "updated_at": "2026-01-17T18:41:53.054682Z", "is_active": true }, { "id": 934, "french_word": "ouvrier", "russian_word": "рабочий", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Worker", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.098511Z", "updated_at": "2026-01-17T18:41:53.098523Z", "is_active": true }, { "id": 936, "french_word": "ouvriers", "russian_word": "рабочие", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Workers", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.108824Z", "updated_at": "2026-01-17T18:41:53.108835Z", "is_active": true }, { "id": 935, "french_word": "ouvrière", "russian_word": "рабочая", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Worker", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.103461Z", "updated_at": "2026-01-17T18:41:53.103472Z", "is_active": true }, { "id": 937, "french_word": "ouvrières", "russian_word": "рабочие", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Workers", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.113485Z", "updated_at": "2026-01-17T18:41:53.113495Z", "is_active": true }, { "id": 922, "french_word": "salarié", "russian_word": "работник", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Employee", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.039641Z", "updated_at": "2026-01-17T18:41:53.039656Z", "is_active": true }, { "id": 929, "french_word": "secrétaire", "russian_word": "секретарь", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Secretary", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.075000Z", "updated_at": "2026-01-17T18:41:53.075013Z", "is_active": true }, { "id": 932, "french_word": "stagiaire", "russian_word": "стажёр", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Intern", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.089032Z", "updated_at": "2026-01-17T18:41:53.089045Z", "is_active": true }, { "id": 933, "french_word": "stagiaires", "russian_word": "стажёры", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Interns", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.093803Z", "updated_at": "2026-01-17T18:41:53.093814Z", "is_active": true }, { "id": 938, "french_word": "technicien", "russian_word": "техник", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Technician", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.118153Z", "updated_at": "2026-01-17T18:41:53.118164Z", "is_active": true }, { "id": 939, "french_word": "technicienne", "russian_word": "техник", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Technician", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.123006Z", "updated_at": "2026-01-17T18:41:53.123020Z", "is_active": true } ], "steps": [ { "id": 276, "sub_level": 70, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire du personnel", "description": "Personnel\n\nApprenez le vocabulaire de vocabulaire du personnel en russe.", "is_required": true, "config": { "content": "Personnel\n\nApprenez le vocabulaire de vocabulaire du personnel en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.248139Z", "updated_at": "2026-01-17T18:41:53.248154Z" }, { "id": 277, "sub_level": 70, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire du personnel avec le mode flashcard.", "min_score": 70, "level": 8, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.251705Z", "updated_at": "2026-01-17T18:41:53.251718Z" }, { "id": 278, "sub_level": 70, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire du personnel avec le mode matching.", "min_score": 70, "level": 8, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.254816Z", "updated_at": "2026-01-17T18:41:53.254829Z" }, { "id": 279, "sub_level": 70, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire du personnel avec le mode multiple_choice.", "min_score": 70, "level": 8, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.258542Z", "updated_at": "2026-01-17T18:41:53.258553Z" } ], "videos": [], "learning_cards": [ { "id": 276, "sub_level": 70, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire du personnel", "description": "Personnel\n\nApprenez le vocabulaire de vocabulaire du personnel en russe.", "is_required": true, "config": { "content": "Personnel\n\nApprenez le vocabulaire de vocabulaire du personnel en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.248139Z", "updated_at": "2026-01-17T18:41:53.248154Z" } ], "exercises": [], "total_words": 18, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 18, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.240194Z", "updated_at": "2026-01-17T18:41:53.240205Z" }, { "id": 71, "level": 15, "level_display": "Affaires", "sub_level": 3, "title": "Vocabulaire de la direction", "description": "Direction", "order": 3, "word_pairs": [ { "id": 951, "french_word": "PDG", "russian_word": "генеральный директор", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "CEO", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.183894Z", "updated_at": "2026-01-17T18:41:53.183907Z", "is_active": true }, { "id": 952, "french_word": "cadre", "russian_word": "руководитель", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Executive", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.188896Z", "updated_at": "2026-01-17T18:41:53.188908Z", "is_active": true }, { "id": 953, "french_word": "cadres", "russian_word": "руководители", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Executives", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.193767Z", "updated_at": "2026-01-17T18:41:53.193777Z", "is_active": true }, { "id": 940, "french_word": "chef", "russian_word": "директор", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Director", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.127878Z", "updated_at": "2026-01-17T18:41:53.127890Z", "is_active": true }, { "id": 956, "french_word": "chef de projet", "russian_word": "руководитель проекта", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Project manager", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.208971Z", "updated_at": "2026-01-17T18:41:53.208983Z", "is_active": true }, { "id": 941, "french_word": "directeur", "russian_word": "директор", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Director", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.132808Z", "updated_at": "2026-01-17T18:41:53.132818Z", "is_active": true }, { "id": 943, "french_word": "directeurs", "russian_word": "директора", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Directors", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.143262Z", "updated_at": "2026-01-17T18:41:53.143272Z", "is_active": true }, { "id": 942, "french_word": "directrice", "russian_word": "директор", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Director", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.138240Z", "updated_at": "2026-01-17T18:41:53.138251Z", "is_active": true }, { "id": 944, "french_word": "directrices", "russian_word": "директорши", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Directors", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.148135Z", "updated_at": "2026-01-17T18:41:53.148148Z", "is_active": true }, { "id": 945, "french_word": "manager", "russian_word": "менеджер", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Manager", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.153236Z", "updated_at": "2026-01-17T18:41:53.153246Z", "is_active": true }, { "id": 946, "french_word": "managers", "russian_word": "менеджеры", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Managers", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.158042Z", "updated_at": "2026-01-17T18:41:53.158060Z", "is_active": true }, { "id": 947, "french_word": "président", "russian_word": "президент", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "President", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.163087Z", "updated_at": "2026-01-17T18:41:53.163099Z", "is_active": true }, { "id": 948, "french_word": "présidente", "russian_word": "президент", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "President", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.168306Z", "updated_at": "2026-01-17T18:41:53.168319Z", "is_active": true }, { "id": 957, "french_word": "responsable", "russian_word": "ответственный", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Manager", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.214071Z", "updated_at": "2026-01-17T18:41:53.214083Z", "is_active": true }, { "id": 954, "french_word": "superviseur", "russian_word": "супервайзер", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Supervisor", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.198763Z", "updated_at": "2026-01-17T18:41:53.198776Z", "is_active": true }, { "id": 955, "french_word": "superviseuse", "russian_word": "супервайзер", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Supervisor", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.203858Z", "updated_at": "2026-01-17T18:41:53.203870Z", "is_active": true }, { "id": 949, "french_word": "vice-président", "russian_word": "вице-президент", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Vice President", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.173295Z", "updated_at": "2026-01-17T18:41:53.173306Z", "is_active": true }, { "id": 950, "french_word": "vice-présidente", "russian_word": "вице-президент", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Vice President", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.178959Z", "updated_at": "2026-01-17T18:41:53.178972Z", "is_active": true } ], "steps": [ { "id": 280, "sub_level": 71, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de la direction", "description": "Direction\n\nApprenez le vocabulaire de vocabulaire de la direction en russe.", "is_required": true, "config": { "content": "Direction\n\nApprenez le vocabulaire de vocabulaire de la direction en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.268373Z", "updated_at": "2026-01-17T18:41:53.268384Z" }, { "id": 281, "sub_level": 71, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire de la direction avec le mode flashcard.", "min_score": 70, "level": 8, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.272074Z", "updated_at": "2026-01-17T18:41:53.272088Z" }, { "id": 282, "sub_level": 71, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire de la direction avec le mode matching.", "min_score": 70, "level": 8, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.275562Z", "updated_at": "2026-01-17T18:41:53.275579Z" }, { "id": 283, "sub_level": 71, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire de la direction avec le mode multiple_choice.", "min_score": 70, "level": 8, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.278802Z", "updated_at": "2026-01-17T18:41:53.278812Z" } ], "videos": [], "learning_cards": [ { "id": 280, "sub_level": 71, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire de la direction", "description": "Direction\n\nApprenez le vocabulaire de vocabulaire de la direction en russe.", "is_required": true, "config": { "content": "Direction\n\nApprenez le vocabulaire de vocabulaire de la direction en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.268373Z", "updated_at": "2026-01-17T18:41:53.268384Z" } ], "exercises": [], "total_words": 18, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 18, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.261074Z", "updated_at": "2026-01-17T18:41:53.261086Z" }, { "id": 72, "level": 15, "level_display": "Affaires", "sub_level": 4, "title": "Vocabulaire des relations professionnelles", "description": "Relations professionnelles", "order": 4, "word_pairs": [ { "id": 912, "french_word": "accord", "russian_word": "соглашение", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Agreement", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.987155Z", "updated_at": "2026-01-17T18:41:52.987173Z", "is_active": true }, { "id": 921, "french_word": "budget", "russian_word": "бюджет", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Budget", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.034404Z", "updated_at": "2026-01-17T18:41:53.034420Z", "is_active": true }, { "id": 904, "french_word": "client", "russian_word": "клиент", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Client", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.946214Z", "updated_at": "2026-01-17T18:41:52.946224Z", "is_active": true }, { "id": 910, "french_word": "collaboration", "russian_word": "сотрудничество", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Collaboration", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.976161Z", "updated_at": "2026-01-17T18:41:52.976172Z", "is_active": true }, { "id": 905, "french_word": "contrat", "russian_word": "контракт", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Contract", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.951631Z", "updated_at": "2026-01-17T18:41:52.951641Z", "is_active": true }, { "id": 919, "french_word": "délai", "russian_word": "срок", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Deadline", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.023571Z", "updated_at": "2026-01-17T18:41:53.023591Z", "is_active": true }, { "id": 920, "french_word": "délais", "russian_word": "сроки", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Deadlines", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.028986Z", "updated_at": "2026-01-17T18:41:53.029005Z", "is_active": true }, { "id": 908, "french_word": "fournisseur", "russian_word": "поставщик", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Supplier", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.966188Z", "updated_at": "2026-01-17T18:41:52.966201Z", "is_active": true }, { "id": 909, "french_word": "fournisseurs", "russian_word": "поставщики", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Suppliers", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.971016Z", "updated_at": "2026-01-17T18:41:52.971030Z", "is_active": true }, { "id": 915, "french_word": "mission", "russian_word": "миссия", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Mission", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.002644Z", "updated_at": "2026-01-17T18:41:53.002655Z", "is_active": true }, { "id": 916, "french_word": "missions", "russian_word": "миссии", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Missions", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.007938Z", "updated_at": "2026-01-17T18:41:53.007951Z", "is_active": true }, { "id": 911, "french_word": "négociation", "russian_word": "переговоры", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Negotiation", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.981466Z", "updated_at": "2026-01-17T18:41:52.981477Z", "is_active": true }, { "id": 906, "french_word": "partenaire", "russian_word": "партнёр", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Partner", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.956379Z", "updated_at": "2026-01-17T18:41:52.956390Z", "is_active": true }, { "id": 907, "french_word": "partenaires", "russian_word": "партнёры", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Partners", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.961250Z", "updated_at": "2026-01-17T18:41:52.961261Z", "is_active": true }, { "id": 913, "french_word": "projet", "russian_word": "проект", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Project", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.992388Z", "updated_at": "2026-01-17T18:41:52.992407Z", "is_active": true }, { "id": 914, "french_word": "projets", "russian_word": "проекты", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Projects", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.997707Z", "updated_at": "2026-01-17T18:41:52.997726Z", "is_active": true }, { "id": 903, "french_word": "réunion", "russian_word": "встреча", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Meeting", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:52.941153Z", "updated_at": "2026-01-17T18:41:52.941167Z", "is_active": true }, { "id": 917, "french_word": "tâche", "russian_word": "задача", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Task", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.012829Z", "updated_at": "2026-01-17T18:41:53.012842Z", "is_active": true }, { "id": 918, "french_word": "tâches", "russian_word": "задачи", "category": "business", "category_display": "Business", "level": 8, "level_display": "Affaires", "comment": "Tasks", "tags": [ { "id": 25, "name": "business", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:52.832135Z", "updated_at": "2026-01-17T18:41:52.832147Z" } ], "created_at": "2026-01-17T18:41:53.018039Z", "updated_at": "2026-01-17T18:41:53.018059Z", "is_active": true } ], "steps": [ { "id": 284, "sub_level": 72, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des relations professionnelles", "description": "Relations professionnelles\n\nApprenez le vocabulaire de vocabulaire des relations professionnelles en russe.", "is_required": true, "config": { "content": "Relations professionnelles\n\nApprenez le vocabulaire de vocabulaire des relations professionnelles en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.289393Z", "updated_at": "2026-01-17T18:41:53.289410Z" }, { "id": 285, "sub_level": 72, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez le vocabulaire de vocabulaire des relations professionnelles avec le mode flashcard.", "min_score": 70, "level": 8, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.292904Z", "updated_at": "2026-01-17T18:41:53.292915Z" }, { "id": 286, "sub_level": 72, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez le vocabulaire de vocabulaire des relations professionnelles avec le mode matching.", "min_score": 70, "level": 8, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.296084Z", "updated_at": "2026-01-17T18:41:53.296095Z" }, { "id": 287, "sub_level": 72, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez le vocabulaire de vocabulaire des relations professionnelles avec le mode multiple_choice.", "min_score": 70, "level": 8, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.299225Z", "updated_at": "2026-01-17T18:41:53.299235Z" } ], "videos": [], "learning_cards": [ { "id": 284, "sub_level": 72, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Vocabulaire des relations professionnelles", "description": "Relations professionnelles\n\nApprenez le vocabulaire de vocabulaire des relations professionnelles en russe.", "is_required": true, "config": { "content": "Relations professionnelles\n\nApprenez le vocabulaire de vocabulaire des relations professionnelles en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.289393Z", "updated_at": "2026-01-17T18:41:53.289410Z" } ], "exercises": [], "total_words": 19, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 19, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.281400Z", "updated_at": "2026-01-17T18:41:53.281416Z" }, { "id": 73, "level": 16, "level_display": "Pronoms", "sub_level": 1, "title": "Pronoms personnels au sujet", "description": "Pronoms personnels - sujet", "order": 1, "word_pairs": [ { "id": 961, "french_word": "elle", "russian_word": "она", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "She", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.322671Z", "updated_at": "2026-01-17T18:41:53.322686Z", "is_active": true }, { "id": 969, "french_word": "elle", "russian_word": "ей", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Her", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.363837Z", "updated_at": "2026-01-17T18:41:53.363850Z", "is_active": true }, { "id": 965, "french_word": "elles", "russian_word": "они", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "They (feminine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.343196Z", "updated_at": "2026-01-17T18:41:53.343213Z", "is_active": true }, { "id": 960, "french_word": "il", "russian_word": "он", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "He", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.317702Z", "updated_at": "2026-01-17T18:41:53.317714Z", "is_active": true }, { "id": 964, "french_word": "ils", "russian_word": "они", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "They (masculine/mixed)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.338009Z", "updated_at": "2026-01-17T18:41:53.338026Z", "is_active": true }, { "id": 958, "french_word": "je", "russian_word": "я", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "I", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.307930Z", "updated_at": "2026-01-17T18:41:53.307943Z", "is_active": true }, { "id": 962, "french_word": "nous", "russian_word": "мы", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "We", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.327782Z", "updated_at": "2026-01-17T18:41:53.327792Z", "is_active": true }, { "id": 970, "french_word": "nous", "russian_word": "нас", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Us", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.369171Z", "updated_at": "2026-01-17T18:41:53.369186Z", "is_active": true }, { "id": 959, "french_word": "tu", "russian_word": "ты", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "You (singular, informal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.312734Z", "updated_at": "2026-01-17T18:41:53.312744Z", "is_active": true }, { "id": 963, "french_word": "vous", "russian_word": "вы", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "You (plural/formal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.332748Z", "updated_at": "2026-01-17T18:41:53.332760Z", "is_active": true }, { "id": 971, "french_word": "vous", "russian_word": "вас", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "You (plural/formal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.374351Z", "updated_at": "2026-01-17T18:41:53.374362Z", "is_active": true } ], "steps": [ { "id": 288, "sub_level": 73, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms personnels au sujet", "description": "Pronoms personnels - sujet\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms personnels - sujet\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.500314Z", "updated_at": "2026-01-17T18:41:53.500327Z" }, { "id": 289, "sub_level": 73, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les pronoms avec le mode flashcard.", "min_score": 70, "level": 9, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.503879Z", "updated_at": "2026-01-17T18:41:53.503889Z" }, { "id": 290, "sub_level": 73, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les pronoms avec le mode matching.", "min_score": 70, "level": 9, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.506961Z", "updated_at": "2026-01-17T18:41:53.506971Z" }, { "id": 291, "sub_level": 73, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les pronoms avec le mode multiple_choice.", "min_score": 70, "level": 9, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.510082Z", "updated_at": "2026-01-17T18:41:53.510092Z" } ], "videos": [], "learning_cards": [ { "id": 288, "sub_level": 73, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms personnels au sujet", "description": "Pronoms personnels - sujet\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms personnels - sujet\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.500314Z", "updated_at": "2026-01-17T18:41:53.500327Z" } ], "exercises": [], "total_words": 11, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 11, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.493090Z", "updated_at": "2026-01-17T18:41:53.493100Z" }, { "id": 74, "level": 16, "level_display": "Pronoms", "sub_level": 2, "title": "Pronoms personnels à l'objet", "description": "Pronoms personnels - objet", "order": 2, "word_pairs": [ { "id": 961, "french_word": "elle", "russian_word": "она", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "She", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.322671Z", "updated_at": "2026-01-17T18:41:53.322686Z", "is_active": true }, { "id": 969, "french_word": "elle", "russian_word": "ей", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Her", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.363837Z", "updated_at": "2026-01-17T18:41:53.363850Z", "is_active": true }, { "id": 972, "french_word": "eux", "russian_word": "их", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Them", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.379587Z", "updated_at": "2026-01-17T18:41:53.379597Z", "is_active": true }, { "id": 968, "french_word": "lui", "russian_word": "ему", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Him", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.358678Z", "updated_at": "2026-01-17T18:41:53.358692Z", "is_active": true }, { "id": 966, "french_word": "moi", "russian_word": "мне", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Me", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.348335Z", "updated_at": "2026-01-17T18:41:53.348346Z", "is_active": true }, { "id": 962, "french_word": "nous", "russian_word": "мы", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "We", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.327782Z", "updated_at": "2026-01-17T18:41:53.327792Z", "is_active": true }, { "id": 970, "french_word": "nous", "russian_word": "нас", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Us", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.369171Z", "updated_at": "2026-01-17T18:41:53.369186Z", "is_active": true }, { "id": 967, "french_word": "toi", "russian_word": "тебе", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "You (informal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.353414Z", "updated_at": "2026-01-17T18:41:53.353435Z", "is_active": true }, { "id": 963, "french_word": "vous", "russian_word": "вы", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "You (plural/formal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.332748Z", "updated_at": "2026-01-17T18:41:53.332760Z", "is_active": true }, { "id": 971, "french_word": "vous", "russian_word": "вас", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "You (plural/formal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.374351Z", "updated_at": "2026-01-17T18:41:53.374362Z", "is_active": true } ], "steps": [ { "id": 292, "sub_level": 74, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms personnels à l'objet", "description": "Pronoms personnels - objet\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms personnels - objet\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.520247Z", "updated_at": "2026-01-17T18:41:53.520258Z" }, { "id": 293, "sub_level": 74, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les pronoms avec le mode flashcard.", "min_score": 70, "level": 9, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.523782Z", "updated_at": "2026-01-17T18:41:53.523793Z" }, { "id": 294, "sub_level": 74, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les pronoms avec le mode matching.", "min_score": 70, "level": 9, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.526961Z", "updated_at": "2026-01-17T18:41:53.526972Z" }, { "id": 295, "sub_level": 74, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les pronoms avec le mode multiple_choice.", "min_score": 70, "level": 9, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.530187Z", "updated_at": "2026-01-17T18:41:53.530197Z" } ], "videos": [], "learning_cards": [ { "id": 292, "sub_level": 74, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms personnels à l'objet", "description": "Pronoms personnels - objet\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms personnels - objet\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.520247Z", "updated_at": "2026-01-17T18:41:53.520258Z" } ], "exercises": [], "total_words": 10, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 10, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.513194Z", "updated_at": "2026-01-17T18:41:53.513204Z" }, { "id": 75, "level": 16, "level_display": "Pronoms", "sub_level": 3, "title": "Pronoms possessifs de la première personne", "description": "Pronoms possessifs - 1ère personne", "order": 3, "word_pairs": [ { "id": 974, "french_word": "ma", "russian_word": "моя", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "My (feminine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.389731Z", "updated_at": "2026-01-17T18:41:53.389743Z", "is_active": true }, { "id": 975, "french_word": "mes", "russian_word": "мои", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "My (plural)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.394890Z", "updated_at": "2026-01-17T18:41:53.394902Z", "is_active": true }, { "id": 973, "french_word": "mon", "russian_word": "мой", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "My (masculine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.384687Z", "updated_at": "2026-01-17T18:41:53.384700Z", "is_active": true } ], "steps": [ { "id": 296, "sub_level": 75, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms possessifs de la première personne", "description": "Pronoms possessifs - 1ère personne\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms possessifs - 1ère personne\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.540115Z", "updated_at": "2026-01-17T18:41:53.540126Z" }, { "id": 297, "sub_level": 75, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les pronoms avec le mode flashcard.", "min_score": 70, "level": 9, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.543633Z", "updated_at": "2026-01-17T18:41:53.543643Z" }, { "id": 298, "sub_level": 75, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les pronoms avec le mode matching.", "min_score": 70, "level": 9, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.546781Z", "updated_at": "2026-01-17T18:41:53.546791Z" }, { "id": 299, "sub_level": 75, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les pronoms avec le mode multiple_choice.", "min_score": 70, "level": 9, "sub_level": 3 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.549847Z", "updated_at": "2026-01-17T18:41:53.549857Z" } ], "videos": [], "learning_cards": [ { "id": 296, "sub_level": 75, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms possessifs de la première personne", "description": "Pronoms possessifs - 1ère personne\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms possessifs - 1ère personne\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.540115Z", "updated_at": "2026-01-17T18:41:53.540126Z" } ], "exercises": [], "total_words": 3, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 3, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.532892Z", "updated_at": "2026-01-17T18:41:53.532905Z" }, { "id": 76, "level": 16, "level_display": "Pronoms", "sub_level": 4, "title": "Pronoms possessifs de la deuxième personne", "description": "Pronoms possessifs - 2ème personne", "order": 4, "word_pairs": [ { "id": 977, "french_word": "ta", "russian_word": "твоя", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Your (feminine, informal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.405248Z", "updated_at": "2026-01-17T18:41:53.405258Z", "is_active": true }, { "id": 978, "french_word": "tes", "russian_word": "твои", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Your (plural, informal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.410325Z", "updated_at": "2026-01-17T18:41:53.410335Z", "is_active": true }, { "id": 976, "french_word": "ton", "russian_word": "твой", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Your (masculine, informal)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.400142Z", "updated_at": "2026-01-17T18:41:53.400154Z", "is_active": true }, { "id": 985, "french_word": "vos", "russian_word": "ваши", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Your (formal/plural)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.444583Z", "updated_at": "2026-01-17T18:41:53.444593Z", "is_active": true }, { "id": 984, "french_word": "votre", "russian_word": "ваш", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Your (formal/plural)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.439945Z", "updated_at": "2026-01-17T18:41:53.439954Z", "is_active": true } ], "steps": [ { "id": 300, "sub_level": 76, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms possessifs de la deuxième personne", "description": "Pronoms possessifs - 2ème personne\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms possessifs - 2ème personne\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.559634Z", "updated_at": "2026-01-17T18:41:53.559645Z" }, { "id": 301, "sub_level": 76, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les pronoms avec le mode flashcard.", "min_score": 70, "level": 9, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.563097Z", "updated_at": "2026-01-17T18:41:53.563107Z" }, { "id": 302, "sub_level": 76, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les pronoms avec le mode matching.", "min_score": 70, "level": 9, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.566311Z", "updated_at": "2026-01-17T18:41:53.566321Z" }, { "id": 303, "sub_level": 76, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les pronoms avec le mode multiple_choice.", "min_score": 70, "level": 9, "sub_level": 4 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.569476Z", "updated_at": "2026-01-17T18:41:53.569486Z" } ], "videos": [], "learning_cards": [ { "id": 300, "sub_level": 76, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms possessifs de la deuxième personne", "description": "Pronoms possessifs - 2ème personne\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms possessifs - 2ème personne\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.559634Z", "updated_at": "2026-01-17T18:41:53.559645Z" } ], "exercises": [], "total_words": 5, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 5, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.552468Z", "updated_at": "2026-01-17T18:41:53.552478Z" }, { "id": 77, "level": 16, "level_display": "Pronoms", "sub_level": 5, "title": "Pronoms possessifs de la troisième personne", "description": "Pronoms possessifs - 3ème personne", "order": 5, "word_pairs": [ { "id": 986, "french_word": "leur", "russian_word": "их", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Their", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.449279Z", "updated_at": "2026-01-17T18:41:53.449289Z", "is_active": true }, { "id": 987, "french_word": "leurs", "russian_word": "их", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Their (plural)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.453985Z", "updated_at": "2026-01-17T18:41:53.453998Z", "is_active": true }, { "id": 983, "french_word": "nos", "russian_word": "наши", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Our (plural)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.435350Z", "updated_at": "2026-01-17T18:41:53.435360Z", "is_active": true }, { "id": 982, "french_word": "notre", "russian_word": "наш", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Our", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.430649Z", "updated_at": "2026-01-17T18:41:53.430660Z", "is_active": true }, { "id": 980, "french_word": "sa", "russian_word": "её", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "His/Her/Its (feminine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.419762Z", "updated_at": "2026-01-17T18:41:53.419772Z", "is_active": true }, { "id": 981, "french_word": "ses", "russian_word": "его", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "His/Her/Its (plural)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.425119Z", "updated_at": "2026-01-17T18:41:53.425129Z", "is_active": true }, { "id": 979, "french_word": "son", "russian_word": "его", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "His/Her/Its (masculine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.414959Z", "updated_at": "2026-01-17T18:41:53.414971Z", "is_active": true } ], "steps": [ { "id": 304, "sub_level": 77, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms possessifs de la troisième personne", "description": "Pronoms possessifs - 3ème personne\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms possessifs - 3ème personne\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.580383Z", "updated_at": "2026-01-17T18:41:53.580394Z" }, { "id": 305, "sub_level": 77, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les pronoms avec le mode flashcard.", "min_score": 70, "level": 9, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.583608Z", "updated_at": "2026-01-17T18:41:53.583619Z" }, { "id": 306, "sub_level": 77, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les pronoms avec le mode matching.", "min_score": 70, "level": 9, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.587368Z", "updated_at": "2026-01-17T18:41:53.587379Z" }, { "id": 307, "sub_level": 77, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les pronoms avec le mode multiple_choice.", "min_score": 70, "level": 9, "sub_level": 5 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.590491Z", "updated_at": "2026-01-17T18:41:53.590501Z" } ], "videos": [], "learning_cards": [ { "id": 304, "sub_level": 77, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms possessifs de la troisième personne", "description": "Pronoms possessifs - 3ème personne\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms possessifs - 3ème personne\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.580383Z", "updated_at": "2026-01-17T18:41:53.580394Z" } ], "exercises": [], "total_words": 7, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 7, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.572158Z", "updated_at": "2026-01-17T18:41:53.572170Z" }, { "id": 78, "level": 16, "level_display": "Pronoms", "sub_level": 6, "title": "Pronoms démonstratifs", "description": "Pronoms démonstratifs", "order": 6, "word_pairs": [ { "id": 988, "french_word": "ce", "russian_word": "это", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "This/That (masculine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.458799Z", "updated_at": "2026-01-17T18:41:53.458811Z", "is_active": true }, { "id": 992, "french_word": "celle", "russian_word": "та", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "That one (feminine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.478013Z", "updated_at": "2026-01-17T18:41:53.478025Z", "is_active": true }, { "id": 994, "french_word": "celles", "russian_word": "те", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Those (feminine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.487578Z", "updated_at": "2026-01-17T18:41:53.487591Z", "is_active": true }, { "id": 991, "french_word": "celui", "russian_word": "тот", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "That one (masculine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.473186Z", "updated_at": "2026-01-17T18:41:53.473196Z", "is_active": true }, { "id": 990, "french_word": "ces", "russian_word": "эти", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "These/Those", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.468305Z", "updated_at": "2026-01-17T18:41:53.468315Z", "is_active": true }, { "id": 989, "french_word": "cette", "russian_word": "эта", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "This/That (feminine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.463472Z", "updated_at": "2026-01-17T18:41:53.463482Z", "is_active": true }, { "id": 993, "french_word": "ceux", "russian_word": "те", "category": "pronoun", "category_display": "Pronoun", "level": 9, "level_display": "Pronoms", "comment": "Those (masculine)", "tags": [ { "id": 26, "name": "pronoun", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.305260Z", "updated_at": "2026-01-17T18:41:53.305273Z" } ], "created_at": "2026-01-17T18:41:53.482802Z", "updated_at": "2026-01-17T18:41:53.482812Z", "is_active": true } ], "steps": [ { "id": 308, "sub_level": 78, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms démonstratifs", "description": "Pronoms démonstratifs\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms démonstratifs\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.599773Z", "updated_at": "2026-01-17T18:41:53.599784Z" }, { "id": 309, "sub_level": 78, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les pronoms avec le mode flashcard.", "min_score": 70, "level": 9, "sub_level": 6 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.602970Z", "updated_at": "2026-01-17T18:41:53.602980Z" }, { "id": 310, "sub_level": 78, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les pronoms avec le mode matching.", "min_score": 70, "level": 9, "sub_level": 6 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.605955Z", "updated_at": "2026-01-17T18:41:53.605966Z" }, { "id": 311, "sub_level": 78, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les pronoms avec le mode multiple_choice.", "min_score": 70, "level": 9, "sub_level": 6 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.609000Z", "updated_at": "2026-01-17T18:41:53.609011Z" } ], "videos": [], "learning_cards": [ { "id": 308, "sub_level": 78, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Pronoms démonstratifs", "description": "Pronoms démonstratifs\n\nApprenez les pronoms en russe.", "is_required": true, "config": { "content": "Pronoms démonstratifs\n\nApprenez les pronoms en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.599773Z", "updated_at": "2026-01-17T18:41:53.599784Z" } ], "exercises": [], "total_words": 7, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 7, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.593108Z", "updated_at": "2026-01-17T18:41:53.593121Z" }, { "id": 79, "level": 17, "level_display": "Adverbes", "sub_level": 1, "title": "Adverbes exprimant le temps", "description": "Adverbes de temps", "order": 1, "word_pairs": [ { "id": 55, "french_word": "aujourd'hui", "russian_word": "сегодня", "category": "adverb", "category_display": "Adverb", "level": 2, "level_display": "Basic Words", "comment": "Today", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:46.023034Z", "updated_at": "2026-01-17T18:41:53.629718Z", "is_active": true }, { "id": 1006, "french_word": "bientôt", "russian_word": "скоро", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Soon", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.711032Z", "updated_at": "2026-01-17T18:41:53.711051Z", "is_active": true }, { "id": 56, "french_word": "demain", "russian_word": "завтра", "category": "adverb", "category_display": "Adverb", "level": 2, "level_display": "Basic Words", "comment": "Tomorrow", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:46.025804Z", "updated_at": "2026-01-17T18:41:53.635545Z", "is_active": true }, { "id": 1004, "french_word": "déjà", "russian_word": "уже", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Already", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.698870Z", "updated_at": "2026-01-17T18:41:53.698896Z", "is_active": true }, { "id": 1005, "french_word": "encore", "russian_word": "ещё", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Still/Yet", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.705164Z", "updated_at": "2026-01-17T18:41:53.705188Z", "is_active": true }, { "id": 57, "french_word": "hier", "russian_word": "вчера", "category": "adverb", "category_display": "Adverb", "level": 2, "level_display": "Basic Words", "comment": "Yesterday", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:46.028504Z", "updated_at": "2026-01-17T18:41:53.641404Z", "is_active": true }, { "id": 351, "french_word": "maintenant", "russian_word": "сейчас", "category": "adverb", "category_display": "Adverb", "level": 5, "level_display": "Small Phrases", "comment": "Now", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:48.151919Z", "updated_at": "2026-01-17T18:41:53.617877Z", "is_active": true }, { "id": 1007, "french_word": "tard", "russian_word": "поздно", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Late", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.719678Z", "updated_at": "2026-01-17T18:41:53.719704Z", "is_active": true }, { "id": 1008, "french_word": "tôt", "russian_word": "рано", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Early", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.725599Z", "updated_at": "2026-01-17T18:41:53.725622Z", "is_active": true } ], "steps": [ { "id": 312, "sub_level": 79, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Adverbes exprimant le temps", "description": "Adverbes de temps\n\nApprenez les adverbes en russe.", "is_required": true, "config": { "content": "Adverbes de temps\n\nApprenez les adverbes en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.869903Z", "updated_at": "2026-01-17T18:41:53.869915Z" }, { "id": 313, "sub_level": 79, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les adverbes avec le mode flashcard.", "min_score": 70, "level": 10, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.873418Z", "updated_at": "2026-01-17T18:41:53.873438Z" }, { "id": 314, "sub_level": 79, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les adverbes avec le mode matching.", "min_score": 70, "level": 10, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.876625Z", "updated_at": "2026-01-17T18:41:53.876635Z" }, { "id": 315, "sub_level": 79, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les adverbes avec le mode multiple_choice.", "min_score": 70, "level": 10, "sub_level": 1 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.880016Z", "updated_at": "2026-01-17T18:41:53.880029Z" } ], "videos": [], "learning_cards": [ { "id": 312, "sub_level": 79, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Adverbes exprimant le temps", "description": "Adverbes de temps\n\nApprenez les adverbes en russe.", "is_required": true, "config": { "content": "Adverbes de temps\n\nApprenez les adverbes en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.869903Z", "updated_at": "2026-01-17T18:41:53.869915Z" } ], "exercises": [], "total_words": 9, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 9, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.862344Z", "updated_at": "2026-01-17T18:41:53.862358Z" }, { "id": 80, "level": 17, "level_display": "Adverbes", "sub_level": 2, "title": "Adverbes exprimant le lieu", "description": "Adverbes de lieu", "order": 2, "word_pairs": [ { "id": 361, "french_word": "ici", "russian_word": "здесь", "category": "adverb", "category_display": "Adverb", "level": 5, "level_display": "Small Phrases", "comment": "Here", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:48.177816Z", "updated_at": "2026-01-17T18:41:53.734257Z", "is_active": true }, { "id": 362, "french_word": "là", "russian_word": "там", "category": "adverb", "category_display": "Adverb", "level": 5, "level_display": "Small Phrases", "comment": "There", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:48.180331Z", "updated_at": "2026-01-17T18:41:53.747546Z", "is_active": true }, { "id": 1010, "french_word": "nulle part", "russian_word": "нигде", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Nowhere", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.763850Z", "updated_at": "2026-01-17T18:41:53.763875Z", "is_active": true }, { "id": 1009, "french_word": "partout", "russian_word": "везде", "category": "adverb", "category_display": "Adverb", "level": 10, "level_display": "Adverbes", "comment": "Everywhere", "tags": [ { "id": 27, "name": "adverb", "category": "category", "category_display": "category", "description": "", "is_active": true, "created_at": "2026-01-17T18:41:53.615110Z", "updated_at": "2026-01-17T18:41:53.615125Z" } ], "created_at": "2026-01-17T18:41:53.753797Z", "updated_at": "2026-01-17T18:41:53.753816Z", "is_active": true } ], "steps": [ { "id": 316, "sub_level": 80, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Adverbes exprimant le lieu", "description": "Adverbes de lieu\n\nApprenez les adverbes en russe.", "is_required": true, "config": { "content": "Adverbes de lieu\n\nApprenez les adverbes en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.890584Z", "updated_at": "2026-01-17T18:41:53.890597Z" }, { "id": 317, "sub_level": 80, "order": 2, "step_type": "game_flashcard", "step_type_display": "Game - Flashcard", "title": "Exercice 1 - Flashcard", "description": "Exercice 1 - Flashcard", "is_required": false, "config": { "game_mode": "flashcard", "instructions": "Pratiquez les adverbes avec le mode flashcard.", "min_score": 70, "level": 10, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.894289Z", "updated_at": "2026-01-17T18:41:53.894301Z" }, { "id": 318, "sub_level": 80, "order": 3, "step_type": "game_matching", "step_type_display": "Game - Matching", "title": "Exercice 2 - Matching", "description": "Exercice 2 - Matching", "is_required": false, "config": { "game_mode": "matching", "instructions": "Pratiquez les adverbes avec le mode matching.", "min_score": 70, "level": 10, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.897958Z", "updated_at": "2026-01-17T18:41:53.897973Z" }, { "id": 319, "sub_level": 80, "order": 4, "step_type": "game_multiple_choice", "step_type_display": "Game - Multiple Choice", "title": "Exercice 3 - Multiple Choice", "description": "Exercice 3 - Multiple Choice", "is_required": false, "config": { "game_mode": "multiple_choice", "instructions": "Pratiquez les adverbes avec le mode multiple_choice.", "min_score": 70, "level": 10, "sub_level": 2 }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.901805Z", "updated_at": "2026-01-17T18:41:53.901820Z" } ], "videos": [], "learning_cards": [ { "id": 316, "sub_level": 80, "order": 1, "step_type": "learning_card", "step_type_display": "Learning Card", "title": "Introduction à Adverbes exprimant le lieu", "description": "Adverbes de lieu\n\nApprenez les adverbes en russe.", "is_required": true, "config": { "content": "Adverbes de lieu\n\nApprenez les adverbes en russe.", "concept_type": "vocabulary" }, "is_active": true, "is_completed": false, "progress": { "is_completed": false, "completed_at": null, "score": null, "attempts": 0, "best_score": null }, "created_at": "2026-01-17T18:41:53.890584Z", "updated_at": "2026-01-17T18:41:53.890597Z" } ], "exercises": [], "total_words": 4, "is_unlocked": false, "is_completed": false, "progress": { "words_mastered": 0, "total_words": 4, "completion_percentage": 0.0, "steps": [] }, "is_active": true, "created_at": "2026-01-17T18:41:53.883085Z", "updated_at": "2026-01-17T18:41:53.883098Z" } ] }