{
  "info": {
    "name": "SMS - Exam System APIs",
    "description": "All APIs for Exam Types, Exams, Marks Entry, Results, and Cumulative Results",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "variable": [
    { "key": "base_url", "value": "http://localhost:8000/api/v1" },
    { "key": "token", "value": "" }
  ],
  "auth": {
    "type": "bearer",
    "bearer": [{ "key": "token", "value": "{{token}}", "type": "string" }]
  },
  "item": [
    {
      "name": "Exam Types",
      "item": [
        {
          "name": "List Exam Types",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/exam-types?page=1&per_page=15&search=&branch_id=",
              "host": ["{{base_url}}"],
              "path": ["exam-types"],
              "query": [
                { "key": "page", "value": "1" },
                { "key": "per_page", "value": "15" },
                { "key": "search", "value": "" },
                { "key": "branch_id", "value": "" }
              ]
            }
          }
        },
        {
          "name": "Create Exam Type",
          "request": {
            "method": "POST",
            "url": "{{base_url}}/exam-types",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Mid-Term\",\n  \"description\": \"Mid-term examination\",\n  \"branch_id\": 1,\n  \"sort_order\": 1,\n  \"is_active\": true\n}"
            }
          }
        },
        {
          "name": "Show Exam Type",
          "request": {
            "method": "GET",
            "url": "{{base_url}}/exam-types/1"
          }
        },
        {
          "name": "Update Exam Type",
          "request": {
            "method": "PUT",
            "url": "{{base_url}}/exam-types/1",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Mid-Term Updated\",\n  \"description\": \"Updated mid-term examination\",\n  \"sort_order\": 2,\n  \"is_active\": true\n}"
            }
          }
        },
        {
          "name": "Delete Exam Type",
          "request": {
            "method": "DELETE",
            "url": "{{base_url}}/exam-types/1"
          }
        }
      ]
    },
    {
      "name": "Exams",
      "item": [
        {
          "name": "List Exams",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/exams?page=1&per_page=10&search=&branch_id=&exam_type_id=&is_active=",
              "host": ["{{base_url}}"],
              "path": ["exams"],
              "query": [
                { "key": "page", "value": "1" },
                { "key": "per_page", "value": "10" },
                { "key": "search", "value": "" },
                { "key": "branch_id", "value": "" },
                { "key": "exam_type_id", "value": "" },
                { "key": "is_active", "value": "" }
              ]
            }
          }
        },
        {
          "name": "Create Exam",
          "request": {
            "method": "POST",
            "url": "{{base_url}}/exams",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"title\": \"First Term Exam 2026\",\n  \"description\": \"First term examination for all classes\",\n  \"exam_type_id\": 1,\n  \"branch_id\": 1,\n  \"exam_date\": \"2026-04-15\",\n  \"start_date\": \"2026-04-15\",\n  \"end_date\": \"2026-04-25\",\n  \"total_marks\": 500,\n  \"passing_marks\": 200,\n  \"is_active\": true,\n  \"subjects\": [\n    {\n      \"class_id\": 1,\n      \"subject_id\": 1,\n      \"total_marks\": 100,\n      \"passing_marks\": 33\n    },\n    {\n      \"class_id\": 1,\n      \"subject_id\": 2,\n      \"total_marks\": 100,\n      \"passing_marks\": 33\n    },\n    {\n      \"class_id\": 1,\n      \"subject_id\": 3,\n      \"total_marks\": 100,\n      \"passing_marks\": 33\n    }\n  ]\n}"
            }
          }
        },
        {
          "name": "Show Exam",
          "request": {
            "method": "GET",
            "url": "{{base_url}}/exams/1"
          }
        },
        {
          "name": "Update Exam",
          "request": {
            "method": "PUT",
            "url": "{{base_url}}/exams/1",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"title\": \"First Term Exam 2026 Updated\",\n  \"description\": \"Updated first term examination\",\n  \"exam_type_id\": 1,\n  \"exam_date\": \"2026-04-16\",\n  \"start_date\": \"2026-04-16\",\n  \"end_date\": \"2026-04-26\",\n  \"total_marks\": 500,\n  \"passing_marks\": 200,\n  \"is_active\": true,\n  \"subjects\": [\n    {\n      \"class_id\": 1,\n      \"subject_id\": 1,\n      \"total_marks\": 100,\n      \"passing_marks\": 40\n    },\n    {\n      \"class_id\": 1,\n      \"subject_id\": 2,\n      \"total_marks\": 100,\n      \"passing_marks\": 40\n    }\n  ]\n}"
            }
          }
        },
        {
          "name": "Delete Exam",
          "request": {
            "method": "DELETE",
            "url": "{{base_url}}/exams/1"
          }
        }
      ]
    },
    {
      "name": "Marks Entry",
      "item": [
        {
          "name": "Save Marks",
          "request": {
            "method": "POST",
            "url": "{{base_url}}/exams/save-marks",
            "header": [{ "key": "Content-Type", "value": "application/json" }],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"exam_id\": 1,\n  \"class_id\": 1,\n  \"subject_id\": 1,\n  \"branch_id\": 1,\n  \"records\": [\n    {\n      \"student_id\": 10,\n      \"marks_obtained\": 85,\n      \"is_absent\": false,\n      \"remarks\": \"Good performance\"\n    },\n    {\n      \"student_id\": 11,\n      \"marks_obtained\": null,\n      \"is_absent\": true,\n      \"remarks\": \"Medical leave\"\n    },\n    {\n      \"student_id\": 12,\n      \"marks_obtained\": 72,\n      \"is_absent\": false,\n      \"remarks\": \"\"\n    }\n  ]\n}"
            }
          }
        }
      ]
    },
    {
      "name": "Results",
      "item": [
        {
          "name": "Get Exam Results",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/exams/results/view?exam_id=1&class_id=1&section_id=&branch_id=",
              "host": ["{{base_url}}"],
              "path": ["exams", "results", "view"],
              "query": [
                { "key": "exam_id", "value": "1" },
                { "key": "class_id", "value": "1" },
                { "key": "section_id", "value": "" },
                { "key": "branch_id", "value": "" }
              ]
            }
          }
        },
        {
          "name": "Get Cumulative Results",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/exams/results/cumulative?class_id=1&section_id=&branch_id=&exam_type_id=",
              "host": ["{{base_url}}"],
              "path": ["exams", "results", "cumulative"],
              "query": [
                { "key": "class_id", "value": "1" },
                { "key": "section_id", "value": "" },
                { "key": "branch_id", "value": "" },
                { "key": "exam_type_id", "value": "" }
              ]
            }
          }
        }
      ]
    }
  ]
}
