🎯 ユーザークイズAPI
すべてのルートは /api
プレフィックスが付き、Bearerトークン認証が必要です。
http
Authorization: Bearer {{token}}
クイズ一覧取得
🔐 GET /user/quiz-assignments
説明: 説明: 認証済みユーザーのクイズ割り当て一覧を取得します。
✅ 成功レスポンス例
json
{
"data": [
{
"id": 1,
"score": 0,
"completed_at": null,
"quiz": {
"id": 1,
"title": "Basic PHP Quiz",
"description": "Test your fundamental PHP knowledge.",
"questions_count": 10,
"category": {
"id": 1,
"name": "Programming"
}
}
}
]
}
質問一覧取得
❓ GET /api/user/quiz-assignments/{id}/questions
説明: 特定のクイズ割り当てに紐づく質問一覧を取得します。
URLパラメータ
パラメータ | タイプ | 必須 | 説明 |
---|---|---|---|
id | int | ✅ | クイズ割り当てID |
✅ 成功レスポンス例
json
{
"data": [
{
"id": 1,
"score": 0,
"completed_at": null,
"quiz": {
"id": 1,
"title": "Basic PHP Quiz",
"description": "Test your fundamental PHP knowledge.",
"questions": [
{
"id": 1,
"question_text": "What does PHP stand for?",
"choices": [
{ "id": 1, "choice_text": "Personal Home Page" },
{ "id": 2, "choice_text": "Private Hypertext Processor" },
{ "id": 3, "choice_text": "Professional Home Program" },
{ "id": 4, "choice_text": "Programmer Hosted Platform" }
]
},
...
]
}
}
]
}
解答の提出
🔐 POST /api/user/quiz-assignments/{id}/answers
説明: クイズに対する解答を送信します。
URLパラメータ
Param | Type | Required | Description |
---|---|---|---|
id | int | ✅ | Quiz Assignment ID |
リクエストボディ例
json
{
"answers": [
{ "question_id": 1, "choice_id": 5 },
{ "question_id": 2, "choice_id": 6 }
]
}
✅ 成功レスポンス例
json
{
"score": 10
}
クイズ結果の取得
📄 GET /api/user/quiz-assignments/{id}/results
説明: クイズの結果を取得します。
URLパラメータ
Param | Type | Required | Description |
---|---|---|---|
id | int | ✅ | Quiz Assignment ID |
✅ 成功レスポンス例
json
{
"data": {
"id": 1,
"score": 0,
"completed_at": null,
"quiz": {
"id": 1,
"title": "Basic PHP Quiz",
"description": "Test your fundamental PHP knowledge.",
"questions": [
{
"id": 1,
"question_text": "What does PHP stand for?",
"explanation": null,
"choices": [
{ "id": 1, "choice_text": "Personal Home Page", "is_correct": true },
{ "id": 2, "choice_text": "Private Hypertext Processor", "is_correct": false },
...
]
},
{
"id": 2,
"question_text": "Which of the following is a valid PHP variable?",
"explanation": null,
"choices": [
{ "id": 5, "choice_text": "var name", "is_correct": false },
{ "id": 6, "choice_text": "$name", "is_correct": true },
...
]
},
...
]
}
}
}